linux设置开机自启踩坑

前言

相信有一定linux基础的人都知道在linux的 /etc/profile/etc/rc.local 文件中添加相关shell语句能设置开机自动执行,在实际使用过程中你真的了解他俩的区别嘛。

我我我,通过实际踩坑总算是整明白了其中的门道

1.在/etc/profile文件中设置

此处踩坑!!!

/etc/profile/中添加自启脚本语句后reboot重启,ssh登录后发现服务正常启动。


but 在某天开机时未登录系统,也就是没有输入用户名密码时,在外面访问设置自启的服务时发现访问 挂了!

ssh登录系统后发现服务又正常了,经过各种排查,发现只有在 用户登录系统/etc/profile 文件中的语句才会执行。


2.在/etc/rc.local文件中设置

/etc/rc.local 文件中的内容则能在系统启动时就执行,于是采用此方式达到脚本开机自启的目的


修改该文件如下:

#!/bin/bash
##注意此处需要设置为bash文件类型
##你的shell语句

较高版本的ubuntu系统没有 rc.local文件!!!需要自己添加,然后赋执行权限后设置软链,ln -s xxx 自行百度解决

总结

linux开机自启文件/etc/profile文件需要用户登录后才会启动。而/etc/rc.local文件在系统启动时就随之启动。

启动优先级/etc/rc.local > 用户登录 > /etc/profile


本来想用 /etc/init.d/ 文件夹下添加sh脚本,使用chkconfig进行开机自启设置,然后突然发现ubuntu没有chkconfig命令,遂放弃 万恶的ubuntu,还是centos好


手机真的不方便写文章,用的还是md编辑器
字数较多,无图片导致阅读困难,望见谅!

最后修改:2021 年 11 月 17 日
如果觉得我的文章对你有用,请随意赞赏