侧边栏壁纸
Linux入门自学网博主等级

每日学一条Linux命令,终成Linux大神

  • 累计撰写 725 篇文章
  • 累计创建 143 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Linux shutdown命令详解:如何安全地关闭或重启系统(附实例教程和注意事项)

Linux shutdown命令介绍

shutdown命令是用来关闭或重启Linux系统的一个命令,它可以让系统在指定的时间或者立即执行关机或重启的操作,也可以向系统中的其他用户发送关机通知或自定义消息。shutdown命令可以让系统安全地终止所有的进程,同步所有的磁盘,然后关闭或重启系统。

Linux shutdown命令适用的Linux版本

shutdown命令在大多数Linux发行版中都是可用的,但是在一些基于systemd的系统中,shutdown命令实际上是一个指向systemctl命令的快捷方式,以保证与System V init系统的兼容性。systemd是一个新的启动系统,它在2011年开始被Fedora等一些Linux发行版采用,2015年被Debian和Ubuntu等主流发行版接受。systemd提供了一些新的命令来管理系统的关机和重启,例如:

  • systemctl poweroff:关闭系统并切断电源。
  • systemctl reboot:重启系统。
  • systemctl halt:停止系统,但不切断电源。
  • systemctl suspend:挂起系统,进入低功耗模式。
  • systemctl hibernate:休眠系统,将内存内容保存到磁盘,然后关闭系统。
  • systemctl hybrid-sleep:混合休眠系统,将内存内容保存到磁盘,然后挂起系统。

如果你的系统是基于systemd的,你可以使用这些命令来代替shutdown命令,它们的效果是一样的。你可以使用以下命令来检查你的系统是否使用systemd:

[linux@bashcommandnotfound.cn ~]$ ps -p 1 -o comm=

如果输出是systemd,那么你的系统就是基于systemd的。如果输出是init,那么你的系统就是基于System V init的。

Linux shutdown命令的基本语法

shutdown命令的基本语法如下:

shutdown [选项] [时间] [消息]

其中:

  • [选项]:定义你想要执行的操作,是关机、重启还是停止系统。
  • [时间]:指定你想要执行操作的时间,可以是绝对时间(如23:59)或相对时间(如+10,表示10分钟后)。
  • [消息]:添加一个自定义的消息,向系统中的其他用户通知关机或重启的原因或注意事项。

Linux shutdown命令的常用选项说明

shutdown命令的常用选项有以下几个:

选项说明
-h关机并切断电源,相当于systemctl poweroff
-r重启系统,相当于systemctl reboot
-H停止系统,但不切断电源,相当于systemctl halt
-P关机并切断电源,与-h选项相同
-c取消已经安排的关机或重启操作
-k只发送消息,不执行关机或重启操作

Linux shutdown命令的实例

以下是一些shutdown命令的实例:

  • 立即关机并切断电源:
[linux@bashcommandnotfound.cn ~]$ sudo shutdown -h now
  • 在10分钟后重启系统,并向其他用户发送消息:
[linux@bashcommandnotfound.cn ~]$ sudo shutdown -r +10 "系统将在10分钟后重启,请保存好你的工作。"
  • 在晚上11点59分停止系统,但不切断电源:
[linux@bashcommandnotfound.cn ~]$ sudo shutdown -H 23:59
  • 取消已经安排的关机或重启操作:
[linux@bashcommandnotfound.cn ~]$ sudo shutdown -c
  • 只向其他用户发送消息,不执行关机或重启操作:
[linux@bashcommandnotfound.cn ~]$ sudo shutdown -k +5 "系统将在5分钟后关闭,这是一个测试消息。"

Linux shutdown命令的注意事项

  • shutdown命令需要root用户或者sudo权限才能执行,普通用户不能使用shutdown命令。
  • shutdown命令的默认操作是关机并切断电源,如果没有指定-h或-r选项,那么shutdown命令会执行-h选项。
  • shutdown命令的时间参数可以省略,如果省略了时间参数,那么shutdown命令会在1分钟后执行操作。
  • shutdown命令的消息参数可以省略,如果省略了消息参数,那么shutdown命令会发送一个默认的消息,如"System is going down for power-off/reboot in 1 minute!"。
  • 如果你的系统没有安装shutdown命令,你可能会看到以下错误信息:
[linux@bashcommandnotfound.cn ~]$ shutdown
bash: shutdown: command not found

这时候,你可以使用以下命令来安装shutdown命令:

  • 对于基于Debian的系统(如Ubuntu),使用:
[linux@bashcommandnotfound.cn ~]$ sudo apt install systemd-sysv
  • 对于基于Red Hat的系统(如CentOS),使用:
[linux@bashcommandnotfound.cn ~]$ sudo yum install systemd-sysv

或者,你可以使用systemctl命令来代替shutdown命令,如systemctl poweroff或systemctl reboot等。

0

评论区