Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

E.3.9.3. /proc/sys/kernel/

このディレクトリーには、カーネルの操作に直接影響を与えるさまざまな設定ファイルが含まれています。最も重要なファイルには以下が含まれます。
  • Acc t - ログを含むファイルシステムで利用可能な空き領域の割合に基づいて、プロセスアカウンティングの一時停止を制御します。デフォルトでは、ファイルは以下のようになります。
    4	2	30
    
    最初の値はロギングを再開するのに必要な空き領域の割合を定め、2 番目の値はロギングが一時停止される際に空き領域のしきい値を設定します。3 番目の値で、カーネルがファイルシステムをポーリングして、ロギングを一時停止または再開するかどうかを確認する間隔を秒単位で設定します。
  • Ctrl-alt-del - Ctrl+Alt+Deleteinit を使用してコンピューターを正常に再起動するか(0)、ダーティーバッファーをディスクに同期せずに即時に再起動するかを制御します(1)。
  • domainName: example.com などのシステムドメイン名を設定します。
  • exec-shield: カーネルの Exec Shield 機能を設定します。exec Shield は、特定タイプのバッファーオーバーフロー攻撃に対する保護を提供します。
    この仮想ファイルには、以下の 2 つの値を使用できます。
    • 0 - Exec Shield を無効にします。
    • 1 - Exec Shield を有効にします。これはデフォルト値になります。
    Exec Shield の使用
    Exec Shield が無効になっている間に起動したセキュリティーの影響を受けるアプリケーションを実行している場合は、Exec Shield を有効にするには、これらのアプリケーションを再起動する必要があります。
  • hostname - www.example.com などのシステムのホスト名を設定します。
  • hotplug: 設定の変更がシステムによって検出される際に使用されるユーティリティーを設定します。これは主に USB および Cardbus PCI で使用されます。このロールを満たす新しいプログラムをテストしない限り、/sbin/hotplug のデフォルト値は変更しないでください。
  • modprobe - カーネルモジュールの読み込みに使用するプログラムの場所を設定します。デフォルト値は /sbin/modprobe です。これは、カーネルスレッドが kmod を呼び出す際にモジュールをロードするために kmod が呼び出しを行うことを意味します。
  • msgmax: あるプロセスから別のプロセスに送信されるメッセージの最大サイズを設定し、デフォルトで 8192 バイトに設定されます。プロセス間でキューに置かれたメッセージがスワップ不可能なカーネルメモリーに保存されるため、この値を引き上げる際には注意してください。msgmax を増やすと、システムの RAM 要件が増えます。
  • msgmnb - 単一のメッセージキューに最大バイト数を設定します。デフォルトは 16384 です。
  • msgmni - メッセージキュー識別子の最大数を設定します。デフォルトは 4008 です。
  • osrelease - Linux カーネルリリース番号を一覧表示します。このファイルは、カーネルソースを変更して再コンパイルするとのみ変更できます。
  • OSType: オペレーティングシステムのタイプを表示します。デフォルトでは、このファイルは Linux に設定されています。この値は、カーネルソースを変更して再コンパイルするだけでのみ変更できます。
  • overflowgid および overflowuid: 16 ビットグループとユーザー ID のみをサポートするアーキテクチャー上のシステムコールで使用する固定グループ ID とユーザー ID を定義します。
  • panic: システムでカーネルパニックが発生したときにカーネルの再起動を延期する秒数を定義します。デフォルトでは、値は 0 に設定されています。これは、パニック後の自動再起動を無効にします。
  • printk: このファイルは、エラーメッセージの印刷やロギングに関連するさまざまな設定を制御します。カーネルが報告する各エラーメッセージには、メッセージの重要性を定義するログレベルが関連付けられています。loglevel 値は、以下の順序で分類されます。
    • 0 - カーネルの緊急事態。システムが利用できません。
    • 1 - カーネルアラート。すぐに対処する必要があります。
    • 2 - 重大な問題があると見なされるカーネルの状態。
    • 3 - 一般的なカーネルエラー状態。
    • 4 - 一般的なカーネルの警告状態。
    • 5 - 正常だが重大な状態のカーネル通知。
    • 6 - カーネル情報メッセージ。
    • 7 - カーネルのデバッグレベルメッセージ。
    printk ファイルには、以下の 4 つの値があります。
    6     4     1     7
    
    これらの各値は、エラーメッセージを処理するさまざまなルールを定義します。コンソールログレベル と呼ばれる最初の値は 、コンソール に出力されるメッセージの最も低い優先度を定義します。(優先度が小さいほど、ログレベル番号が高いことに注意してください。) 2 番目の値は、明示的なログレベルが適用されないメッセージのデフォルトのログレベルを設定します。3 つ目の値は、コンソールログレベルの可能な限り低いログレベル設定を設定します。最後の値は、コンソールログレベルのデフォルト値を設定します。
  • random/ ディレクトリー: カーネルの乱数の生成に関連する多くの値を一覧表示します。
  • sem - カーネル内での semaphore 設定を構成します。semaphore は、特定のプロセスの使用を制御するために使用される System V IPC オブジェクトです。
  • shmall: システムの一度に使用可能な共有メモリーの合計量をバイト単位で設定します。デフォルトでは、この値は 2097152 です。
  • shmmax: カーネルで許可される最大共有メモリーセグメントサイズを設定します。デフォルトでは、この値は 33554432 です。ただし、カーネルはこれよりも大きな値をサポートします。
  • SHMMN I: システム全体で共有メモリーセグメントの最大数を設定します。デフォルトでは、この値は 4096 です。
  • Sys Rq: この値がゼロ(0)以外の値に設定されている場合、システム要求キーを有効にします。
    System Request Key は、単純なキーの組み合わせでカーネルへの即時入力を可能にします。たとえば、System Request Key を使用すると、システムをすぐにシャットダウンまたは再起動したり、マウントされたすべてのファイルシステムを同期したり、重要な情報をコンソールにダンプしたりできます。System Request Key を開始するには、Alt+SysRq+システム要求コード を入力します。システム要求コード を、以下のシステム要求コードのいずれかに置き換えます。
    • r - キーボードの raw モードを無効にし、XLATE に設定します(すべてのキーに対して AltCtrlShift などの修飾子を認識しない制限されたキーボードモード)。
    • k - 仮想コンソールでアクティブなプロセスをすべて強制終了します。Secure Access Key (SAK)とも呼ばれます。通常、ログインプロンプトが init から起動され、ユーザー名とパスワードをキャプチャーするように設計された trojan コピーではなく、init から起動されたことを確認するために使用されます。
    • b - ファイルシステムのマウントを解除したり、システムに接続されているディスクを同期したりせずにカーネルを再起動します。
    • c - ファイルシステムのマウントを解除したり、システムに接続されているディスクを同期したりせずに、システムがクラッシュします。
    • O - システムをオフにします。
    • s: システムに接続されているディスクの同期を試行します。
    • u - すべてのファイルシステムのマウントを解除して再マウントしようとすると、すべてのファイルシステムを読み取り専用として再マウントします。
    • p - すべてのフラグを出力し、コンソールに登録します。
    • T - プロセス一覧をコンソールに出力します。
    • m: メモリー統計をコンソールに出力します。
    • 0 から 9 - コンソールのログレベルを設定します。
    • e: SIGTERM を使用して init 以外のすべてのプロセスを強制終了します。
    • i: SIGKILL を使用して init 以外のすべてのプロセスを強制終了します。
    • l: SIGKILL( initを含む)を使用してすべてのプロセスを強制終了します。この System Request Key コードを発行した後には、システムが使用できなくなります。
    • h: ヘルプテキストを表示します。
    この機能は、開発カーネルを使用する場合や、システムのフリーズが発生した場合に最も有益です。
    System Request Key 機能を有効にする場合は注意してください。
    System Request Key 機能は、無人コンソールがシステムへのアクセスを持つ攻撃者を提供するため、セキュリティー上のリスクと見なされます。このため、デフォルトでは無効になっています。
    システム要求キーの詳細は、/usr/share/doc/kernel-doc-kernel_version/Documentation/gitops.txt を参照してください。
  • tainted: 非GPL モジュールが読み込まれているかどうかを示します。
    • 0 - GPL 以外のモジュールはロードされません。
    • 1 - GPL ライセンスのない少なくとも 1 つのモジュール(ライセンスのないモジュールを含む)が読み込まれます。
    • 2 - 1 つ以上のモジュールは、smod -f コマンドで 強制的にロードされました。
  • threads-max: カーネルによって使用される最大スレッド数を設定します。デフォルト値は 2048 です。
  • version: カーネルの最終コンパイル日時を表示します。このファイルの最初のフィールド(例: #3 )は、カーネルがソースベースから構築される回数に関連します。