我正在编写一些有关为新 CentOS 7 服务器配置网络接口的文档。该特定部分逐步介绍如何将接口设置为静态 IP 地址。
到目前为止的步骤是:
# nmcli con mod eno16777984 ipv4.address 192.168.1.31/24
# nmcli con mod eno16777984 ipv4.gateway 192.168.1.1
# nmcli con mod eno16777984 ipv4.method manual
# nmcli con mod eno16777984 ipv4.dns 8.8.8.8
# nmcli con reload eno16777984
但我注意到,上述步骤并未将接口 IP 设置为上面设置的静态 IP(通过ip addr show
),当我通过 重新启动网络服务时systemctl
,它会破坏网络配置(我的连接中断)。我通过终端重新登录并添加NM_CONTROLLED=yes
到`/etc/sysconfig/network-scripts/ifcfg-eno16777984,然后再次重新启动网络,它工作得很好。
所以基本上,我只是想知道是否可以将该NM_CONTROLLED
值设置为是的,利用nmcli
自身?
我知道我可以echo 'NM_CONTROLLED=yes' > /etc/sysconfig/network-scripts/ifcfg-eno16777984
,但我试图通过nmcli
自己编写脚本。
我在这方面找不到太多信息,所以可能不可能,但我认为至少可以确定
答案1
不,不可能通过 nmcli 更改 NM_CONTROLLED,因为该属性不是 NM 连接的常规属性。这是一个特殊的设置,用于告诉 NM 和 ibiscripts 该设备是否由 NM 管理。
旁注:nmcli con reload eno16777984
是错误的。首先,之后nmcli con mod
您不需要重新加载任何连接。其次,重新加载不接受参数,因为它会重新加载所有连接。另外,使用NM时,通常不会重新启动网络服务,而是nmcli con up ...
。