Я не знаю имя службы, но хотел бы остановить службу, проверив ее статус. Например, если я хочу проверить, работает ли служба PostgreSQL, но я не знаю имя службы, то как я могу проверить ее статус
Я знаю команду для проверки состояния, если известно имя службы.
У меня нет окна Ubuntu, но на Red Hat Linux вы можете увидеть все запущенные службы, выполнив следующую команду:
service --status-all
В списке +
указано, что служба запущена, -
указывает, что служба не запущена, ?
указывает, что состояние службы не может быть определено.
Для Ubuntu (проверено с 12.04)
Вы можете получить список всех сервисов и выбрать по цвету один из них с помощью команды grep:
sudo service --status-all | grep postgres
Или вы можете использовать другой способ, если знаете правильное имя службы:
sudo service postgresql status
Возможно, вам нужна команда ps;
ps -ef
покажет вам все запущенные процессы. Тогда, если у вас есть представление о том, что вы ищете, используйте grep для фильтрации;
ps -ef | grep postgres
Если вы выполните следующую команду, вы получите список услуг:
sudo service --status-all
Чтобы получить список старших заданий, выполните следующую команду:
sudo initctl list
Вы можете использовать следующую команду, чтобы проверить список всех служб.
ps aux
Чтобы проверить свой сервис:
ps aux | grep postgres
Существует простой способ проверить, работает ли служба
systemctl status service_name
Try:
systemctl status postgres
наилучшим способом является использование инструмента 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
Грязный способ поиска запущенных сервисов. (иногда это не точно, потому что некоторые пользовательские script не имеют параметра | 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...