sysctl は Linux カーネルの動作パラメータを調整する仕組みです。Ubuntu 26.04 では、ルーティング、Kubernetes、Redis、ネットワーク性能、メモリ管理などで使う場面があります。
この記事では、現在値の確認、設定ファイルの作成、反映、確認までを手動操作として整理します。
現在値を確認する
sysctl net.ipv4.ip_forward
sysctl net.ipv6.conf.all.forwarding
sysctl vm.overcommit_memory設定ファイルを作成する
管理する値は /etc/sysctl.d/ 配下にファイルとして置きます。ファイル名を決めておくと、自分の設定とパッケージ標準設定を分けやすくなります。
sudo tee /etc/sysctl.d/90-my.conf >/dev/null <<'EOF'
net.ipv4.conf.all.forwarding = 1
net.ipv6.conf.all.forwarding = 1
EOFアプリケーション向けの例
Redis や一部のアプリケーションでは、メモリ割り当てのために vm.overcommit_memory を調整することがあります。必要な値はアプリケーションの要件に合わせます。
sudo tee /etc/sysctl.d/91-app.conf >/dev/null <<'EOF'
vm.overcommit_memory = 1
EOF設定を反映する
sudo sysctl --system反映後に確認する
sysctl net.ipv4.conf.all.forwarding
sysctl net.ipv6.conf.all.forwarding
sysctl vm.overcommit_memory注意点
sysctl は OS 全体の挙動に影響します。ネットワーク forwarding、メモリ管理、セキュリティ関連の値は、サーバーの役割ごとに分けて管理する方が安全です。
まとめ
sysctl はサーバーの役割に合わせてカーネル動作を調整するための基本設定です。値を直接変更するだけでなく、/etc/sysctl.d/ に残して再起動後も同じ状態になるようにします。
Ubuntu 26.04 sysctl の基本設定


