Linux系统中设置开机自动运行的两种方法

admin9个月前笔记74

有时可能会需要在重启时或者每次系统启动时运行某些命令或者脚本。我们要怎样做呢?本文中我们就对此进行讨论。 我们会用两种方法来描述如何在 CentOS/RHEL 以及 Ubuntu 系统上做到重启或者系统启动时执行命令脚本。 两种方法都通过了测试。

image.png

方法 1 – 使用 rc.local

这种方法会利用 /etc/ 中的 rc.local 文件来在启动时执行脚本与命令。我们在文件中加上一行来执行脚本,这样每次启动系统时,都会执行该脚本。

不过我们首先需要为 /etc/rc.local 添加执行权限,

$ sudo chmod +x /etc/rc.local

然后将要执行的脚本加入其中:

$ sudo vi /etc/rc.local

在文件最后加上:

sh /root/script.sh &

然后保存文件并退出。使用 rc.local 文件来执行命令也是一样的,但是一定要记得填写命令的完整路径。 想知道命令的完整路径可以运行:

$ which command

比如:

$ which shutter
/usr/bin/shutter

如果是 CentOS,我们修改的是文件 /etc/rc.d/rc.local 而不是 /etc/rc.local。 不过我们也需要先为该文件添加可执行权限。

注意:- 启动时执行的脚本,请一定保证是以 exit 0 结尾的。

方法 2 – 使用 Crontab

该方法最简单了。我们创建一个 cron 任务,这个任务在系统启动后等待 90 秒,然后执行命令和脚本。

要创建 cron 任务,打开终端并执行

$ crontab -e

然后输入下行内容,

@reboot ( sleep 90 ; sh \location\script.sh )

这里 \location\script.sh 就是待执行脚本的地址。


相关文章

SSH 隧道

SSH 隧道

1. 什么是 SSH 隧道SSH 隧道是 SSH 中的一种机制,它能够将其他 TCP 端口的网络数据通过 SSH 连接来转发,并且自动提供了相应的加密及解密服务。因为 SSH 为其他 TCP 链接提供...

TCP/IP攻击方式

TCP/IP攻击方式

曾经,黑客对著名代码托管平台GitHub发动攻击,GitHub和旗下很多子站点均被提示有信息安全问题,大批访问用户被挡在网站之外。这样的例子还有很多,14年微软账号系统被入侵事件,16年美国网络瘫痪事...

MySQL 5.7与MySQL 8.0的参数对比

MySQL 5.7与MySQL 8.0的参数对比

从5.7升级至8.0的时候,需要确认两个版本中存在的差异,特别是关于参数的对比,开发人员和运维人员,可以检查现有的应用程序或脚本中是否存在不兼容的参数,在这里为大家提供一个非常有用的链接,可以利用它进...

前端框架选哪个?Vue,React 还是 Angular

前端框架选哪个?Vue,React 还是 Angular

Web 前端开发是时下最热门的领域之一,为了提升开发效率和用户体验从而创造更具竞争力的产品,选择适合自己项目或团队的开发框架成为技术决策者首先需要解决的问题。那么2021前端框架选哪个?Vue,Rea...

CentOS 下SSH限制IP和用户登录

CentOS 下SSH限制IP和用户登录

CentOS 下设置SSH只允许特定用户从特定的IP登录,其它未经允许的用户和IP都不能登录。演示环境192.168.1.81:CentOS 6192.168.0.222:Win 10192...

建立SSH之免密登陆

建立SSH之免密登陆

忽略ssh安装scp安装过程。默认认为当前机器与远程机器含有完整的ssh,scp功能首先在机器B中使用ssh-keygen -t rsa 命令 (想来玩git的童鞋应该知道吧~)[...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。