核心命令
最常用、最核心的关机命令有两个:shutdown 和 poweroff。

shutdown 命令 (最推荐、最安全)
shutdown 命令是最专业、最安全的关机或重启方式,它会通知所有登录的用户系统即将关闭,并给她们留出保存工作的时间。
语法
shutdown [选项] [时间] [消息]
常用选项
| 选项 | 全称 | 描述 |
|---|---|---|
-h |
--halt |
关机后关闭电源。 |
-r |
--reboot |
关机后重启。 |
-c |
--cancel |
取消一个正在进行的关机或重启计划。 |
常用用法
立即关机
这是最安全的立即关机方式,会给所有在线用户发送通知。
sudo shutdown -h now
sudo: 因为关机需要管理员权限,所以需要使用sudo。-h: 表示halt,即关机。now: 表示立即执行。
定时关机
你可以设置在未来的某个时间点关机,这对于下载大文件或执行定时任务非常有用。
示例1:10分钟后关机

sudo shutdown -h +10
系统会广播一条消息,告知所有用户系统将在10分钟后关闭。
示例2:在特定时间关机
sudo shutdown -h 23:30
这表示系统会在今天的 23:30 关机。
立即重启
sudo shutdown -r now
-r: 表示reboot,即重启。now: 立即执行。
取消已计划的关机/重启
如果你计划了关机但之后又取消了,可以使用以下命令:

sudo shutdown -c
执行后,系统会广播一条消息,告知所有用户已取消关机计划。
poweroff 命令 (简单直接)
poweroff 命令的作用非常直接:立即关闭系统并切断电源,它不会给其他用户发送通知,所以通常只在你是系统唯一用户,或者不关心其他用户的情况下使用。
语法
poweroff [选项]
常用用法
立即关机
sudo poweroff
或者
sudo poweroff -h
-h是默认行为,表示halt(关机)。
立即重启
poweroff 命令本身不负责重启,但有一个相关的命令 reboot。
reboot 命令 (简单重启)
reboot 命令的作用和 shutdown -r now 类似,就是立即重启系统,它同样不会给其他用户发送通知。
语法
reboot [选项]
常用用法
立即重启
sudo reboot
或者
sudo reboot -f
-f(--force) 表示强制,即使有用户未登出也会立即重启。
halt 命令 (停止系统)
halt 命令会停止所有 CPU 的操作,但不会自动切断电源,在现代系统上,halt 和 poweroff 的行为通常是一样的,系统在停止后会自动关闭电源。
语法
halt [选项]
常用用法
sudo halt
这会停止系统,通常等同于关机。
init 命令 (传统方式)
init 是系统初始化进程,通过改变它的运行级别来控制系统的状态,这是一种比较传统的方法,在现代使用 systemd 的系统中(如 Ubuntu 16.04+, CentOS 7+, Debian 8+),这种方式仍然可用,但 shutdown 更受推荐。
语法
sudo init [运行级别]
常用用法
关机
运行级别 0 是关机。
sudo init 0
重启
运行级别 6 是重启。
sudo init 6
总结与对比
| 命令 | 功能 | 是否通知用户 | 推荐场景 |
|---|---|---|---|
shutdown -h now |
立即关机 | 是 | 最推荐,安全,适用于多用户环境。 |
shutdown -r now |
立即重启 | 是 | 最推荐,安全,适用于多用户环境。 |
poweroff |
立即关机 | 否 | 简单直接,适合单用户或紧急情况。 |
reboot |
立即重启 | 否 | 简单直接,适合单用户或紧急情况。 |
halt |
停止系统 | 否 | 传统命令,行为类似 poweroff。 |
init 0 |
关机 | 否 | 传统方式,不推荐新手使用。 |
init 6 |
重启 | 否 | 传统方式,不推荐新手使用。 |
重要提醒
- 使用
sudo: 几乎所有的关机、重启命令都需要管理员权限,因此必须在命令前加上sudo。 - 保存工作: 在执行关机或重启命令前,请确保你已经保存了所有打开的文件和工作,否则可能会导致数据丢失。
- 选择合适的命令: 如果你在服务器或有其他用户登录的系统上工作,请务必使用
shutdown,这是一种良好的系统管理习惯,如果你只是在自己的个人电脑上使用,poweroff或reboot也可以,但shutdown依然是更稳妥的选择。
