ubuntu、redhat系统开机自启动服务rc.local,可以开机自动执行某个脚本或者命令

总结

ubuntu、redhat系统同样经过测试,可以使用。总体步骤如下:
1.编辑/etc/rc.local 文件,没有的话直接创建+编辑即可。例如最简单的创建一个txt文件。
vim /etc/rc.local

#!/bin/bash
mkdir   /home/test/123.txt

2.给执行权限chmod a+x /etc/rc.local

3.开启启动rc-local服务
systemctl enable rc-local --now

注意: redhat系统下/etc/rc.local 是软连接,连接到/etc/rc.d/rc.local,请确保两个文件都有执行权限。

其他示例:

rc.local是一个较旧Linux启动加载脚本(目前主流系统主要用systemctl控制开机启动),目前仍然可用
1.普通命令可以直接写在rc.local里,(rc.local须有执行权限,没有的话执行chmod +x rc.local
编辑rc.local文件vim /etc/rc.d/rc.local
在这里插入图片描述
如上图,第一行是一个脚本123.sh的绝对位置,开机会自动运行该脚本。
第二行是一个mkdir 创建文件夹的命令,开机会在root用户桌面创建文件夹11111111111111

2.若命令特殊,如开机自启动vnc并开启监听5906端口;开机状态下打开vnc并监听5906端口使用命令vncserver :6在这里插入图片描述
但把该命令写入rc.local里开机vnc服务不能正常开启,应写为su -c "command" user的格式,如下su -c "vncserver :6" root
意思为变更帐号为 root 并在执行vncserver :6 指令后退出变回原使用者,引号""可以不加
在这里插入图片描述
理论上该语句中的command,可以替换成所有可在系统teminal终端框里能够执行的命令
3.推荐把命令写在外面目录的脚本里,然后用rc.local来调用脚本,便于管理rc.local内容。此时若想通过/home/123.sh来开机启动vncserver,应在123.sh内写上一行su -c "vncserver" root ,并把/home/123.sh加入到/etc/rc.d/rc.local中如下图
在这里插入图片描述

  • 1
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值