📅  最后修改于: 2023-12-03 15:02:44.828000             🧑  作者: Mango
在Linux系统中,有时需要定时自动关机,比如在服务器空闲时自动关闭,以节省能源和保护硬件。此时可以使用Shell脚本编写自动关机脚本,让Linux系统自动关机。下面我们来介绍如何使用Shell-Bash实现Linux自动关机。
编写自动关机脚本很简单,只需要先打开一个终端,然后输入以下命令:
sudo nano /etc/rc.local
在打开的文件中添加以下代码:
# 定时关机
shutdown -h +60
这个脚本在60分钟后自动关机,你可以根据需要修改数字以设置不同的关机时间。完成后按Ctrl + X,然后按Y保存并退出。
注意,如果你想要在GUI(图形界面)下自动关机,则需要使用类似下面的命令,其中60是关机时间(分钟):
gnome-schedule -s -m "Shutdown" -p -u root -d /sbin/shutdown -h +60
如果你使用的是其他桌面环境,则需要相应地修改命令。
默认情况下,rc.local是在系统启动时自动执行的,因此无需进一步配置即可实现自动关机。如果你不确定是否已启用rc.local,请运行以下命令:
sudo systemctl status rc.local
如果返回结果中包含“loaded active (running)”字样,则rc.local已经启用,系统在启动时将自动执行此脚本。如果没有找到此文件或它未启用,请按照以下步骤启用它:
运行以下命令:
sudo nano /etc/systemd/system/rc-local.service
在打开的文件中添加以下内容:
[Unit]
Description=/etc/rc.local Compatibility
[Service]
ExecStart=/etc/rc.local start
Type=forking
[Install]
WantedBy=multi-user.target
按Ctrl + X保存并退出。接下来执行以下命令:
sudo chmod +x /etc/rc.local
sudo systemctl enable rc-local
sudo systemctl start rc-local.service
此时,rc.local已启用并在系统启动时自动执行。
以上就是使用Shell-Bash编写Linux自动关机脚本的全部内容。通过编写脚本并自动执行,我们可以实现Linux系统在指定时间自动关机,从而达到节省能源和保护硬件的目的。