如何优雅的在Linux下开机自动重启脚本

系统 Linux
经常碰到机器断电之后需要重启一大堆服务,为了防止这种事情发生,设置开机自启的脚本十分的重要,我们习惯性的做法就是编写一个重启脚本,然后在 /etc/rc.local 中去完成开机执行。

[[412386]]

1.简介

经常碰到机器断电之后需要重启一大堆服务,为了防止这种事情发生,设置开机自启的脚本十分的重要,我们习惯性的做法就是编写一个重启脚本,然后在 /etc/rc.local 中去完成开机执行。例如下面这样: 

$ cat /etc/rc.local  
bash /root/script/restart.sh 
  • 1.
  • 2.

这样的方法虽然可行,但并不优雅。今天我们就给大家介绍两种更好的实现方式:

2.通过 Crontab 实现

Crontab 可以使用 @reboot 来执行主机启动之后的命令。首先在命令行输入:

$ crontab -e 
  • 1.

然后添加以下内容:

@reboot /root/script/restart.sh 
  • 1.

完成后,这个脚本就可以在重启的时候自动执行了。

其它的一些进阶玩法:

  •  在启动完成后的指定时间内运行脚本 
# 在启动 5 分钟后运行指定脚本  
@reboot sleep 300 && /home/wwwjobs/clean-static-cache.sh 
  • 1.
  • 2.

3.通过 Systemd 实现

首先编写一个名为 restart 的 Systemd 服务: 

$ vim /lib/systemd/system/restart.service  
[Unit]  
Description=restart  
After=default.target  
[Service]  
ExecStart=/root/script/restart.sh  
[Install]  
WantedBy=default.target 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

然后启用这个 Systemd 服务: 

$ systemctl daemon-reload  
$ systemctl enable restart.service 
  • 1.
  • 2.

完成后,这个服务对应的脚本就可以自动开机自启了。

4.参考文档

https://www.google.com

https://tinyurl.com/6ryafefw

https://www.cyberciti.biz/faq/linux-execute-cron-job-after-system-reboot/ 

 

责任编辑:庞桂玉 来源: 奇妙的Linux世界
相关推荐

2023-03-02 23:45:23

linux开机启动Windows

2020-08-11 18:20:42

Linux运行脚本开机启动

2020-06-11 07:57:48

Linux脚本数据

2023-10-19 19:42:25

IstioPodkubernetes

2020-03-26 11:04:00

Linux命令光标

2021-05-28 10:10:05

LinuxCPU机器学习

2015-11-26 10:53:45

LinuxWindowsMac OS

2009-06-24 10:44:08

2024-03-29 12:11:46

2010-11-25 13:45:44

2010-12-23 14:46:08

expect脚本

2010-04-28 18:06:32

Oracle 10g

2022-09-01 13:12:53

LinuxTC网络限流

2017-12-11 09:34:40

Linux启动或重启命令与脚本

2009-11-28 20:16:04

2010-07-26 15:32:08

Perl脚本语言

2010-03-23 16:35:31

shell 脚本编程

2021-06-10 09:05:43

Linux命令大文件切割

2010-05-26 09:21:12

启动SVN

2011-08-16 18:54:21

Ubuntulinux
点赞
收藏

51CTO技术栈公众号