/proc/sys/kernel/* に関する文書 カーネルバージョン 2.2.10 (c) 1998, 1999, Rik van Riel 一般的な情報と法的宣言については、README を見てください。 ================================================================== このファイルには /proc/sys/kernel 内の sysctl ファイルに関する 文書が含まれており、Linux カーネルバージョン 2.2 に対して有効 です。 このディレクトリ内のファイルは、Linux カーネルのオペレーションに おける種々雑多な全体的事項をチューニングしたりモニタリングしたり するために使用することができます。システムをメチャメチャにしてし まいうるファイルもあるので、実際に調整をおこなう前に、文書および ソースコードの両方を読むことをお勧めします。 現在のところ、(設定によりますが) 次のファイル群が /proc/sys/kernel 以下にあらわれます。 - acct - core_pattern - core_uses_pid - ctrl-alt-del - dentry-state - domainname - hostname - htab-reclaim [ PPC のみ ] - hotplug - java-appletviewer [ binfmt_java, obsolete ] - java-interpreter [ binfmt_java, obsolete ] - l2cr [ PPC のみ ] - modprobe ==> Documentation/kmod.txt - msgmax - msgmnb - msgmni - osrelease - ostype - overflowgid - overflowuid - panic - pid_max - powersave-nap [ PPC のみ ] - printk - real-root-dev ==> Documentation/initrd.txt - reboot-cmd [ SPARC のみ ] - rtsig-max - rtsig-nr - sem - sg-big-buff [ 汎用 SCSI デバイス (sg) ] - shmall - shmmax [ sysv ipc ] - shmmni - stop-a [ SPARC のみ ] - sysrq ==> Documentation/sysrq.txt - tainted - threads-max - version - zero-paged [ PPC のみ ] ================================================================== acct: highwater lowwater frequency BSD スタイルのプロセスアカウンティングが有効になっている場合、 その動作はこれらの値で制御されます。ログが出力されるファイルシス テムの空き領域が % 未満になった場合、アカウンティングは 中断します。空き領域が % を超えると、アカウンティング は再開します。 は、空き領域の量をチェックする頻度を秒 単位で指定するものです。デフォルト値は次のとおりです。 4 2 30 つまり、残りの空き領域が 2% 以下のときアカウンティングは中断し、 4% 以上になると再開します。30 秒間有効である空き領域量の情報を、 考慮に入れます。 ================================================================== core_pattern: core_pattern はコアダンプファイルのパターン名を指定するのに使用 します。 * 最長 64 文字。デフォルト値は "core" * core_pattern は出力ファイル名のパターンテンプレートとして使用 されます。特定の文字列パターン ('%' ではじまるもの) は、それ ぞれの実際の値で置き換えられます。 * core_uses_pid との後方互換性があります。 core_pattern に "%p" が含まれておらず (デフォルトでは含まれ ません)、かつ core_uses_pid がセットされている場合、.PID が ファイル名の末尾に付加されます。 * コア名フォーマット指示子 % '%' は削除されます %% '%' を一つ出力します %p プロセス ID %u ユーザ ID %g グループ ID %s シグナル番号 %t ダンプの UNIX 時刻 %h ホスト名 %e 実行形式ファイル名 % 両方とも削除されます ================================================================== core_uses_pid: デフォルトのコアダンプファイル名は "core" です。core_uses_pid を 1 にセットすることにより、コアダンプファイル名は core.PID になり ます。core_pattern に "%p" が含まれておらず (デフォルトでは含まれ ません)、かつ core_uses_pid がセットされている場合、.PID がファ イル名の末尾に付加されます。 ================================================================== ctrl-alt-del: このファイル内の値が 0 のとき、ctrl-alt-del は捕捉され、丁寧な再 起動をおこなうよう init(1) に渡されます。しかし値が 0 より大きい ときは、Vulcan Nerve Pinch (tm) (訳注:ソフトウェアブートもしくは ROM モニタへのジャンプをおこなうキー組合せのこと。参照: http://www.catb.org/~esr/jargon/html/V/Vulcan-nerve-pinch.html) に対する Linux の反応は、ダーティバッファの同期さえおこなわない 即時リブートです。 注意:(dosemu のように) プログラムが 'raw' モードでキーボードを 使用している場合は、ctrl-alt-del は、カーネルの TTY レイヤに届く 前にそのプログラムによって捕捉されます。ctrl-alt-del で何をするか を決めるのは、そのプログラムです。 ================================================================== domainname & hostname: これらのファイルは、domainname コマンドや hostname コマンドと全く 同じように、マシンの NIS/YP ドメイン名とホスト名を設定するために 使用することができます。つまり、 # echo "darkstar" > /proc/sys/kernel/hostname # echo "mydomain" > /proc/sys/kernel/domainname は次のものと同じ効果があります。 # hostname "darkstar" > /proc/sys/kernel/hostname # domainname "mydomain" > /proc/sys/kernel/domainname 例えば darkstar.frop.org は "darkstar" というホスト名と "frop.org" という DNS (Internet Domain Name Server) ドメイン名で構成されて いますが、これを NIS (Network Information Service) / YP (Yellow Pages) ドメイン名と混同してはいけませんので、注意してください。 この二つのドメイン名は一般に異なります。詳細な議論については hostname(1) の man ページを参照してください。 ================================================================== htab-reclaim: (PPC のみ) これをゼロ以外の値にセットすると、システムがアイドルループになる たびに PowerPC htab (Documentation/powerpc/ppc_htab.txt を参照) が切り詰められます。 ================================================================== hotplug: ホットプラグポリシーエージェントのパスです。デフォルト値は "/sbin/hotplug" です。 ================================================================== l2cr: (PPC のみ) このフラグは、G3 プロセッサボードの L2 キャッシュを制御します。 0 の場合、キャッシュは無効です。ゼロ以外ならば有効です。 ================================================================== osrelease, ostype & version: # cat osrelease 2.1.88 # cat ostype Linux # cat version #5 Wed Feb 25 21:49:24 MET 1998 osrelease と ostype ファイルが何なのかは十分明確でしょう。しかし、 version は少し説明が必要です。'#5' は、このソースベースからの 5 番目のカーネルビルドであることを意味し、後に続く日時は、カーネル がビルドされた時刻を示しています。これらの値をチューニングする 唯一の方法は、カーネルを再ビルドすることだけです :-) ================================================================== overflowgid & overflowuid: アーキテクチャが 32 ビット UID を常にサポートしていたわけではない ならば (つまりアーキテクチャが arm, i386, m68k, sh, sparc32 なら), 実際の UID または GID が 65535 を超える場合、古い 16 ビット UID/ GID システムコールを使用しているアプリケーションには固定 UID/GID が返されます。 これらの sysctl ファイルで、その固定 UID/GID の値を変更できます。 デフォルト値は 65534 です。 ================================================================== panic: このファイル内の値は、パニック発生時、リブートする前にカーネルが 待機する秒数を示しています。ソフトウェアウォッチドッグを使用して いる場合、推奨される設定は 60 です。 ================================================================== panic_on_oops: oops または BUG に至ったときのカーネルの動作を制御します。 0: オペレーションの継続を試みます。 1: 数秒待機し (klogd に oops 出力を記録する時間を与えるため), その後パニックとします。もしも `panic' sysctl ファイルもゼロ 以外ならば、その後マシンはリブートされます。 ================================================================== pid_max: PID 割当ての巡回値。カーネルの次の PID 値がこの値に到達したとき、 PID 最小値に戻されます。pid_max 以上の値の PID は割り当てられま せん。 ================================================================== powersave-nap: (PPC のみ) セットされている場合、Linux-PPC は省電力の 'nap' モードを使用し ます。そうでない場合は、'doze' モードが使用されます。 ================================================================== printk: printk 内の 4 つの値はそれぞれ、console_loglevel, default_message_loglevel, minimum_console_loglevel, default_console_loglevel を意味します。 これらの値は、エラーメッセージの表示またはログ出力の際の printk() の動作に影響を与えます。異なるログレベルに関する詳細な情報につい ては、'man 2 syslog' を参照してください。 - console_loglevel: これよりも高い優先度のメッセージは、コン ソールに表示されます。 - default_message_level: 明示的な優先度を与えられていないメッ セージは、この優先度で出力されます。 - minimum_console_loglevel: console_loglevel にセットできる 最小の (最も高い) 値。 - default_console_loglevel: console_loglevel のデフォルト値。 ================================================================== printk_ratelimit: 速度が制限されている警告メッセージがあります。printk_ratelimit は、 このようなメッセージ間の最小時間間隔を jiffies 単位で指定するもの です。デフォルトでは、5 秒ごとに一つのメッセージ出力が可能です。 値を 0 にすると、速度制限は無効になります。 ================================================================== printk_ratelimit_burst: 一つのメッセージごとに printk_ratelimit 秒という長い時間が強制 される一方で、メッセージ群を集中的に出力させることも可能です。 printk_ratelimit_burst は、速度制限が作動する前に送出することが 可能なメッセージの数を指定するものです。 ================================================================== reboot-cmd: (Sparc のみ) ??? これは、Sparc ROM/Flash ブートローダに引数を与えるための手段 のようです。おそらく、リブート後に何をすべきかを指示するための ものでしょう。??? ================================================================== rtsig-max & rtsig-nr: rtsig-max ファイルは、システム内で使用可能な、POSIX リアルタイム (キューイングされる) シグナルの最大値をチューニングするために使用 することができます。 rtsig-nr は、現在キューイングされているリアルタイムシグナルの数 を示しています。 ================================================================== sg-big-buff: このファイルは、汎用 SCSI (sg) バッファのサイズを示しています。 これをチューニングすることはまだできませんが、include/scsi/sg.h を編集して SG_BIG_BUFF の値を変更することにより、コンパイル時に 値を変更することができます。 この値を変更する理由は無いはずです。もしも理由を思い付くことが できるならば、いずれにしても、あなたはおそらく自分が何をしている のか分かっているはずです :) ================================================================== shmmax: この値は、生成可能な共有メモリセグメントの最大サイズの実行時制限 を、問い合わせたり設定したりするのに使用できます。現在のところ、 1Gb までの共有メモリセグメントがカーネルでサポートされています。 デフォルト値は SHMMAX です。 ================================================================== tainted: カーネルが汚染されている場合、非ゼロになります。数値であり、下記 のものと論理和をとることができます。 1 - 非 GPL のモジュールがロードされました。これにはライセンスの 無いものも含まれます。 2 - 'insmod -f' により、強制的にモジュールがロードされました。 2.4.9 以上の modutils と module-init-tools によりセットされ ます。 4 - 安全でない SMP プロセッサ群です。SMP 用に設計されていない CPU を用いた SMP です。 ================================================================== zero-paged: (PPC のみ) 有効の場合 (非ゼロの場合), Linux-PPC は、アイドルループ内でゼロ クリアされたページを用意します。たぶん、get_free_pages が速く なります。これは、アイドルループが実行することにしか影響しない ので、これを有効にして何か変化があるか確認してみるべきです。 ------------------------------------------------------------ 翻訳団体: JF プロジェクト < http://www.linux.or.jp/JF/ > 最終更新: 2004/07/29 翻訳者: 川崎 貴彦 校正者: Seiji Kaneko