zl程序教程

您现在的位置是:首页 >  系统

当前栏目

CentOS7 的/etc/rc.local不会开机执行解决方案

centos7执行解决方案 开机 不会 local etc RC
2023-09-27 14:24:59 时间
  最近发现centos7 的/etc/rc.local不会开机执行,于是认真看了下/etc/rc.local文件内容的就发现了问题的原因了 #!/bin/bash # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES # It is highly advisable to create own systemd services or udev r

  最近发现centos7 的/etc/rc.local不会开机执行,于是认真看了下/etc/rc.local文件内容的就发现了问题的原因了

#!/bin/bash

# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES

# It is highly advisable to create own systemd services or udev rules

# to run scripts during boot instead of using this file.

# In constrast to previous versions due to parallel execution during boot

# this script will NOT be run after all other services.

# Please note that you must run chmod +x /etc/rc.d/rc.local to ensure

# that this script will be executed during boot.

翻译:

#这个文件是为了兼容性的问题而添加的。

#强烈建议创建自己的systemd服务或udev规则来在开机时运行脚本而不是使用这个文件。

#与以前的版本引导时并行执行相比较,这个脚本将不会在其他所有的服务后执行。

#请记住,你必须执行“chmod +x /etc/rc.d/rc.local”来确保确保这个脚本在引导时执行。

于是我有确认了下/etc/rc.local的权限

[root@localhost ~]# ll /etc/rc.local

lrwxrwxrwx. 1 root root 13 8月 12 06:09 /etc/rc.local - rc.d/rc.local

[root@localhost ~]# ll /etc/rc.d/rc.local

-rw-r--r--. 1 root root 477 6月 10 13:35 /etc/rc.d/rc.local

/etc/rc.d/rc.local没有执行权限,于是按说明的内容执行

chmod +x /etc/rc.d/rc.local

重启后发现/etc/rc.local能够执行了。

看样子是版本的变迁,/etc/rc.local /etc/rc.d/rc.local正弃用的路上。


16.7 Linux /etc/rc.d/rc.local配置文件 在 /etc/rc[06].d/ 目录中的程序启动之后,系统的启动就已经完成。不过,我们总有一些程序是需要在系统启动之后随着系统一起启动的。这时我们并不需要自己把需要启动的服务链接到 /etc/rc3.d/ 目录中,因为系统给我们准备了 /etc/rc.d/rc.local 配置文件。
Ubuntu 开机自动执行--脚本或命令(基于rc.local) 开发过程中,有时需要一些sh脚本、python脚本、命令等在开机的时候自动执行;这种方法比较适合于ubuntu16及之前的版本;毕竟像ubunutu18本来是不带rc.local脚本的。
Ubuntu18 开机自动执行--脚本或命令(基于update-rc.d) Ubuntu 18 不再使用initd管理系统,而是使用systemd;我们使用 update-rc.d,可以添加和删除服务,并将它们添加到Ubuntu / Debian启动脚本中,实现开启自启动效果。