web-dev-qa-db-ja.com

特定のサービスがUbuntuで実行されているかどうかを確認

サービスの名前はわかりませんが、サービスの状態を確認してサービスを停止します。たとえば、 PostgreSQL サービスが実行されているかどうかを確認したいが、サービスの名前がわからない場合は、どのようにしてそのステータスを確認できますか?

サービス名がわかっていれば、状況を確認するコマンドがわかります。

232
abcd

私はUbuntuボックスを持っていませんが、 Red Hat Linux 上で次のコマンドを実行することで全ての実行中のサービスを見ることができます。

service --status-all

リストの+はサービスが実行されていることを示し、-はサービスが実行されていないことを示し、?はサービスの状態を判別できないことを示します。

408
Radu

Ubuntuの場合(12.04でチェック済み)

あなたはすべてのサービスのリストを取得し、 'grep'でそれらのうちの一つを色で選択することができます。

Sudo service --status-all | grep postgres

あるいは、正しいサービス名を知っていれば、他の方法を使うこともできます。

Sudo service postgresql status
69
zhecsan

多分あなたが欲しいのはpsコマンドです。

ps -ef

実行中のすべてのプロセスを表示します。それで、あなたが探しているものがわかったら、grepを使ってフィルタリングしましょう。

ps -ef | grep postgres
36
Mike Makuch

次のコマンドを実行すると、サービスの一覧が表示されます。

Sudo service --status-all

起動ジョブのリストを取得するには、次のコマンドを実行します。

Sudo initctl list
22
linuxnewbee

サービスが実行されているかどうかを確認する簡単な方法があります

systemctl status service_name

試してください:

systemctl status postgres
10
Angel

下記のコマンドを使用すると、すべてのサービスのリストを確認できます。

ps aux 

自分のサービスを確認するには:

ps aux | grep postgres
6
Amey Jadiye

最良の方法は端末でnmapツールを使うことです。 nmapは稼働中のシステムをIP Addressを使って分析し、それからすべてのアクティブネットワークをservicesと表示する便利なツールです。

terminalを開いてこの例を使用する:

~$ 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
2
BattleTested

走る

ps -ef | grep プロセス関連名

上記のコマンドはpidのようなすべての詳細を与え、プロセスについての開始時間です。

あなたがすべてのJava実現プロセスがJavaを与えたいか、あなたがプロセスの名前を持っているかのような名前のように

2
Inder malviya

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

Serviceを直接呼び出す代わりにsystemctlを使用できます:

systemctl status/start/stop {service_name}
0
YAP

実行中のサービスを見つけるための汚れた方法。 (場合によっては、一部のカスタムスクリプトに| status |オプションがないため正確ではありません)

[root@server ~]# for qw in `ls /etc/init.d/*`; do  $qw status | grep -i running; done
auditd (pid  1089) is running...
crond (pid  1296) is running...
fail2ban-server (pid  1309) is running...
httpd (pid  7895) is running...
messagebus (pid  1145) is running...
mysqld (pid  1994) is running...
master (pid  1272) is running...
radiusd (pid  1712) is running...
redis-server (pid  1133) is running...
rsyslogd (pid  1109) is running...
openssh-daemon (pid  7040) is running...
0
Satish

Centosでは、下記のコマンドが私のために働きました(:

locate postgres | grep service

出力:

/usr/lib/firewalld/services/postgresql.xml

/ usr/lib/systemd/system / postgresql-9.3.service

Sudo systemctl status postgresql-9.3.service
0
Walk