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

admin9个月前笔记72

有时可能会需要在重启时或者每次系统启动时运行某些命令或者脚本。我们要怎样做呢?本文中我们就对此进行讨论。 我们会用两种方法来描述如何在 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 就是待执行脚本的地址。


相关文章

WiFi 6与WiFi 5的差别

WiFi 6与WiFi 5的差别

购物节已经来到,要想抢到自己心仪已久的打折商品,就需要飞快的网速做支持!除去外网带宽的因素,手机和无线路由器之间的WiFi连接非常重要。目前,WiFi 6路由器已经是各大电商网站的销售主力军,但是还有...

通过 SSH 实现 TCP / IP 隧道(端口转发)

通过 SSH 实现 TCP / IP 隧道(端口转发)

对于 Secure Shell (SSH)[1] 这样的网络协议来说,其主要职责就是在终端模式下访问一个远程系统。因为 SSH 协议对传输数据进行了加密,所以通过它在远端系统执行命...

自学Linux命令的四种方法

自学Linux命令的四种方法

方法一:终端“每日提示”在.bashrc中(/home/.bashrc)增加如下一行:echo "Did you know that:";&...

教你搭建你自己的Git服务器

教你搭建你自己的Git服务器

直到现在,我们主要讨论的还是以一个使用者的身份与 Git 进行交互。这篇文章中我将讨论 Git 的管理,并且设计一个灵活的 Git 框架。你可能会觉得这听起来是 “高阶 Git 技术” 或者 “只有狂...

await 错误捕获实现方式源码示例解析

Promise 是一种在 JavaScript 中用于处理异步操作的机制。Promise 在开发中被广泛使用,这篇文章将学习如何优雅的捕获 await 的错误。Promise 的使用方法创建一个 Pr...

Shell脚本知识简述

Shell脚本知识简述

shell 都能做什么监控系统运行:linux可以说是运行最稳定的操作系统,这一方面得益于它完美的内核,另一方面就是有很多shell脚本命令可以监控系统的运行,当出现问题之前,提前报警。启动停止服务:...

发表评论    

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