Monday, May 08, 2006

Kill Da mds & LAServer.

Mac OS X 10.4 Tigerのことを少し。
様々なサイトやブログでさんざん書かれております
mds及びLAServerっちゅうプロセスの暴走についてです。

大して負荷のかかる作業もしてないのにファンが全開で
ぶん回り始めたり、Spotlightが使えないときは決まってこれです。
どこどこのあれそれを削除して再起動だのといいますが
私の環境では定期的に再発しちゃうんですよね。

仕方がないので消極的な手段ではありますが、
暴走しだしたらこれらのプロセスをkillしちゃえばいいじゃんと。
あんまし良くないのかもしれんけど。
最初はAppleScriptでなんとかなるかなーと思ったんですが、
mdsはrootが握ってるプロセスなんでkillできそうにないんです。
そこで、ぜんぜん分からんShellScriptってのを書いてみました。

#!/bin/bash
killall LAServer | sudo killall mds


たったこれだけ!文字コードはUTF-8で保存しました。
その後に

chmod 755 filename

で実行権限を付けるのを忘れずに。
あと、やってない場合は事前にrootのパスワードを設定しときましょう。
これをDockかどこかすぐに実行できる場所に置いといて
暴走したらこいつを実行、勝手にTerminal.appが起動して
rootのパスワードを要求してきますので打ち込んであげましょう。
うるさいファンも静まってくれることでしょう。
これらのプロセスは自動的に再起動しますので安心です。

よく分かってないのでおかしな所も多々あると思いますが
とりあえずこれでしのげてます。
やる時は自己責任でね(これが書きたかっただけ)、それじゃ!

追記:忘れてた。ShellScriptのファイルには拡張子「.command」を
付けときましょう。そうしないとダブルクリックで実行できないです。

(06.17.2006 追記) さらにこちらのエントリーで補足しております。

No comments: