在Linux系统中,可以使用多个命令和服务管理工具来查看服务(也就是进程)的状态、控制它们启动或者重启等操作。常用的几个方法包括:`service`、`systemctl` 和`ps`。
1. Service命令 对于使用传统的基于`init`系统的服务控制,可以使用`service`命令。这个命令主要被旧版本(例如RHEL 6、CentOS 6或更早版本)所使用。然而在新版的系统(如Systemd的使用更为普遍的发行版),这个命令往往只是调用systemd服务来执行动作。
sh
sudo service [servicename] status 查看服务状态
sudo service [servicename] start 启动服务
sudo service [servicename] stop 停止服务
sudo service [servicename] restart 重启服务
2. Systemd命令 (systemctl) 这个命令用于现代的大多数Linux发行版里(Systemd是大多数较新的GNU/Linux系统的缺省system manager) ,能够提供强大的、面向对象的方法来管理系统和服务。以下是一些常用的系统控制命令:
查看服务状态:
sh
sudo systemctl status [servicename].service 如:sudo systemctl status ssh.service
启动服务:
sh
sudo systemctl start [servicename].service
永久启用或禁用某个服务以自动启动:
sh
sudo systemctl enable [servicename].service 开机启动
sudo systemctl disable [servicename].service 禁止启动
控制一个服务(如重新载入配置、重启等等):
`sudo systemctl reloadorrestart [service]`
3. ps命令及类似工具 这些命令主要用于列出当前运行的进程,虽然他们不像上述两种方式那么直接与“服务”关联:
`ps` 或 `top` 或 `htop`: 可以用来检查哪些程序和服务器正在运行以及它们使用的资源量。
总结一下:
`service` 是旧式系统中较为常见的方式,但在新版本的许多GNU / Linux系统中已经被淘汰;
使用 `systemctl` 而非 `service` 在新发行的Linux版本中几乎总能得到更佳的结果,尤其是在需要长期支持时;
直接通过命令行使用 `ps`, `top`, 和 `htop` 是查看特定服务相关后台进程状态的有效工具。
确保你使用正确的方式来控制你正在工作的具体Linux发布版本中的服务,因为这会极大影响到你能够使用的精确命令以及你的配置可能会怎样变化。如果你是在一个新的系统环境下工作,请查阅相应文档确定适合你的方法。
发表评论