Show Table of Contents
这是一个手动过程,不会与任何引导后发生的事件互动。用户还可以手动调用
1.8. NetworkManager 及网络脚本
在之前的 Red Hat Enterprise Linux 发行本中,默认使用网络脚本配置联网。术语网络脚本通常是指
/etc/init.d/network 及所有它调用的已安装脚本。用户提供的文件通常被视为配置文件,但也可以将其解读为对脚本的修改。
虽然 NetworkManager 提供默认联网服务,但 Red Hat 开发人员仍致力于确保脚本和 NetworkManager 之间可相互协作。习惯于使用脚本的管理员仍可继续使用脚本。我们的预期是两个系统可同时存在,并可很好地合作。大多数之前发行本中的用户 shell 脚本仍可正常工作。但 Red Hat 建议您在使用前对其进行测试。
运行网络脚本
只使用 systemctl 程序运行脚本则会清除所有现有环境变量,并确保一个干净的执行模式。该命令的格式如下:
systemctl start|stop|restart|status network
请勿直接调用
/etc/init.d/servicename start|stop|restart|status 运行任何服务。
注:在 Red Hat Enterprise Linux 7 中,首先启动 NetworkManager,此时
/etc/init.d/network 会使用 NetworkManager 检查,以避免破坏 NetworkManager 的连接。NetworkManager 主要在使用 sysconfig 配置文件的主要应用程序中使用,而 /etc/init.d/network 主要是作为备用程序在此要程序中使用。
/etc/init.d/network 脚本不是事件驱动,它可采用以下方式之一运行:
- 手动(运行
systemctl命令之一),start|stop|restartnetwork - 如果启用网络服务,则会在引导和关机时运行(
systemctl enable network命令的结果)。
ifup 和 ifdown 脚本。
自定义命令及网络脚本
只有在那些设备由
/etc/init.d/network 服务控制时方可执行脚本 /sbin/ifup-local 中的自定义命令(ifdown-pre-local 和 ifdown-local)。如果修改 initscripts 本身(比如 /etc/sysconfig/network-scripts/ifup-eth),那么 initscripts 软件包更新会覆盖那些修改。因此建议避免直接修改 initscripts,而是使用 /sbin/if*local 脚本,以便在更新软件包后仍可保留您所做的更改。Initscripts 只检查是否有相关的 /sbin/if*local,并在该文件存在时运行该文件。Initscripts 不会在 /sbin/if*local 脚本中添加任何内容,initscripts RPM(或任意软件包)也不会拥有或修改那些文件。
网络连接启动或断开时,可采用某些方法执行自定义任务,旧的网络脚本及 NetworkManager 均有此功能。启用 NetworkManager 后,
ifup 和 ifdown 脚本会询问 NetworkManager,是否由 NetworkManager 管理在 ifcfg 文件的 “DEVICE=” 行中发现的接口。如果是 NetworkManager 管理该设备,且该设备未处于连接状态,则 ifup 会要求 NetworkManager 启动该连接。
- 如果该设备由 NetworkManager 管理,且它已经处于连接状态,则不需要任何操作。
- 如果该设备不是由 NetworkManager 管理,那么该脚本会使用旧的非 NetworkManager 机制(即出现 NetworkManager 之前使用的方法)启动该连接。
如果要调用
ifdown,且该设备由 NetworkManager 管理,那么 ifdown 会要求 NetworkManager 终止该连接。
该脚本会动态检查 NetworkManager,因此如果未运行 NetworkManager,则该脚本会故障转移至旧的、早于 NetworkManager 的基于脚本的机制。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.