부팅을 시작하거나 시작 해야하는 모든 서비스 (/etc/init.d 또는 upstart 또는 systemd) 목록을 얻는 방법을 찾고 있습니다.
모든 시작 서비스 목록을 어떻게 얻습니까? — 나는 그 질문을 알고 있으며 그것을 사용할 것을 제안합니다 service --status-all
.
그러나 그것은 나에게 어떤 서비스가 실행 되고 있는지 보여주지 않습니다 . " status
"인수를 사용하여 모든 초기화 스크립트를 호출합니다 . 실행 가능한 모든 서비스 목록입니다.
그러나 부팅시 시작된 서비스가 여전히 실행 중인지 알고 싶습니다.
예…
webfs가 설치되어 있습니다. 그러나 부팅시 실행되고 싶지 않습니다. 따라서 나는 그것을 비활성화했다 : sudo update-rc.d webfs disable
. 그리고 또한 삼바를 설치했으며 부팅시 실행 중이어야합니다. 그러나 어떤 이유로 든 중지됩니다. sudo service --status-all
여기에 도움이되지 않습니다 :
$ sudo service --status-all 2>/dev/null | grep -E 'samba$|webfs'
[ - ] samba
[ - ] webfs
둘 다 꺼져 있지만 단서가 없습니다. 하나 (삼바)가 켜져 있어야합니다.
그래서…
부팅시 시작되는 모든 서비스 목록을 어떻게 얻을 수 있습니까? 그리고 확장으로 이러한 서비스의 "상태"를 얻는 쉬운 방법이 있습니다 (그렇지 않은 경우이 목록을 반복하여 "service $ service status"또는 이와 유사한 방식으로 실행 함).
고마워, Alexander
2015-05-04 편집 : 나는 우분투 14.04에 있습니다.
이 질문의 주요 초점은 다음과 같습니다.
그러나 부팅시 시작된 서비스가 여전히 실행 중인지 알고 싶습니다.
이 때문에 initctl list
많은 도움 이 되지 않습니다. /etc/init.d
스크립트로 시작된 서비스 (의 시작 스크립트와 비교) 는 실제로 고려하지 않습니다 /etc/init
.
또한 목록이 /etc/rc?.d/S*
도움 이 되지 않습니다. 지정된 런레벨에서 시작된 서비스 목록을 생성합니다. 시작해야했던 서비스가 여전히 실행 중이면 표시되지 않습니다.
기본적으로, svcs -x
우분투 용 솔라리스 와 같은 것을 찾고 있습니다. 을 사용하면 svcs -x
시작된 서비스가 더 이상 실행되지 않는 경우 출력됩니다. 이것도 우분투가 필요합니다.
이유 : Icinga / Nagios 모니터링 시스템에 대한 일반적인 검사를하고 싶습니다. 서비스가 더 이상 실행되고 있지 않으면 실행 중이어야한다는 경고 메시지가 표시됩니다. 다양한 고객을위한 다양한 서버가 있으므로 "중요한"서비스 목록을 정의하도록 확장 할 수는 없습니다.
initctl list
은 시작 / 실행중인 프로세스를 나열하지만 해당 목록에는 수동으로 시작된 프로세스도 포함됩니다.
initctl list
. 그러나 수동으로 시작한 서비스도 표시하므로 실제로 대답하지는 않습니다. 그리고 실행되지 않는 서비스는 표시하지 않습니다.