从终端关闭和重启Linux系统
简介
在这篇文章中,我们将讨论如何从终端关闭和重启Linux系统。从命令行关闭和重启系统的能力在很多情况下都很有用,比如当GUI 不可用时 ,或者通过Linux shell脚本自动执行任务时。
概述
Linux是一个相当强大的操作系统,因此,很少需要重启Linux服务器。然而,有时也有需要重新启动系统的原因。
例如,如果我们在个人电脑上运行Linux,重新启动和关闭系统可能是一个日常操作。
重启或关闭系统
各种命令都可以重启或关闭系统,如关机、重启、关机、关闭等。由于重启或关闭系统将 杀死所有正在运行的进程 ,因此必须有 root或sudo权限 才能运行此类命令。
大多数现代Linux发行版都采用 “systemd “作为其系统和服务管理器。在 systemd管理的 系统中,”systemctl “集中控制着系统的重启和关闭。
例如,让我们看看 Ubuntu 系统上的这些命令 —
$ file /sbin/{halt,poweroff,reboot,shutdown}
/sbin/halt: symbolic link to /bin/systemctl
/sbin/poweroff: symbolic link to /bin/systemctl
/sbin/reboot: symbolic link to /bin/systemctl
/sbin/shutdown: symbolic link to /bin/systemctl
了解到所有这些命令都与同一条命令相关,可能会让人有些吃惊。”systemctl”。这是因为 “systemctl “程序使用了一种技术,根据它的运行方式来改变其行为。
关机命令
我们可以使用shutdown命令来安全地重启或关闭一个Linux系统。使用shutdown命令的语法很简单,就是
$ shutdown [OPTIONS...] [TIME] [MESSAGE]
常见选项
现在让我们来看看shutdown命令所支持的常用选项。我们可以通过 “-r “选项来重新启动我们的系统,而不是关闭机器。
# shutdown -r
Shutdown scheduled for Thur 2022-01-19 11:56:50 IST, use 'shutdown -c' to cancel.
选项 “-H “告诉shutdown命令 停止 系统–:
# shutdown -H
Shutdown scheduled for Thur 2022-01-19 11:56:50 IST, use 'shutdown -c' to cancel.
安排一个关机操作
有时我们不想在一分钟内关闭或重启系统。相反,我们可以在一个特定的时间安排关机操作。shutdown命令支持两种不同的时间格式来安排 –
- 绝对时间 - HH:mm
-
相对时间 --+NumberOfMinutes
例如,我们可以将系统重启的时间安排在 上午8点08分 \:
# shutdown -r 08:08
Shutdown scheduled for Thur 2022-01-19 08:00:00 IST, use 'shutdown -c' to cancel.
让我们看看另一个例子,我们在 30 分钟内安排一个系统关闭:
# shutdown +30
Shutdown scheduled for Thur 2022-01-19 12:36:55 IST, use 'shutdown -c' to CEST, use 'shutdown -c' to cancel.
如果我们想立即关闭系统,我们可以使用 ” +0 “或一个方便的别名, “现在 “-
# shutdown now
由于Linux是一个 多用户 操作系统,我们可能想向所有当前登录的用户广播一条关于预定关机或重启的信息:
# shutdown -r +45 "Attention: This system will restart in 45 minutes!"
Shutdown scheduled for Thur 2022-01-19 12:48:39 IST:...
取消一个预定的关机操作
在上面的例子中,我们已经安排了一个重启或关闭的操作。然而,有些时候我们可能想 取消一个预定的操作。 例如,如果重启或关机的计划是错误的,或者在计划重启之前需要安装一个关键的更新。在这种情况下,我们可以使用 ” shutdown -c “命令来取消一个预定的操作。
# shutdown -c
这个命令将 取消 任何预定的重启或关闭操作,并显示一条确认取消的信息。
结论
总之,我们可以使用带有不同选项和时间参数的’ shutdown ‘命令来安排Linux系统的关闭或重新启动。’ halt ‘和’ poweroff ‘命令也可以分别用来停止或关闭系统。然而,谨慎使用这些命令始终是很重要的,因为如果操作不当,可能会导致数据丢失。还需要注意的是,大多数现代Linux发行版使用 ” systemd “作为它们的系统和服务管理器,所有的关机命令都与同一个 ” systemctl “命令相关联。了解这些命令的行为和可以与它们一起使用的开关可以帮助我们更有效地控制Linux系统的关机和重启过程。