首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Reboot命令是否调用/etc/rc0.d/目录中的脚本?

Reboot命令是否调用/etc/rc0.d/目录中的脚本?
EN

Ask Ubuntu用户
提问于 2020-05-26 09:26:18
回答 1查看 864关注 0票数 2

当关闭/重新启动我的Linux服务器时,我需要关闭一些服务,但我不确定Reboot命令是如何工作的。

据我理解,当系统关闭时/etc/rc0.d/脚本将被调用,而/etc/rc6.d/脚本将在系统重新启动时被调用。

但是根据这个链接:https://linux.die.net/man/8/reboot,除在级别0和6上运行之外,reboot命令也调用关机命令,这是否意味着在运行重新引导命令时也会调用/etc/rc0.d/脚本?

我是否只需要将服务杀死脚本放入/etc/rc0.d/和/etc/rc1.d/?还是它也需要在/etc/rc6.d/中,以确保在重新启动时停止服务?

编辑:添加我的服务器配置。目前运行Redhat,从6.x到7.2不等。

EN

回答 1

Ask Ubuntu用户

发布于 2020-05-26 09:45:13

如果您只想在关闭时以您想要的方式终止某些进程,可以编写两个简单的脚本,如下所示:

代码语言:javascript
复制
#Shutdown.sh
killall blah blah blah
init  0

代码语言:javascript
复制
#Reboot.sh
killall blah blah blah
init 6

并在您登录的每个用户的.bashrc文件中创建一些别名,如:

代码语言:javascript
复制
alias shutdown_custom="Shutdown.sh"
alias reboot_custom="Reboot.sh"

并在每次重新启动(或关机)时运行这些命令。

但是,如果坚持使用init脚本,则可以将脚本放在/etc/init.d目录中,并发出以下命令(具有超级用户权限):

代码语言:javascript
复制
update-rc.d script-name enable 0 6 

但是要注意,您应该在脚本的头中提到运行级别。例如,可以在大多数linux服务中找到这种情况:

代码语言:javascript
复制
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6

在我的系统中,/etc/rc0.d/etc/rc6.d的内容完全相同,所以从systemd的角度看,关闭和重新启动是一样的。

如果有人有更好的解决方案,我很高兴听到。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1243799

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档