插件窝 干货文章 如何在Linux服务器上进行关机和重启操作

如何在Linux服务器上进行关机和重启操作

关机 重启 sudo shutdown 107    来源:    2025-05-11

在Linux服务器上进行关机和重启操作需要谨慎执行,以下是详细方法和注意事项:


一、关机操作

1. 立即关机

sudo shutdown -h now
# 或
sudo poweroff
# 或(需root权限)
sudo init 0

2. 定时关机(例如10分钟后关机)

sudo shutdown -h +10  # 10分钟后关机

3. 指定时间关机(例如23:00关机)

sudo shutdown -h 23:00

二、重启操作

1. 立即重启

sudo shutdown -r now
# 或
sudo reboot
# 或(需root权限)
sudo init 6

2. 定时重启(例如5分钟后重启)

sudo shutdown -r +5

三、关键注意事项

  1. 权限要求

    • 普通用户需通过sudo提权(需在/etc/sudoers中配置)。
    • 直接root用户可省略sudo
  2. 取消已计划的关机/重启

    sudo shutdown -c
    
  3. 强制操作(不推荐)

    • -f 参数(如 reboot -f)会跳过正常服务关闭流程,可能导致数据损坏。
  4. 远程操作建议

    • 通过SSH执行时,建议使用nohuptmux防止会话中断导致命令终止: bash nohup sudo shutdown -r now &
  5. 日志记录

    • 关机/重启记录会写入/var/log/messagesjournalctl(Systemd系统)。

四、不同初始化系统的命令

操作 Systemd (现代发行版) SysVinit (旧版)
关机 systemctl poweroff init 0
重启 systemctl reboot init 6
待机 systemctl suspend pm-suspend

五、最佳实践

  1. 提前通知用户

    sudo shutdown -h +5 "服务器将于5分钟后维护关机"
    
    • 所有登录用户会收到广播消息。
  2. 确认无活跃任务

    • 使用wwho查看登录用户。
    • 使用ps aux检查关键进程。
  3. 生产环境建议

    • 通过Ansible/SaltStack等工具批量管理多台服务器。
    • 在负载均衡场景中,先下线节点再重启。

通过以上方法,您可以安全地管理Linux服务器的关机和重启操作。务必确保操作前已保存所有数据!