カーネル・パラメータの更新

sysctlコマンドを使用して、/proc/sys仮想ファイル・システムに定義されているカーネル・システム・パラメータを更新します。

  1. sysctl -wコマンドを使用して、カーネル・パラメータの値を設定します。

    たとえば、net.ipv4.ip_forward設定の値を有効に変更するには、次のコマンド形式を使用します:

    sudo sysctl -w net.ipv4.ip_forward=1

    この方法で行った変更が有効であるのは、システムが再起動されるまでです。

  2. システムの再起動後に構成変更を保存するには、構成ファイルとして/etc/sysctl.dディレクトリに追加します。

    このディレクトリのファイルに加えた変更は、システムの再起動時、または次の例のようにsysctl --systemコマンドを実行した場合に有効になります:

    echo 'net.ipv4.ip_forward=1' | sudo tee /etc/sysctl.d/ip_forward.conf
    grep -r ip_forward /etc/sysctl.d
    /etc/sysctl.d/ip_forward.conf:net.ipv4.ip_forward=1
  3. ブート時にロードするように構成された値のみを使用するようにシステムをリセットするには、sysctl --systemコマンドを使用します。
    sudo sysctl --system
    * Applying /usr/lib/sysctl.d/00-system.conf ...
    net.bridge.bridge-nf-call-ip6tables = 0
    net.bridge.bridge-nf-call-iptables = 0
    net.bridge.bridge-nf-call-arptables = 0
    * Applying /usr/lib/sysctl.d/50-default.conf ...
    kernel.sysrq = 16
    kernel.core_uses_pid = 1
    net.ipv4.conf.default.rp_filter = 1
    net.ipv4.conf.all.rp_filter = 1
    net.ipv4.conf.default.accept_source_route = 0
    net.ipv4.conf.all.accept_source_route = 0
    net.ipv4.conf.default.promote_secondaries = 1
    net.ipv4.conf.all.promote_secondaries = 1
    fs.protected_hardlinks = 1
    fs.protected_symlinks = 1
    * Applying /etc/sysctl.d/99-sysctl.conf ...
    * Applying /etc/sysctl.d/ip_forward.conf ...
    net.ipv4.ip_forward = 1
    * Applying /etc/sysctl.conf ...
    

    /etc/sysctl.dに追加した構成エントリはシステムによって読み取られて適用されます。