web-dev-qa-db-ja.com

sysctl -p /etc/sysctl.confがエラーを返す

sysctl -p /etc/sysctl.confを実行した後、VPSにCenotOS 6を新しくインストールすると、次のエラーが発生しました。

error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key

このエラーを解決するための出発点は何ですか?

6

質問で、VPSを使用していると述べました。どのようなVPSですか? OpenVZ VPSを使用しているようです。それがOpenVZの場合、それはあなたのような多くのコンテナー間でカーネルを共有しており、コンテナーごとではなくホスト上で直接カーネル構成を変更することはできません。私は実際にlitlle OpenVZ centosコンテナーを構築し、カーネル構成を適用しようとしましたnet.bridge.bridge-nf-call-ip6tables = 0 に続く sysctl -pと同じエラーが表示されました。本当に必要な場合は、使用している仮想化のタイプを変更することを検討する必要があるか、VPSプロバイダーに連絡してこの設定を有効にするよう依頼する可能性があることを意味します。

ベスト。

3
drivard

試してください:

modprobe bridge
lsmod | grep bridge

カーネルに読み込まれたモジュールは必要ありません。

6
Tiffany Walker

Red Hat Bugzillaには、これに関するいくつかのバグレポートがあります。たとえば、 herehere および here などです。

行を削除するか、sysctl -e -p の代わりに sysctl -p

6
wzzrd

bridgeカーネルモジュールがロードされていないため、エラーが発生します。 3つの選択肢:

  1. 必要に応じてモジュールをロードします
  2. /etc/sysctl.confからこれらの行をコメント化します
  3. sysctl-eフラグを付けてエラーを無視します。
3
grassroot

これは redhat errata:RHBA-2015:1289 (おそらくペイウォール)で修正されています。

要約すると、修正は設定をsysctl.confからmodprobe.d/dist.confに移動することです:

/etc/sysctl.confから問題の行を削除します

sed -i '/net.bridge.bridge-nf-call-/d' /etc/sysctl.conf

/etc/modprobe.d/dist.confに動作を追加します

cat <<EOF>>/etc/modprobe.d/dist.conf

# Disable netfilter on bridges when the bridge module is loaded
install bridge /sbin/modprobe --ignore-install bridge && /sbin/sysctl -q -w net.bridge.bridge-nf-call-arptables=0 net.bridge.bridge-nf-call-iptables=0 net.bridge.bridge-nf-call-ip6tables=0
EOF

ブリッジモジュールのロード時に値を正しく設定するか、単にrpmをバージョンに更新します

module-init-tools-3.9-25.el6  
initscripts-9.03.53-1.el6

両方ともRHEL 6.8にデフォルトで存在します

誰かがこれの背後にある歴史に興味があるなら、それは存在します ここ 説明付き そこ

0
Dani_l