千家信息网

关于重启和关闭 Linux 系统的6个你不得不懂的指令

发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,Linux管理员的日程当中,有很多需要执行的任务,其中就有系统的重启和关闭。对于 Linux 管理员来说,重启和关闭系统是其诸多风险操作中的一例,有时候,由于某些原因,这些操作可能无法挽回,他们需要更
千家信息网最后更新 2025年01月31日关于重启和关闭 Linux 系统的6个你不得不懂的指令

Linux管理员的日程当中,有很多需要执行的任务,其中就有系统的重启和关闭。

对于 Linux 管理员来说,重启和关闭系统是其诸多风险操作中的一例,有时候,由于某些原因,这些操作可能无法挽回,他们需要更多的时间来排查问题。

在 Linux 命令行模式下我们可以执行这些任务。很多时候,由于熟悉命令行,Linux 管理员更倾向于在命令行下完成这些任务。

重启和关闭系统的 Linux 命令并不多,用户需要根据需要,选择合适的命令来完成任务。

以下所有命令都有其自身特点,并允许被 Linux 管理员使用.

系统重启和关闭之始,会通知所有已登录的用户和进程。当然,如果使用了时间参数,系统将拒绝新的用户登入。

执行此类操作之前,我建议您坚持复查,因为您只能得到很少的提示来确保这一切顺利。

下面陈列了一些步骤:

确保您拥有一个可以处理故障的控制台,以防之后可能会发生的问题。 VMWare 可以访问虚拟机,而 IPMI、iLO 和 iDRAC 可以访问物理服务器。

您需要通过公司的流程,申请修改或故障的执行权直到得到许可。

为安全着想,备份重要的配置文件,并保存到其他服务器上.

验证日志文件(提前检查)

和相关团队交流,比如数据库管理团队,应用团队等。

通知数据库和应用服务人员关闭服务,并得到确定答复。

使用适当的命令复盘操作,验证工作。

最后,重启系统。

验证日志文件,如果一切顺利,执行下一步操作,如果发现任何问题,对症排查。

无论是回退版本还是运行程序,通知相关团队提出申请。

对操作做适当守候,并将预期的一切正常的反馈给团队

使用下列命令执行这项任务。

shutdown、halt、poweroff、reboot 命令:用来停机、重启或切断电源

init 命令:是"initialization" 的简称,是系统启动的第一个进程。

systemctl 命令:systemd是 Linux 系统和服务器的管理程序。

方案 1:如何使用 shutdown 命令关闭和重启 Linux 系统

shutdown 命令用于断电或重启本地和远程的 Linux 机器。它为高效完成作业提供多个选项。如果使用了时间参数,系统关闭的 5 分钟之前,会创建 /run/nologin 文件,以确保后续的登录会被拒绝。

通用语法如下:

shutdown [OPTION] [TIME] [MESSAGE]

运行下面的命令来立即关闭 Linux 机器。它会立刻杀死所有进程,并关闭系统。

shutdown -h now

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

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

shutdown --halt now

或者

shutdown -H now

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

另外我们可以使用带有 poweroff 选项的 shutdown 命令来立即关闭设备。

shutdown --poweroff now

或者

shutdown -P now

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

如果您没有使用时间选项运行下面的命令,它将会给出如下结果。

shutdown -h

Usage: shutdown [-akrhPHfFnc] [-t sec] time [warning message]

              -a:      use /etc/shutdown.allow              -k:      don't really shutdown, only warn.              -r:      reboot after shutdown.              -h:      halt after shutdown.              -P:      halt action is to turn off power.              -H:      halt action is to just halt.              -f:      do a 'fast' reboot (skip fsck).              -F:      Force fsck on reboot.              -n:      do not go through "init" but godown real fast.              -c:      cancel a running shutdown.              -t secs: delay betweenwarning and kill signal.              ** the "time"argument is mandatory! (try "now") **

