debian preseed.cfgを使用して複数のIPアドレスを設定する方法

debian preseed.cfgを使用して複数のIPアドレスを設定する方法

preseed コマンドを使用して、/etc/network/interface ファイルに新しい IP 設定行を追加している間に、どのようにネットワークインターフェイス名を取得して使用しますか?

d-i preseed/late_command string \
  in-target sed -i "s/^#Port 22\$/Port 39000/g" /etc/ssh/sshd_config; \
  in-target sed -i "s/^#PermitRootLogin.*\$/PermitRootLogin yes/g" /etc/ssh/sshd_config; \
  in-target systemctl restart sshd.service; \
  in-target var=$(ip -o link show | awk -F': ' '{print $2}' | tail -n 1); \
  in-target sed -i "/dns-search unassigned-domain/c\iface $var:1 inet static\naddress 192.168.1.40\nnetmask 255.255.255.0\ngateway 192.168.1.1\ndns-nameservers 8.8.8.8 8.8.4.4\ndns-search unassigned-domain" /etc/network/interfaces; \
  in-target systemctl restart networking; \
  in-target ifup $var && ifup $var:1; \
true

preseed.cfgの私の設定によれば、/etc/ssh/sshd_configを変更でき、/etc/network/interfacesにも新しい行が追加されますが、コマンドは

in-target var=$(ip -o link show | awk -F': ' '{print $2}' | tail -n 1); \

動作しません。出力はiface [インターフェース名] inet staticでなければなりませんが、インターフェース名なしでiface inet staticのみがあります。

助けてください。

ベストアンサー1

おすすめ記事