我不知道服务的名称,但想通过检查其状态来停止服务。
例如,如果我想检查PostgreSQL服务是否正在运行,但我不知道服务的名称,那么我该如何检查它的状态?
如果知道服务名,我知道检查状态的命令。
我不知道服务的名称,但想通过检查其状态来停止服务。
例如,如果我想检查PostgreSQL服务是否正在运行,但我不知道服务的名称,那么我该如何检查它的状态?
如果知道服务名,我知道检查状态的命令。
当前回答
run
Ps -ef | grep名称与进程相关
上面的命令将给出有关进程的所有细节,如pid,开始时间。
如果你想要所有与Java相关的进程,就给Java 或者,如果你有进程名,就写上进程名
其他回答
在linux操作系统中查询某项服务的状态。
//in case of super user(admin) requires
sudo service {service_name} status
// in case of normal user
service {service_name} status
停止或启动服务
// in case of admin requires
sudo service {service_name} start/stop
// in case of normal user
service {service_name} start/stop
获取所有服务和PID的列表:
sudo service --status-all
你可以使用systemctl代替直接调用service:
systemctl status/start/stop {service_name}
我没有Ubuntu的盒子,但在Red Hat Linux上,你可以通过运行以下命令查看所有正在运行的服务:
service --status-all
列表中的“+”表示服务正在运行,“-”表示服务未运行,?表示无法确定服务状态。
最好的方法是在终端中使用nmap工具。 nmap是一个有用的工具,它可以分析一个up系统,使用它的IP地址,然后显示所有激活的网络服务。
打开终端和使用本例:
~$ nmap 192.168.1.3/24
Starting Nmap 5.21 ( http://nmap.org ) at 2016-05-16 22:49 IRDT
Nmap scan report for 192.168.1.3
Host is up (0.00020s latency).
Not shown: 994 closed ports
PORT STATE SERVICE
22/tcp open ssh
23/tcp open telnet
139/tcp open netbios-ssn
445/tcp open microsoft-ds
3389/tcp open ms-term-serv
3689/tcp open rendezvous
如果你运行下面的命令,你会得到一个服务列表:
sudo service --status-all
获取upstart任务列表:
sudo initctl list
Centos 6.10: /sbin/service serviceNAME状态
Centos 7.6和ubuntu 18.04: systemctl状态
对所有人都适用: 服务状况都