Linux

sysctl.conf 未在啟動時執行

  • November 13, 2011

什麼時候 sysctl.conf 應該在引導期間被讀取,為什麼它可能沒有執行?我重新啟動時未應用以下設置:

net.bridge.bridge-nf-call-arptables = 0
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-filter-pppoe-tagged = 0
net.bridge.bridge-nf-filter-vlan-tagged = 0

fs.nfs.nlm_udpport = 32768
fs.nfs.nlm_tcpport = 32768

第一部分是 KVM 橋接所需的,第二部分是在已知埠上執行 NFS 鎖管理器。但是,開機後,這些值並沒有生效。如果我跑sysctl -p,他們就會跑。

這不會是一個大問題,除了我無法弄清楚如何在不重新啟動的情況下重新啟動鎖管理器。我真的很想知道為什麼 sysctl.conf 在啟動時不起作用,但我會滿足於能夠重新啟動鎖管理器。

這是在 Ubuntu 伺服器 10.04.2,核心 2.6.32-31-server 上。我知道一些守護程序會檢查其配置文件的權限,如果它們過於寬鬆,則拒絕工作,但 sysctl.conf 是 644 root:root,我很確定這是預設值。

看看Some sysctl’s are ignored on boot。簡而言之,這些設置是在載入一些核心模組之前儘早應用的。

在 ubuntu 上,它將作為執行 /etc/init/procps.conf 文件的 upstart 守護程序的一部分載入。

檢查它是否存在,並且您沒有禁用它。

引用自:https://serverfault.com/questions/270201