it-swarm-ko.tech

시작시 시작되는 서비스를 나열하는 명령?

시작시 실행되는 서비스를 나열하는 명령이 있습니까? /etc/init.d/ 및 다양한 /etc/rc.* 디렉토리를 구문 분석하는 것이 필요하다고 생각합니다.

142
Eric H

initctl list Shell 명령을 사용하여 제안 된 /etc/init 명령 대신 dbus-send의 내용을 나열 할 수 있습니다.

104
Scott

빠른 답변은 init 시스템에 따라 다릅니다.

긴 대답은 다음과 같습니다. 현재 Ubuntu 버전의 경우 pstartSystemV 이 혼합되어있을 것입니다. 15.04 "Vivid Vervet"이후의 최신 버전의 Ubuntu (및 RHEL/CentOS 7과 같은 다른 Linux 배포판)는 SystemD 를 사용하도록 이동하고 있습니다.

건방진 녀석

모든 서비스를 나열하려면

initctl list

모든 Upstart 서비스를 나열하고 initctl show-config를 실행하려면이 단일 라이너가 도움이 될 수 있습니다.

initctl list | awk '{ print $1 }' | xargs -n1 initctl show-config

시스템 V

모든 서비스를 나열하려면

service --status-all

또는:

# for init scripts:
ls /etc/init.d/

# for runlevel symlinks:
ls /etc/rc*.d/

SystemD

모든 서비스를 나열하려면

systemctl list-unit-files --type=service

또는:

ls /lib/systemd/system/*.service /etc/systemd/system/*.service
117
TrinitronX

/etc/init.d/etc/rc.* 디렉토리는 'upstart'init 도구로 대체되었습니다. 이 디렉토리의 스크립트는 예상대로 실행되지만 init에서 실행하는 새로운 방법은 /etc/init/의 파일에 의해 정의됩니다.

Dbus를 통해 upstart를 쿼리하여 모든 upstart 작업을 나열 할 수 있습니다.

dbus-send --print-reply --system --dest=com.ubuntu.Upstart \
        /com/ubuntu/Upstart com.ubuntu.Upstart0_6.GetAllJobs

시작 버전을 반영하기 위해 0_6을 (를) 변경해야 할 수도 있습니다. 이 명령은 lucid 설치에서 작동합니다.

13
Jeremy Kerr

멋진 그래픽 서비스와 시간을 나타내려면 부팅을 시도하십시오.

apt-get install bootchart
12
john

initctl show-config <servicename>을 (를) 사용하여 부팅하는 동안 서비스가 언제 시작되는지에 대한 세부 정보를 얻을 수 있습니다.

이렇게 :

$ initctl show-config myservice
myservice
  start on runlevel [2345]
  stop on runlevel [!2345]

또는 NFS4 idmap-daemon의 경우 :

$ initctl show-config idmapd
idmapd
  start on (local-filesystems or mounting TYPE=nfs4)
  stop on runlevel [06]

chkconfig는 RedHat 기반 시스템 imho에서만 선호됩니다.

11
CBmemnon

12.04에서 다음을 사용할 수 있습니다.

Sudo apt-get install chkconfig
chkconfig --list

그러나 12.10에서 제거됨 였습니다.

샘플 출력 :

acpi-support              0:off  1:off  2:on   3:on   4:on   5:on   6:off
acpid                     0:off  1:off  2:off  3:off  4:off  5:off  6:off
apparmor                  0:off  1:off  2:off  3:off  4:off  5:off  6:off  S:on

Ubuntu 18.04의 경우 다음을 사용하십시오.

systemctl list-units --type=service

대신에 :

initctl

우분투 16.04에서와 같이 initctlsystemd으로 바뀌 었습니다. https://www.linuxtricks.fr/wiki/systemd-les-commandes-essentielles (FR_fr)

(@ sanjay-manohar 도움이된다면)

1
AppyGG

아래의 시스템 서비스 및 스크립트 외에 :

/etc/init.d/
/lib/systemd/system/
/etc/systemd/system/

아마도 AutoStart Applications도있을 것입니다 :

find / -name "*autostart*"

ls -1 "/etc/xdg/autostart" "/home/$USER/.config/autostart" "/usr/share/gdm/autostart"  "/usr/share/gnome/autostart"
0
Noam Manos