[Armadillo:04102] /etc/init.d/functions のcheck_status

nakamura email@hidden
2009年 3月 9日 (月) 02:07:03 JST


中村です。

220のsetitimerではお世話になりました。

今回は、メールタイトルのとおり、
/etc/init.d/functionsのcheck_status()についてです。

故意にネットワークエラーなどを発生させてブートのメッセージを
チェックしていたのですけど、何をやってもエラーの表示にならず
(常に"done"が表示あれる)「あれー?」と/etc/init.d/functionsの
中を見て、気づきました。
これは、すでに自分で解決しております。

最新のatmark-dist-20090126を取得してその部分をみてみましたが、
直っていないようで、単純なミスなのに今まで修正されないまま
残っているということは、気づいても誰もレポートしてない、って
ことかな?、なんて思ったりしています。

前置きはこのくらいにして・・・

functionsのcheck_status()は直前の実行結果によって"done"か
"failed"を表示させようとしていると思われますが、"done"しか
表示しないコードになってしまってますね。

公表するほどのパッチでもありませんが、自分はこんな修正をして使ってます。

--- vendors/AtmarkTechno/Armadillo-220.Base/etc/init.d/functions-orig
+++ vendors/AtmarkTechno/Armadillo-220.Base/etc/init.d/functions
@@ -1,7 +1,8 @@
 check_status()
 {
+  local stat=$?
   /bin/echo -en "\\033[65G"
-  if [ $? = 0 ]
+  if [ $stat = 0 ]
   then
     /bin/echo -en "\\033[1;32m"
     /bin/echo -n "done"

以上、どなたかの参考にでもなれば幸いです。

-- 
なかむら





armadillo メーリングリストの案内