在Linux系统中,仅仅是关机和重启相关的命令就至少有5个,shutdown、 halt、poweroff、reboot、init。各个命令作用如下所示:

命令 说明
shutdown 可用于关机、重启。支持定时和通知
halt 停止系统
poweroff 关机
reboot 重启系统
init init 0:关机,init 6:重启

shutdown

常用用法如下所示:

shutdown [选项] 时间 [消息]

其常用选项如下所示

选项 说明
-r 将系统停止后重启
-h 在系统停止后关机
-c 取消关机
-k 发送警告消息并禁止登录。关不是真正要关机
-P 将系统停止后并关闭电源

halt

常用用法如下所示:

halt [选项]

其常用选项如下所示

选项 说明
-f, --force 强制执行halt或reboot,而不调用shutdown
-p, --poweroff 等同于poweroff
-w, --wtmp-only 仅将关机记录写入/var/log/wtmp文件中,而不真正进行关机或重启
-d, --no-wtmp 不将关机记录写入wtmp文件中

poweroff

常用用法如下所示:

poweroff [选项]

其常用选项如下所示

选项 说明
-p, --poweroff 关闭机器
--reboot 重启系统
-f, --force 强制关闭机器
-w, --wtmp-only 仅将关机记录写入wtmp文件中,而不进行关机或重启
-d, --no-wtmp 不将关机记录写入wtmp文件中

reboot

常用用法如下所示:

reboot [选项]

其常用选项如下所示

选项 说明
-p, --poweroff 关闭机器
--reboot 重启机器
-f, --force 强制重启机器
-w, --wtmp-only 仅将重启记录写入wtmp文件中,而不进行关机或重启
-d, --no-wtmp 不将重启记录写入wtmp文件中

init

常用用法如下所示:

reboot [选项] [命令]

其常用选项如下所示

选项 说明
--help 显示帮助信息
--no-wall 在关机和重启前不发送信息

常用命令如下所示:

命令 说明
0 关闭机器
6 重启机器

用法示例

# 立即关机
[root@localhost system]# shutdown -h now
# 立即重启
[root@localhost system]# shutdown -r now
# 在指定时间重启
[root@localhost system]# shutdown -r 19:30
# 在3分钟后关机
[root@localhost system]# shutdown -h +3
# 关机并关闭电源
[root@localhost system]# halt -p
# 关机但不写记录
[root@localhost system]# halt -d
# 测试关机
[root@localhost system]# halt -w
# 重启系统
[root@localhost system]# reboot
# 关机并关闭电源
[root@localhost system]# poweroff
# 重启
[root@localhost system]# init 6
# 关机
[root@localhost system]# init 0

在以上命令,使用man查看帮助时,会发现halt、poweroff、reboot是一样的,其他三个命令就是一个程序,如下所示:

关机和重启总结

  • shutdown -r 用来重启,等同于reboot
  • shutdown -h -P 用来关闭系统和关闭电源,等同于poweroff
  • poweroff 等同于halt -p
  • shutdown -h 用来关闭系统,但不关闭电源,等同于halt
  • shutdown与reboot/halt的主要区别在于shutdown会给登录系统的用户发送关机或重启的通知消息
  • shutdown -k 仅用于测试关机
  • init依赖于本机init系统,通过情况下,关机的运行级别为0,重启为6

本文同步在微信订阅号上发布,如各位小伙伴们喜欢我的文章,也可以关注我的微信订阅号:woaitest,或扫描下面的二维码添加关注:

