我有Linux5.3红帽子,我想将脚本add_dhcp.ksh添加到我的Linux机器上,以便在重启后自动更新ifcfg-eth1 (这个脚本启用dhcp并启动eth1 )
我的问题是:在Linux重新启动后,请提供自动激活add_dhcp.ksh脚本所需的步骤,
add_dhcp.ksh script
#!/bin/ksh
perl -i -pe "s/none/dhcp/" /etc/sysconfig/network-scripts/ifcfg-eth1
perl -i -pe "s/no/yes/" /etc/sysconfig/network-scripts/ifcfg-eth1
ifdown eth1
ifup eth1发布于 2011-11-08 10:09:05
通过将它添加到/etc/rc.local文件中来运行此脚本。无论rc.local文件中存在什么,它都是由linux按每个startup.the顺序运行的,只是您可以使用“服务网络重新启动”而不是ifdown。。此外,在每次重新启动时,手动执行此操作的需要是什么?为什么不在这个接口上永久启用DHCP一次?
发布于 2011-11-08 10:09:56
您可以使用cron和/etc/crontab中的@reboot 'time‘来完成这一任务。
@reboot root /path/to/add_dhcp.ksh 这将在启动时运行一次命令。
编辑:
如果不想编辑任何现有的系统文件,那么可以在/etc/cron.d中创建一个文件。这个目录就像/etc/crontab文件的扩展名,文件使用相同的格式。请注意,该目录中的文件只能由根用户写入。
创建文件(例如/etc/cron.d/rebootfixup)并添加如下一行
@reboot root /path/to/add_dhcp.ksh现在,当您的系统启动时,文件将被添加到cron作业列表中,并进行适当的操作。
发布于 2011-11-08 11:54:40
我认为通常的方法是把它放到rc.local中,但是如果您不想改变文件并且想要一种纯粹的目录方法,您可以将脚本放到/etc/init.d目录中。将其配置为接受“start”或“stop”的参数(stop arg可能与此特定的用例无关)。然后在/etc/rc3.d/中添加一个符号链接,指向您的脚本,名称为S99adddhcp。
这些'rc‘目录是作为启动过程的一部分读取的,如果出于某种原因,您可以在这里修改启动行为(如果您喜欢rc.local上的这个方法)。
以下是对这类配置的大量引用--非常值得一读:
http://www.notesbit.com/index.php/scripts-unix/customizing-system-startup-in-redhat-linux/ http://www.ghacks.net/2009/04/04/get-to-know-linux-the-etcinitd-directory/
-马特
https://serverfault.com/questions/328810
复制相似问题