Linux正确的关机操作

Linux正确的关机操作

在这里插入图片描述

  • 观察系统的使用状态:
    如果要看目前有谁在在线,可以下达who这个指令,而如果要看网络的联机状态,可以下达netstat -a 这个指令,而要看背景执行的程序可以执行ps -aux`这个指令。使用这些指令可以让你稍微了解主机目前的使用状态!当然啰,就可以让你判断是否可以关机了(这些指令在后面 Linux 常用指令中会提及喔!)
  • 通知在线使用者关机的时刻:
    要关机前总得给在线的使用者一些时间来结束他们的工作,所以,这个时候你可以使用 shutdown的特别指令来达到此一功能。
  • 正确的关机指令使用:
    例如 shutdownreboot 两个指令!
  • 将数据同步写入硬盘中的指令: sync
  • 惯用的关机指令: shutdown
  • 重新启动,关机: reboot, halt, poweroff

若你是使用远程管理工具(如透过 pietty 使用 ssh 服务来从其他计算机登入主机), 那关机就只有 root 有权力而已喔

数据同步写入磁盘命令:sync

在CentOS以及其他Unix和Linux系统中,sync命令用于将内存中缓存的数据(即“脏”数据,尚未写入磁盘的数据)同步到磁盘中。这是一个非常重要的命令,特别是在系统关机、重启或需要确保数据安全存储的情况下。

命令功能

sync命令会强制操作系统将所有挂载的文件系统中的数据缓冲区内容写入相应的块设备。通常情况下,操作系统会把数据先写入缓存以提高性能,但这也意味着在断电或系统崩溃时,缓存中的数据可能会丢失。sync命令通过将这些数据同步到磁盘,减少了这种风险。

  • 性能影响:由于sync命令会强制写入所有缓存数据到磁盘,所以在执行期间可能会导致系统性能暂时下降。特别是在有大量缓存数据的时候,写入操作可能需要耗费一定时间。
  • 频繁使用:尽管sync提高了数据安全性,但频繁使用可能会对系统性能造成影响。一般情况下,操作系统会根据需要自动进行写入操作,因此不需要频繁手动运行sync

总结来说,sync命令是一个确保数据安全和一致性的重要工具,特别是在操作系统关机、重启或拔出可移动存储设备之前,使用它可以有效地防止数据丢失。

shutdown

[root@study ~]shutdown [-krhc] [时间] [警告讯息]
选项与参数:
-k : 不要真的关机,只是发送警告讯息出去!
-r : 在将系统的服务停掉之后就重新启动(常用)
-h : 将系统的服务停掉后,立即关机。 (常用)
-c : 取消已经在进行的 shutdown 指令内容。
时间 : 指定系统关机的时间!时间的范例底下会说明。若没有这个项目,则默认 1 分钟后自动进行。
范例:
命令实例说明
reboot重启
shutdown -r now立即重启 (-r代表重启的意思reboot)
shutdown -r 11:30预订时间重启
shutdown -r +11分钟后重启
halt关机
shutdown -h now立即关机
shutdown -h 11:30预订时间关机
shutdown -h +11分钟后关机
init 0关机
init 6重启

systemctl与关机有关的命令

  • 其实上述关机命令,都是在调用systemctl命令

在CentOS以及其他基于systemd的Linux发行版中,rebootshutdown等传统的关机和重启命令与systemctl命令是密切相关的。systemctl是systemd的主要命令行工具,用于控制systemd系统和服务管理器。systemd统一了系统管理命令,使得管理系统服务、挂载点、设备等更加一致和灵活。

传统命令与systemctl的关系
  1. reboot

    • 传统的 reboot 命令用于重新启动系统。
    • 在使用systemd的系统中,reboot 命令实际上是调用了 systemctl reboot
    reboot
    

    相当于

    systemctl reboot
    
  2. shutdown

    • 传统的 shutdown 命令用于关机或重启系统。它可以接受不同的参数,比如 shutdown -h now 用于立即关机,shutdown -r now 用于立即重启。
    • 在使用systemd的系统中,shutdown 命令实际上是调用了 systemctl poweroffsystemctl reboot
    shutdown -h now
    

    相当于

    systemctl poweroff
    
    shutdown -r now
    

    相当于

    systemctl reboot
    
  3. poweroff

    • 传统的 poweroff 命令用于关闭系统电源。
    • 在使用systemd的系统中,poweroff 命令实际上是调用了 systemctl poweroff
    poweroff
    

    相当于

    systemctl poweroff
    
  4. halt

    • 传统的 halt 命令用于停止所有CPU功能,但不一定关闭电源。
    • 在使用systemd的系统中,halt 命令实际上是调用了 systemctl halt
    halt
    

    相当于

    systemctl halt
    
使用systemctl进行关机和重启

systemctl 提供了一组统一的命令来进行系统管理,包括关机和重启:

  • 重启系统

    systemctl reboot
    
  • 关机并关闭电源

    systemctl poweroff
    
  • 停止所有CPU功能(类似于halt):

    systemctl halt
    
  • 计划关机

    systemctl poweroff --schedule "HH:MM"
    
  • 计划重启

    systemctl reboot --schedule "HH:MM"
    
  • 11
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值