|
次のページ
前のページ
目次へ
4. 一般的なシステム設定の変更例ラップトップでLinux を使うようになってから、ハードディスクへのアクセスが 数秒ごとに発生していることに気が付きました。これはシステムにだれもログイ ンしていないときも同じでした。ハードディスクは決して省資源モードに入るこ とがなかったのです。ハードディスクの駆動を抑制すれば、電池の稼働時間はグ ンと長くなります。この章にこのためのやり方を集めたのは、その効果が大きい からなのです。 試験に利用したのは RedHat 4.1です。配布によっては設定ファイルの置場所が 異なっているかもしれません(その節には、当方まで御知らせ下さい)。
4.1 crond デーモンと atrun一分ごとに起動するプロセスがあるかどうか (訳注: slackware の場合、 at 命令を使えば、これから先そのうち起動される命令をスプールできます。 Linux システムの中には、この仕事を atd というデーモンにまかせているもの もあります。これに対し RedHat などの場合には、crond というデーモンが一分 毎に atrun を起動します。 たいていのシステムの場合、これは本当に必要なものではありません。at 命令
が正確な時間に起動されることが死活的であるというのは稀だからです。
これを以下のように書き換えても何の問題もありません。
詳しくは crontab.5 のマニュアルを御読み下さい。フォークによっては crond デーモンなしでも機能します。この場合には crond デーモンを完全に外してし まってもかまいません。
4.2 update / bdflush デーモンLinux が特定のタイミングで処理するオープンファイルバッファはかなりの数に 達します。すなわち、システムはファイルに加えられた変更をハードディスクに 記録されたことを極力速やかに確認しなければならないのです。さもなければ、 システムがクラッシュした際には、変更内容が失われてしまうのです。 この仕事を受け持っているのが update / bdflush デーモンです。(同一のプロ グラムが二つの名前を名乗っています。したがって起動する際にはこのうちのど ちらかの名前を呼んでもかまいません)初期設定では、flush を五秒ごとに、 sync を三十秒ごとに呼び出しするようになっています。 御使用中のハードディスク上のファームウェア次第ですが、著者の機械の場合こ の初期設定ではハードディスクにアクセスしっ放しになります。(ハードディス クによっては、全く変更がなくてもキャッシュラムをフラッシュするようです) Linux がしょっちゅう「落ちる」というようなことはもうなくなっているので、 著者は上記の両設定値を 3600秒に変更しています。これが問題を引き起こした 例はなく、ハードディスクへのアクセスも定期的に停止するようになりました。 (もちろん今システムが落ちたら、ファイルがかなりたくさんやられてしまうで しょうが) RedHat 4.1 の場合
Suse 4.4.1 (訳注:ドイツでかなり幅をきかせているの配布の一つ)の場合 update を呼び出ししているのは
Slackware の場合、 update を呼び出ししているのは /etc/rc.d/rd.S です。 詳しくは update のマニュアルを参照してください。
4.3 syslogd デーモンsyslogd デーモンは、 この機能を停止させるには、
ここでも、クラッシュ時の問題点の報告がディスクに保存されないという二律背 反に直面することになります。
4.4 init コマンドブートアップ中に初期プロセスやデーモンを起動するために使用するのが init コマンドです。このコマンドも、各プロセスごとに sync を呼び出しします。 この点を変更するためには、ソースコードから sync() 呼び出しを取り除き、init コマンドを再コンパイルする必要があります。 ファイルバッファが失われるという問題は、
4.5 スワップ パーティションLinux のスワップパーティションは仮想記憶を用いて物理的メモリ空間を広げる ためのものです。スワップパーティションを使うというのは、ディスクアクセス の原因の一つとなります。御使いのラップトップがラムを十分装備している場合、 あるいは軽いアプリケーション(vi のような)を使う場合には、スワップを「切」 にすることを考慮したくなるでしょう。 スワップを「切」にできるかどうかはもちろん「何をしようとするか」次第です。 4M や 8M のメモリでは不十分です。どうしてもスワップパーティションが必要 です。8 - 16 M もあれば、コンソールを使うアプリケーションなら難なく利用 できます。マルチタスク機能を諦めるなら、スワップを「切」にしても危険はな いでしょう。X-Windows 環境を使うには潤沢なメモリが必要です。16M 以上のメ モリがない限りスワップは必須です。 (註記:著者のラップトップは16Mですが、スワップを用いないで emacs 一つ、 bash シェルを四つ走らせながらカーネルの構築をしてもメモリ不足を来たすこ とはありません。著者にとってはこれで十分です) 既にスワップパーティションを設定してしまっている場合でも、これを使わない
ようにすることはできます。
こうしておけば、交流電源を使用しているときにはスワップを用い、電池を使用 しているときにはスワップを用いないといったことが可能となります。
4.6 apace httpd webserver デーモン著者は Website 用の cgi 書式の作成・試験にラップトップを使用しています。 ローカルの Web サーバーをラップトップ上で立ち上げているのはそのためなの です。書式を試験したり頁を時々検査したりするだけの人にとって標準設定はい ささか過ぎたるものでしょう。
Web サーバーのログを取るのをやめたい際には、httpd デーモンを再コンパイル するしか手がありません。詳しくは当該文書を御読み下さい。
4.7 更なる最適化を目指してLinux システムがまだハードディスクを頻繁に触りに行きすぎるように思える時 には、ps ax コマンドを使って一体何が起こっているのかを調べるという手があ ります。この命令は現在走っている全てのプロセスをフルネームで表示してくれ ます。場合によっては、各プロセスのコマンドライン引数も表示されます。 (訳注:表示が画面の右端で切れてしまうときには、 ps axwww とします) 次に各プロセスのマニュアルを読んで、その正体は何か?、挙動を変更するには どうすればいいのかを調べてください。この手法を使えば、どのプロセスがハー ドディスクへのアクセスを頻繁化させている主犯かを突き止めることができるは ずです。 新発見がありましたら、是非著者までE-mail を御送り下さい。
次のページ 前のページ 目次へ |
[ |