重启或关闭 Linux 系统的 6 个终端命令

您所在的位置:网站首页 重启linux 重启或关闭 Linux 系统的 6 个终端命令

重启或关闭 Linux 系统的 6 个终端命令

2023-11-19 14:14| 来源: 网络整理| 查看: 265

重启或关闭 Linux 系统是诸多风险操作之一,务必慎之又慎。 点击查看我的博客原文

Linux 系统在重启或关闭之前,会通知所有已登录的用户和进程。如果在命令中加入了时间参数,系统还将拒绝新的用户登入请求。

推荐阅读: 查看系统/服务器正常运行时间的 11 个方法 | 2daygeek Tuptime 一款为 Linux 系统保存历史记录、统计运行时间工具 | 2daygeek

下面将依次介绍以下命令

shutdown、halt、poweroff、reboot:用于休眠、重启或关机init:initialization 的简称,是系统启动的第一个进程systemctl:systemd 是 Linux 系统和服务器的管理程序shutdown 命令

shutdown命令用于重启或关闭本地/远程的 Linux 设备,并提供了多个选项。如果定义了时间参数,则系统会在关机的 5 分钟前创建/run/nologin文件,以确保后续的登录请求会被拒绝。

通用语法如下:

> shutdown [OPTION] [TIME] [MESSAGE]

运行以下命令则会立即关闭 Linux 设备。-h now表示立刻杀死所有进程,并关闭系统:

-h:如果不特指-halt选项,则等价于-poweroff选项

> shutdown -h now

另外我们可以使用带有-halt选项的shutdown命令立即关闭设备:

-H、--halt:停止设备运行

> shutdown --halt now # 或者 > shutdown -H now

还可以使用带有poweroff选项的shutdown命令:

-P、--poweroff:切断电源(默认)

> shutdown --poweroff now # 或者 > shutdown -P now

如果没有使用时间选项运行以下命令,则命令会在一分钟之后执行:

[root@centos-1~] > shutdown -h Shutdown scheduled for Mon 2018-10-08 06:42:31 EDT, use 'shutdown -c' to cancel. [root@centos-2~] > Broadcast message from root@centos-1 (Mon 2018-10-08 06:41:31 EDT): The system is going down for power-off at Mon 2018-10-08 06:42:31 EDT!

若要取消关机计划,则可使用shutdown -c:

[root@centos-1~] > shutdown -c Broadcast message from root@centos-1 (Mon 2018-10-08 06:39:09 EDT): The system shutdown has been cancelled at Mon 2018-10-08 06:40:09 EDT!

同样的,其他登录用户都能在中断中看到如下的广播消息:

[root@centos-2~] > Broadcast message from root@centos-1 (Mon 2018-10-08 06:41:35 EDT): The system shutdown has been cancelled at Mon 2018-10-08 06:42:35 EDT!

如果想在指定时间(例如N秒)后执行重启或关机操作,则可添加时间参数,并可以为所有登录用户添加自定义广播消息。例如,我们将在五分钟后重启设备:

[root@centos-1~] > shutdown -r +5 "To activate the latest Kernel" Shutdown scheduled for Mon 2018-10-08 07:13:16 EDT, use 'shutdown -c' to cancel. [root@centos-2~] > Broadcast message from [email protected] (Mon 2018-10-08 07:08:16 EDT): To activate the latest Kernel The system is going down for reboot at Mon 2018-10-08 07:13:16 EDT!

运行以下命令则会立即杀死所有进程并重启系统:

> shutdown -r nowreboot 命令

reboot命令同样可以重启或关闭本地/远程的 Linux 设备。

执行不带任何参数的reboot命令以重启 Linux 设备:

> reboot

执行带-p参数的reboot命令以关闭 Linux 设备电源:

-p、--poweroff:调用halt或poweroff命令,切断设备电源

> reboot -p

执行带-f参数的reboot命令以强制重启 Linux 设备(类似按压机器上的电源键):

-f、--force:立刻强制终端,切断电源或重启

> reboot -finit 命令

init进程是 Linux 系统启动的第一个进程。

它会检查/etc/inittab文件并决定 Linux 的运行级别。同时,允许用户在 Linux 设备上执行关机或重启操作。级别范围为0~6,共七个运行等级。

推荐阅读:如何检查 Linux 上所有运行的服务 | 2daygeek

执行以下命令关闭系统:

0:停机 - 关闭系统

> init 0

执行以下命令重启设备:

6:重启 - 重启设备

> init 6halt 命令

halt命令用来切断电源或关闭本地/远程 Linux 设备。它会中断所有进程并关闭 CPU:

> haltpoweroff 命令

poweroff命令同样用来切断电源或关闭本地/远程 Linux 设备。poweroff很像halt,但不同的是它可以关闭设备硬件:poweroff会给主板发送 ACPI 指令,主板再将信号发送给电源并切断电源:

> poweroffsystemctl 命令

systemd 是一款适用于所有主流 Linux 发行版的全新 init 系统和系统管理器,它是内核启动的第一个进程,并持有序号为1的进程 PID。

推荐阅读:chkservice – 一款终端下系统单元管理工具 | 2daygeek

systemd是一切进程的父进程,Fedora 15 是第一个适配安装 systemd(替代 upstart)的 Linux 发行版。

systemctl是命令行下管理 systemd 守护进程和服务的主要工具。常用命令包括:start、restart、stop、enable、disable、reload和status。

systemd 使用.service文件而不是 SysV init 使用的 bash 脚本。systemd 将所有守护进程归于自身的 Linux cgroups 用户组下,可以浏览/cgroup/systemd文件查看该系统的层次等级。

> systemctl halt > systemctl poweroff > systemctl reboot > systemctl suspend > systemctl hibernate

参考文章

重启和关闭 Linux 系统的 6 个终端命令 | Linux 中国

6 Commands To Shutdown And Reboot The Linux System From Terminal | 2daygeek

查看系统/服务器正常运行时间的 11 个方法 | 2daygeek

Tuptime 一款为 Linux 系统保存历史记录、统计运行时间工具 | 2daygeek

如何检查 Linux 上所有运行的服务 | 2daygeek

chkservice – 一款终端下系统单元管理工具 | 2daygeek



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3