Ubuntu16.04及以上版本设置开机启动方法/etc/rc.local

前言

在我们安装好linux系统后,有时候需要编译安装一些服务,但是一般编译安装的服务是不会开机自动启动的,下面介绍一种基于Ubuntu16.04及以上版本的操作系统的开机自动启动服务的方法。亲测在16.04 和 20.04两个版本的ubuntu系统都能正常开机启动服务。

Ubuntu中的/etc/rc.local是系统启动时会自动执行的脚本,只要将对应的指令写入该脚本中,Ubuntu开机时就会自动执行该指令,从而实现开机自启动,一般的/etc/rc.local是以exit 0结束的,这是因为只有当返回值为0时,系统才判定该脚本执行正确,我们要做的就是将需要执行的指令写在exit 0 之前即可。

终端上修改以下文件,需要管理权限

sudo vim /etc/rc.local

在以上文件的 exit 0 之前加入需要开机启动的服务的启动脚本保存退出重启服务器即可。如下图箭头处为我自己添加的开机启动项,一个服务一行即可。
在这里插入图片描述
以上重启服务器即可查看是否开机启动成功了。可以使用: ps -ef | grep 服务名称 查看启动情况,如下图表示redis和memcache启动了。
在这里插入图片描述
注:如果没有 /etc/rc.local 这个文件(16.04有这个文件,20.04需要自己新建),则自己新建一个,然后再赋予权限最后重启服务器即可。
1、新建文件内容格式如下:在 #!/bin/sh 后 exit 0 前 输入需要开机启动的服务启动脚本即可

#!/bin/sh

echo "看到这行字,说明添加自启动脚本成功。" > /usr/local/test.log  # 在 exit 0 前写入需要开机启动的执行指令
/usr/local/LAMP/memcached/bin/memcached -m 64m -p 11211 -d -u root # 开机自动启动编译安装的memcache
/usr/local/LAMP/redis/bin/redis-server /usr/local/LAMP/redis/bin/redis.conf # 开机自动启动编译安装的redis

exit 0

以上保存退出

2、赋予权限
sudo chmod +x /etc/rc.local

3、重启服务器
sudo reboot

4、测试
重启服务器后查看/usr/local/test.log文件是否里面内容为:“看到这行字,说明添加自启动脚本成功。”

cat /usr/local/test.log

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_34125713/article/details/127783164
今日推荐