RHEL7ではカーネルパラメータは永続的に変更されません

RHEL7ではカーネルパラメータは永続的に変更されません

いくつかの VM カーネル パラメータを永続的に変更しようとして、/etc/sysctl.d/01-custom.confRed Hat ナレッジベースの記事で説明されているように構成ファイルを作成しました。その内容は次のとおりです。

# cat /etc/sysctl.d/01-custom.conf
vm.swappiness=10
vm.dirty_ratio=20
vm.vfs_cache_pressure=200

ただし、再起動後にのみvm.vfs_cache_pressure変更され、swappines以前dirty_ratioの値に戻ります。

# sysctl vm.swappiness
vm.swappiness = 30
# sysctl vm.dirty_ratio
vm.dirty_ratio = 30

ファイルではパラメータ/etc/sysctl.confの変更はなく、 10 に設定されています。これは、システムがこれらの値をどこか別の場所から取得することを意味しますか?私のファイルとリンク以外に、設定ファイルはありません。vm.dirty_ratiovm.swappines/etc/sysctl.d/etc/sysctl.conf

# ll /etc/sysctl.d/
total 4
-rw-r--r--  1 root root 147 May 30 04:40 01-custom.conf
lrwxrwxrwx. 1 root root  14 Apr  3 15:00 99-sysctl.conf -> ../sysctl.conf

アップデート: sysctl --system私の設定から値が取得されたことを示しています。 および には何も設定vm.swappinesされていませんvm.dirty_ratio。 は 30 に設定されています。

答え1

Tuned を実行している場合は、sysctl よりも優先されます。Sysctl.conf パラメータは Tuned によって上書きされます

Tuned が実行されているかどうかを確認します。

systemctl status tuned

実行中の場合は、どのプロファイルがアクティブになっているかを確認します。

tuned-adm active

Tuned のプロファイルは /usr/lib/tuned/ にあります:

# grep -ri '^vm.swappiness' /usr/lib/tuned/
/usr/lib/tuned/latency-performance/tuned.conf:vm.swappiness=10
/usr/lib/tuned/throughput-performance/tuned.conf:vm.swappiness=10
/usr/lib/tuned/virtual-guest/tuned.conf:vm.swappiness = 30

答え2

CentOS 7 サーバーのデフォルトの /etc/sysctl.conf ファイルには、次のようにコメントされています。

# sysctl設定は、以下のファイルを通じて定義されます。

# /usr/lib/sysctl.d/、/run/sysctl.d/、および /etc/sysctl.d/。

#

# ベンダー設定は /usr/lib/sysctl.d/ にあります。

# ファイル全体を上書きするには、同じ内容の新しいファイルを作成します

# /etc/sysctl.d/ に新しい設定を置きます。上書きするには

# 特定の設定のみ、後で語彙的にファイルを追加

# /etc/sysctl.d/ に名前を追加し、そこに新しい設定を配置します。

特定の設定については、これらのディレクトリを検索できます。

関連情報