Linux 基础教程 41-系统关机和重启的更多相关文章

  1. 『学了就忘』Linux基础命令 — 29、关机和重启

    目录 1.sync数据同步 2.shutdown命令 3.reboot命令 4.halt和poweroff命令 5.init命令 1.sync数据同步 sync命令的基本信息如下: 命令名称:sync ...

  2. 嵌入式LINUX基础教程 第2版

    嵌入式LINUX基础教程  第2版 目录 第1章 入门 11.1 为什么选择Linux 11.2 嵌入式Linux现状 21.3 开源和GPL 21.4 标准及相关组织 31.4.1 Linux标准基 ...

  3. C#实现控制Windows系统关机、重启和注销的方法

    shutdown命令的参数: shutdown.exe -s:关机shutdown.exe -r:关机并重启shutdown.exe -l:注销当前用户 shutdown.exe -s -t 时间:设 ...

  4. Android系统关机或重启的几种实现方式

    前阵子工作上遇到一些关于Android系统关机或重启的系统修改,于是,做了一些尝试,也搜集了一下资料,现在整理一下,做一些总结,方便学习或者日后工作的需要. 默认的SDK并没有提供应用开发者直接的An ...

  5. C#实现控制Windows系统关机、重启和注销的方法:

    shutdown命令的参数: shutdown.exe -s:关机shutdown.exe -r:关机并重启shutdown.exe -l:注销当前用户 shutdown.exe -s -t 时间:设 ...

  6. Linux基础二(挂载、关机重启与系统等级)

    一.Linux 基础之挂载 1. 挂载和查询 1.1 挂载 什么叫挂载?装系统的时候要给硬盘分区,在 Windows 中要分 C 盘 D 盘 DEF 盘,这个操作我们叫做分配盘符,分配盘符之后我们就可 ...

  7. 【Linux 运维】linux系统关机、重启、注销命令

    linux 关机.重启.注销命令: 关机命令: shutdown -h now 立刻关机(生产常用) shutdown -h  +1  一分钟后关机      (    shutdown -c 可以将 ...

  8. Linux基础教程

    Linux基础教程之<Linux就该这么学>之学习笔记第一篇... ========================= 一.Basic Linux Commands    基本的Linux ...

  9. [SQL基础教程] 4-1 数据的插入(INSERT)

    [SQL基础教程] C4 数据更新 4-1 数据的插入(INSERT) INSERT INSERT INTO <表名>(列1,列2...) VALUES(值1,值2...); 清单 用() ...

随机推荐

  1. 查询反模式 - GroupBy和HAVING的理解

    为了最简单地说明问题,我特地设计了一张这样的表. 一.GROUP BY单值规则 规则1:单值规则,跟在SELECT后面的列表,对于每个分组来说,必须返回且仅仅返回一个值. 典型的表现就是跟在SELEC ...

  2. vue项目修改favicon

    首先你的在你的static文件中添加favicon.icon 然后通过以下方式进行修改 1)方式一:修改index.html文件 <link rel="shortcut icon&qu ...

  3. ORA-01652: 无法通过 128 (在表空间 TEMP 中) 扩展 temp 段(EXP-00056: 遇到 ORACLE 错误 1652 ORA-01652: unable to extend temp segment by 128 in tablespace TEMP)

    数据库报 ORA-01652: 无法通过 128 (在表空间 TEMP 中) 扩展 temp 段 两种解决方式: 第一种) sql>select * from v$tempfile; 发现tem ...

  4. 使用用WCF中的双工(Duplex)模式将广告图片推送到每个Winform客户端机子上

    参考资料地址:http://www.cnblogs.com/server126/archive/2011/08/11/2134942.html 代码实现: WCF宿主(服务端) IServices.c ...

  5. QT win 安装配置

    QT windows 版安装配置 安装包:链接:https://pan.baidu.com/s/1LCj2V3xQ1wB9_7zmE5tV6Q 密码:bn9r 首先安装QT Creator 双击安装文 ...

  6. charles2 重写

    重写 重写功能可以重写对应的内容,主要对某些匹配请求的header.host.URL.path.query param.body.response等参数删除.修改.增加. 和断点相比,适合做长期和批量 ...

  7. springboot中对yaml文件的解析

    一.YAML是“YAML不是一种标记语言”的外语缩写 (见前方参考资料原文内容):但为了强调这种语言以数据做为中心,而不是以置标语言为重点,而用返璞词重新命名.它是一种直观的能够被电脑识别的数据序列化 ...

  8. jQuery layer弹出层插件 http://layer.layui.com/直接上官网学

    在许多网站中,经常用到弹出层,有时候为了达到更好的用户体验,你将写繁琐的css跟js,这款 jquery-layer可以让你想到即可做到的web弹窗/层js组件.layer侧重于用户灵活的自定义,为不 ...

  9. jQuery ajax 当async为false时解决同步操作失败的问题

    jQuery的ajax,当async为false时,同步操作失败.解决方案,jqueryasync 最近做项目遇到jQuery的ajax,当async为false时,同步操作失败的问题,上网搜索下,得 ...

  10. django-连接mysql失败

    如果你的数据库连接报错,缺少组件,可以安装以下的包 安装依赖(如果使用虚拟环境,需要在虚拟环境下安装) 安装mysql开发依赖包   sudo apt-get install libmysqlclie ...