添加时间参数,如果你想在 N 秒之后执行关闭或重启操作。这里,您可以为所有登录用户添加自定义广播消息。例如,我们将在五分钟后重启设备。

root@imx6qdlsolo:~# shutdown -r +5 "To activate the latestKernel"

Broadcast message from root@imx6qdlsolo(ttymxc0) (Fri Jun 30 11:51:34 2000):To

activate the latest Kernel

The system is going DOWN for reboot in 5minutes!

运行下面的命令立即重启 Linux 机器。它会立即杀死所有进程并且重新启动系统。

shutdown -r now

-r, --reboot: 重启设备。

方案 2:如何通过 reboot 命令关闭和重启 Linux 系统

reboot 命令用于关闭和重启本地或远程设备。reboot 命令拥有两个实用的选项。

它能够优雅的关闭和重启设备(就好像在系统菜单中惦记重启选项一样简单)。

执行不带任何参数的 reboot 命令来重启 Linux 机器。

reboot

执行带 -p 参数的 reboot 命令来关闭 Linux 机器电源。

reboot -p

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

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

reboot -f

-f, --force:立刻强制中断,切断电源或重启。

方案 3:如何通过 init 命令关闭和重启 Linux 系统

init("initialization"的简写)是系统启动的第一个进程。

它将会检查 /etc/inittab 文件并决定 linux 运行级别。同时,允许用户在 Linux 设备上执行关机或重启操作. 这里存在从 0 到 6 的七个运行等级。

建议阅读:

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

执行以下 init 命令关闭系统。

init 0

0: 停机 - 关闭系统。

运行下面的 init 命令重启设备:

init 6

6:重启 - 重启设备。

方案 4:如何通过 halt 命令关闭和重启 Linux 系统

halt 命令用来切断电源或关闭远程Linux 机器或本地主机。 中断所有进程并关闭 cpu。

halt

方案 5:如何通过 poweroff 命令关闭和重启 Linux 系统

poweroff 命令用来切断电源或关闭远程 Linux 机器或本地主机。 poweroff 很像 halt,但是它可以关闭设备硬件(灯和其他 PC 上的其它东西)。它会给主板发送 ACPI 指令,然后信号发送到电源,切断电源。

poweroff

方案 6:如何通过 systemctl命令关闭和重启 Linux 系统

systemd 是一款适用于所有主流Linux 发型版的全新 init 系统和系统管理器,而不是传统的 SysV init 系统。

systemd 兼容与 SysV 和 LSB 初始化脚本。它能够替代 SysV init 系统。systemd 是内核启动的第一个进程,并持有序号为 1 的进程 PID。
我是以电鱼电子的开发板为例实现上述步骤的,感兴趣的小伙伴可以看一下,获得更详细的信息。
www.dianyu.net

命令 系统 设备 电源 运行 机器 进程 管理 参数 方案 服务 任务 团队 文件 时间 用户 管理员 面的 服务器 问题 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 rpc服务器打印机错误 南通网络技术口碑推荐 象山安卓软件开发外包 烟台市兴凯网络技术有限责任公司 重庆丽满网络技术有限公司 服务器错误504 三级数据库技术是无纸化考试吗 drools7 数据库 昆山软件开发测试工程师招 江岸哪里有软件开发企业 往数据库传日期 联想软件开发2019 软件开发过度设计 网络安全与中国特色社会主义 学习软件开发需要记住的英语单词 谈谈中国5g网络技术作文 盘锦网络安全渗透工程师培训 代理web服务器的 软件开发流程的输出文档 华科计算机网络安全怎么样 江西三套网络安全知识回放 诚信网络技术开发原则 数据库应用系统的设计代码 济南博赛网络技术有限公司 董良 数据库搭建多少台集群 断言是数据库系统采用的 计算机数据库三级真题汇总 银行项目一般来说用什么数据库 合肥win10ftp服务器托管 分布式数据库架构企业实践
0