2014年12月24日

第11回「 strace ノススメ」が掲載されました。

今回は誰かの行動を一つ残らず追いかけるという話です。
知世ちゃんのことを思い出したので、「歓びのキャロル」を聞きながらこちらの補足記事を書いています。

strace は普通に使われていると思うので、特別な内容は無いです。ログを頼りに問題事象の解析を行う調査担当者の立場としては、「事象の再現手順を確立する」「事象の発生時刻が判るようにする」という基本事項の繰り返しです。

今年もいろいろなバグや脆弱性に振り回され続けてきました。熊猫はというと、昨年偶然発見した「 Linux 2.0 (18年前!)から存在している(と考えられる)脆弱性」により引き起こされる様々な問題事象に関して、脆弱性の修正方法を議論して修正内容がバックポートされるまでの間ずっと無防備になることを避けるために、いくつかの問題事象を先に修正してもらえるよう試行錯誤していました。
そして、問題事象の1つである、 OOM killer の発生時に deadlock してしまう事象に関して、脆弱性を使わずに事象を再現させるプログラムを作成して投稿したところ、関係者からのコメントを頂くことができ、衝撃の事実が明らかになりました。
「システムの所有者は Linux から BSD への乗り換えを真剣に検討し始めるだろう」という冗談が飛び出すような、とんでもない相違が存在していたのです。
これじゃあ、システムがロックアップしてしまうのも不思議ではないですねぇ。どうやって修正するのか、これから延々と議論が続くことになりそうです。

ヤマノススメ セカンドシーズン、素敵なアニメでした。サードシーズンはいつ出るのかなぁ?

posted by 熊猫さくら at 22:29| Comment(0) | TrackBack(0) | Linux

2014年12月09日

第10回「ソースコード閲覧ノススメ」が掲載されました。

今回はディストリビューションに同梱されているプログラムのソースコードの確認手順の話です。各自の環境で試せるように、 CentOS ユーザ向けの手順にしてあります。

何か問題が発生した時に、ちょっとソースコードを確認すれば、どこで問題が起きているのか/起こりそうかが判明することが少なからずあります。また、ソースコードを確認できるようになっていれば、 SystemTap などの解析ツールを使用することで原因を突き止めやすくなります。

商用のウイルス対策ソフトや死活監視プログラムのように、ディストリビューションに同梱されていないプログラムを使用している環境では、普段遭遇しないようなエラーコードが返却されたり、フリーズしたり再起動したりするトラブル事例が多いと感じています。しかし、残念ながらソースコードを確認できないため、原因不明のまま諦めざるを得ません。各種ウイルス対策ソフトが使っている(リアルタイム検索のための)カーネルモジュール部分のソースコードを閲覧できるようになっていれば、だいぶ状況は良くなりそうなのになぁ・・・。

posted by 熊猫さくら at 21:27| Comment(0) | TrackBack(0) | Linux