0
点赞
收藏
分享

微信扫一扫

Linux系统的关机、重启、睡眠(shutdown、reboot、halt、poweroff)


  • 前言:

  • 1.在DOS年代,当你需要关闭计算机的时候,可能直接拔掉电源就可以。使用Windows系统的时候,长按住关机键就可以强制关机。
  • 2.因为Windows(非NT内核)系统中,由于是单人假多任务的情况,即使你关闭了计算机,对其他人也不产生影响
  • 3.但是Linux中,每个程序都是在后台执行。在背后,可能有很多人同时在你的主机上面工作(浏览网页、FTP传输文件等...),如果你直接关机,可能会造成意想不到的后果
  • 4.因此,在Linux下面关机、重启、睡眠等都是非常需要注意的
  • 5.下面的命令最好都以管理员(root)的身份进行

一、关机、重启前的准备


  • 查看网络联机状态、后台可执行程序:

  • 查看网络联机状态:netstat  -a
  • 查看后台执行的程序:ps  -aux

  • 查看一下这两样东西,可以让你稍微了解主机目前的使用状态

数据同步写入磁盘:sync


  • 引入:

  • 在计算机导论中曾提到过,我们的数据需要写入内存才能够被CPU处理。内存中的数据保存和读取时需要与硬盘进行沟通,但是硬盘和内存之间的读取速度会影响运行速度,因此有部分数据不会被直接读取到硬盘中,而是临时保存在内存中,到后面需要时,一次性读取到硬盘。
  • 此时,如果你不小心造成非正常关机,导致内存中的部分数据还没有来得及读取到硬盘中,就会造成数据的丢失。后果不堪设想

  • sync命令:
  • sync命令的作用就是将内存中尚未更新到硬盘中的数据写入到硬盘,这个命令在关机或重启前多执行几次,比较好
  • 目前的系统中,shutdown、reboot、halt等命令中都已经包含了sync这个程序的调用。不过,多了解一下还是比较好的
  • 使用:

  • 建议以管理员的身份进行命令执行(原因:一般用户身边更新到硬盘中的数据只有自己部分的数据,管理员的身份可以更新整个系统的数据)
  • 将身份变为管理员:su -
  • 数据同步到硬盘:sync


Linux系统的关机、重启、睡眠(shutdown、reboot、halt、poweroff)_systemctl

Linux系统的关机、重启、睡眠(shutdown、reboot、halt、poweroff)_睡眠_02

二、关机(shutdown)

  • 介绍:​若你在物理终端登录系统时,不论什么身份都能够执行关机操作。但是如果你使用远程管理工具(如通过pietty使用ssh服务来从其他计算机登录主机)就只有root的身份才可以进行关机

命令格式


  • 基本格式:​/sbin/shutdown  [选项]  [时间]  [警告信息]
  • 参数:

-k

不是真的要关机,只是发出警告而已

-r

将系统的服务听到之后就重新启动

-h

将系统的服务停掉后,立即关机

-c

取消已经在进行的shutdown命令

  • 时间:

默认时间

若时间缺省,默认在1分钟之后关机

now

立即执行

自定义时间

例如:20:25(在20:25进行关机,如果当前时间超过了20:25,则隔天关机)

+时间

例如:+30(在30分钟之后关机)


  • 警告信息:​关机时发出一些提示信息
  • 演示案例:

  • 立刻关机:shutdown  -h  now
  • 系统将在20:25关机:shutdown  -h  20:25
  • 系统立刻重启:shutdown  -r  now
  • 提示系统将在30分钟会后重启:shutdown  -r  +30   'The system  will  reboot'
  • 仅发出警告,但不是真的关机:shutdown  -k  now   'The system  will  reboot'


三、重启和其他关机(reboot、halt、poweroff)


  • 还有三个命令和关机重启有关:

  • reboot:​重启
  • poweroff:​系统关机
  • halt:​系统停止,屏幕可能会保留系统已经停止的信息
  • 这三个命令其实都差不多,根据自身情况与爱好选择使用

  • 代码演示:

  • 重启:sync; sync; sync; reboot
  • 系统停止:halt
  • 系统关机:poweroff


四、systemctl


  • 介绍:​目前系统中所有服务的管理的命令是:systemctl。这个命令相当复杂,在后面会详细介绍
  • 我们前面所谈到的shutdown、reboot、poweroff、halt等其实都是调用systemctl这个命令
  • 命令格式:

system  [命令]

  • [命令]包括以下内容:​只介绍与本片文章有关的命令

  • halt:进入系统停止的模式,屏幕可能会保留一些信息(这与你的电源管理模式有关)
  • poweroff:进入系统关机模式,直接关机
  • reboot:直接重新启动
  • suspend:进入休眠模式

  • 例如:

  • 系统重新启动:systemctl  reboot
  • 系统直接关机:systemctl  poweroff


  • 我是小董,V公众点击"笔记白嫖"解锁更多【Linux入门基础】资料内容。

Linux系统的关机、重启、睡眠(shutdown、reboot、halt、poweroff)_重启_03


举报

相关推荐

0 条评论