插件窝 干货文章 Linux 中如何使用命令重新启动服务?

Linux 中如何使用命令重新启动服务?

服务 systemctl sudo 系统 180    来源:    2025-04-08

在 Linux 系统中,重新启动服务的方法取决于系统使用的初始化系统(init system)。以下是主流初始化系统的操作方法:


1. systemd(现代主流系统:RHEL 7+/Ubuntu 16+/Debian 8+)

# 重启单个服务
sudo systemctl restart <服务名>

# 示例:重启 Nginx
sudo systemctl restart nginx

其他常用操作:

# 查看服务状态
sudo systemctl status <服务名>

# 停止服务
sudo systemctl stop <服务名>

# 启动服务
sudo systemctl start <服务名>

# 设置开机自启
sudo systemctl enable <服务名>

2. SysV Init(旧版系统:RHEL 6/CentOS 6 等)

# 使用 service 命令
sudo service <服务名> restart

# 或直接调用 init 脚本
sudo /etc/init.d/<服务名> restart

# 示例:重启 Apache
sudo service httpd restart

3. 其他情况

  • Upstart(Ubuntu 14.04 等过渡系统): bash sudo restart <服务名>

注意事项:

  1. 服务名确认

    • 通过 systemctl list-unit-files --type=service(systemd)或 service --status-all(SysV)查看所有服务。
    • 部分服务名称可能因发行版不同(如 httpd vs apache2)。
  2. 权限要求:需使用 sudo 或 root 用户执行。

  3. 错误排查

    • 若服务重启失败,检查日志: bash journalctl -u <服务名> # systemd tail /var/log/<服务日志> # 通用
  4. 依赖服务:某些服务(如网络相关)重启可能导致依赖服务中断,需谨慎操作。


根据你的系统版本选择对应命令即可。现代 Linux 发行版推荐优先使用 systemctl 命令。