如何写个linux shell脚本自动重启系统
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何写个linux shell脚本自动重启系统相关的知识,希望对你有一定的参考价值。
1、通过SSH已root用户登录系统2、执行crontab -e进入编辑模式
3、按i进入输入模式,添加如下命令,
每天2点01分重启
代码:01 2 * * * reboot
”* * * * * reboot”,前面五个*号代表五个数字,顺序分别是:分、时、日、月、星期,
它们数字的取值范围和含义如下:
分钟 (0-59)
小时 (0-23)
日期 (1-31)
月份 (1-12)
星期 (0-6)//0代表星期天 参考技术A linux系统就是以稳定而著称,一般情况下都没必要重启系统的,而且由于是多用户多任务系统,重启可能会对其他用户有影响,也不利于数据保存,最好不要总是重启。当然,如果需要特殊需要定时重启的话,crontab -e定时任务reboot(或者init3,init5)等等都可以。 参考技术B crontab -e制定init.6就行 参考技术C reboot
这一条命令就OK了呀!
在linux系统内,如何将一个shell脚本添加到自动启动项?
不管你用什么用户名登录, 你的根目录下都应该有个自动加载脚本:cd ~
vi .bashrc (这个是bash的,如果是tcsh,文件该是.cshrc )
然后把你的执行脚本的命令放进去就行了,完了之后重启或者执行source .bashrc
比如:
root@alex:~# cat ~/.bashrc
# 执行/usr/bin目录下的abc.sh
/usr/bin/abc.sh
# 或者执行当前目录下的abc.sh
./abc.sh追问
我需要把/etc/bashrc都改成/user/home/abc.sh还是怎么做。在线等,谢谢
不用改,再加一行,是单独的命令,跟那没关系,你就在最下面,或者最上面加一行
./user/home/abc.sh
显示找不到文件,我的shell里引用的文件什么的是不是都需要写绝对路径。
追答那肯定了,不然它哪知道上哪找?
参考技术A crontab -e 里面添加* * * * * command
分 时 日 月 周 命令
例如:
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启apache。追问
不是要重启服务,而已在开机启动的时候自动执行一个shell脚本。
参考技术B 在你的$HOME/.profile里面调用这个脚本就行了。追问我的里面只有.bash_profile不知道是不是您所说的,我在里面引用脚本,提示找不到文件。我的shell里面应用的东西是不是也要写绝对路径。
追答.bash_profile应该也可以的。 应该用绝对路径。
这个不行的话就新建一个.profile,在.profile里面调用。
以上是关于如何写个linux shell脚本自动重启系统的主要内容,如果未能解决你的问题,请参考以下文章