夜中に走り出す謎のタスク

夜中の4時ごろに眠れずにいたら、急に電源をいれっ放しにしているLinux*1マシンのHDDが音をたてて動きだした。
気になったので調べてみると、cronでprelinkというプログラムが動いていた。*2

prelink について検索してみると、以下のページがみつかった。

つまり、prelinkとはなにかというと、

prelinkはlink情報を取り出し、それを実行ファイルに格納します。つまりprelinkを行ないます。

http://www.gentoo.org/doc/ja/prelink-howto.xml

とかいてあるように、パフォーマンス改善のために実行ファイルを書き変えてその実行ファイルが依存している動的ライブラリを静的にリンクするプログラムということだそうだ。ちょっとびっくりした。*3

くだんの起動スクリプトは動的ライブラリを使用している実行ファイルを自動的に見つけ出してprelinkしているようだった。上記のページによると、かなり起動時間が短縮できるそうだ。

あと、 /var/log/prelink.logにログが残っていた。これをみると、prelink されたのはほとんどが、X関係のファイルだった。このマシンをうごかし初めてからかなりになるが、Xをいれたのは最近なので、それで今日はじめてprelink に遭遇したのかな、と思った。

*1:CentOS4.5

*2:cronからrootユーザにメールがきていたのでわかった。ふつうのcrontab ではなくて、/etc/cron.daily/ に置かれた prelinkというスクリプトから起動されていた。

*3:自動的に実行ファイルを書き変えちゃうのってなんかあぶない感じがしたので。動かなくなったりしないのかな?