Centos

Kickstart %pre 部分中的綁定失敗

  • September 18, 2019

我正在嘗試從 CentOS 7 kickstart 的 %pre 部分設置綁定網路。我可以證明以下綁定網路有效:

network --device=mynetwork --bondslaves=eth0,eth1 --bootproto static --ip 192.168.0.1 --activate --onboot yes --noipv6 --netmask=255.255.0.0
network --hostname=testy

但是,當我嘗試將其添加/tmp/network.ks並導入時,它不起作用。我想知道我做錯了什麼。

我將導入添加到與上述行相同的位置,如下所示: %include /tmp/network.ks

然後我將相同的行直接附加到導入:

%pre
   echo "network --device=mynetwork --bondslaves=eth0,eth1 --bootproto static --ip 192.168.0.1 --activate --onboot yes --noipv6 --netmask=255.255.0.0" >/tmp/network.ks
   echo "network --hostname=testy" >>/tmp/network.ks
%end

那些不是功能等價物,因為文件說:

使用 %include /path/to/file 命令將另一個文件的內容包含在 Kickstart 文件中,就好像內容位於 Kickstart 文件中 %include 命令的位置一樣。

事實證明,當我從該%pre部分設置綁定網路時,我需要設置--bondopts. 目前尚不清楚為什麼當它沒有設置在主體而不是%pre部分中時它會起作用,但我發布這個以防有人遇到同樣的問題:

%pre
   echo "network --device=mynetwork --bondslaves=eth0,eth1 --bootproto static --ip 192.168.0.1 --activate --onboot yes --noipv6 --netmask=255.255.0.0 --bondopts=mode=active-backup,primary=eth0,miimon=80,updelay=6000" >/tmp/network.ks
   echo "network --hostname=testy" >>/tmp/network.ks
%end

這將達到預期的結果。

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