在RHEL/Centos/Fedora linux系統里,如何來查看某些特定的服務比如:MySQL 或者Apache是否在運行中呢?
當然你需要使用“service”命令,該命令主要用於管理Linux操作系統中各種服務,它是一個腳本命令,會調用/etc/init.d/下面的各種服務啟動程序。
service SERVER status
OR
/etc/init.d/SERVER status
示例:
在Centos 或RHEL下,查看一個名為mysqld(MySQL server)的是否處於運行狀態。
|
1
|
# service mysqld status
|
示例輸出結果:
|
1
|
mysqld (pid 4324) is running...
|
查看所有服務的狀態
命令service –status-all 將會運行所有的啟動腳本來顯示各個服務的運行狀態:
|
1
|
#service --status-all
|
輸出為:
|
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
[root@osetc ~]# service --status-all
Aegis is running auditd is stopped crond (pid 938) is running... ip6tables: Firewall is not running. iptables: Firewall is not running. ERROR! MySQL is running but PID file could not be found netconsole module not loaded Configured devices: lo eth0 eth1 Currently active devices: lo eth0 eth1 ntpd (pid 930) is running... Usage: /etc/init.d/php-fpm {start|stop|quit|restart|reload|logrotate} master is stopped rdisc is stopped rsyslogd (pid 883) is running... sandbox is stopped saslauthd is stopped openssh-daemon (pid 13367) is running... vsftpd (pid 31721) is running... |
ps 和pgrep命令
你也可以執行ps或者pgrep 命令來查看服務的狀態
|
1
2 3 4 5 6 |
#ps aux | grep 'SERVER'
#ps aux | grep 'mysqld' #pgrep 'SERVER' #pgrep -u username 'SERVER' ##查看某個用戶的服務狀態 #pgrep mysqld |
啟動服務:
如果Apache服務器的服務httpd沒有啟動,那我們如何來啟動呢:
|
1
2 3 |
#service httpd status
#chkconfig httpd on #service httpd start |
