在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. C BIN加密

    #include <stdio.h> #include <string.h> #include <stdlib.h> #ifndef DWORD #define D ...

  2. Javamail使用代码整理

    package com.hengrun.mail; import java.io.*; import java.security.Security; import java.text.SimpleDa ...

  3. [转][Dapper]SQL 经验集

    condition.Append(" AND ChineseName like @name"); p.Add("@name", "%" + ...

  4. 【转】httpservlet 文章

    HttpServlet类 ellisonDon 2012-10-25 12:42 阅读:2015 评论:0     HttpServlet的功能 ellisonDon 2012-10-25 11:02 ...

  5. 20181123_控制反转(IOC)和依赖注入(DI)

    一.   控制反转和依赖注入: 控制反转的前提, 是依赖倒置原则, 系统架构时,高层模块不应该依赖于低层模块,二者通过抽象来依赖 (依赖抽象,而不是细节) 如果要想做到控制反转(IOC), 就必须要使 ...

  6. Express详解

    express() 创建一个express应用程序 var express = require('express'); var app = express(); app.get('/', functi ...

  7. pythonNetday06

    进程 Process(target,name,args,kwargs) p.pid : 创建的新的进程的PID号 p.is_alive() 判断进程是否处于alive状态 p.daemon = Tru ...

  8. jdbc练习demo

    //连接云端服务器数据库工具类 public class TestJDBCUtil { public static String driver="com.mysql.jdbc.Driver& ...

  9. 6_python之路之atm购物

    6_python之路之atm购物 1.程序说明:Readme.cmd supermarket 项目主目录 ├── access.log 日志文件 ├── atm atm程序 │?? ├── atm.p ...

  10. VueRouter

    使用VueRouter的前提: 1, 必须导入vue-router.js文件    2, 要有VueRouter()实例    3, 要把VueRouter实例挂载到Vue实例中 4, 路由的入口   ...