Başlangıçta başlayan hizmetleri listeleme komutu?

119

Başlangıçta çalışan servisleri listelemek için bir komut var mı? Bunun /etc/init.d/ ve çeşitli /etc/rc.* dizinlerini ayrıştırmayı içereceğini düşünün.

    
sordu Eric H 29.07.2010 01:40

7 cevap

102

initctl list shell komutunu, /etc/init komutunun yerine dbus-send içeriğinin listesini listelemek için kullanabilirsiniz.

    
verilen cevap Scott 13.10.2010 04:04
84

Hızlı cevap: init sisteminize bağlıdır.

Uzun cevap şudur: Ubuntu'nun mevcut sürümleri için muhtemelen Upstart ve SystemV . 15.04 "Vivid Vervet" (ve diğer RHEL / CentOS 7 gibi diğer Linux dağıtımları) sonrasında Ubuntu'nun yeni sürümleri SystemD 'yi kullanmak için hareket ediyor .

Sonradan görme

Tüm hizmetleri listelemek için:

initctl list

Tüm Başlatma hizmetlerini listelemek ve bunlara initctl show-config yayınlamak için bu tek linon yararlı olabilir:

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

Sistem V

Tüm hizmetleri listelemek için:

service --status-all

YA:

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

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

systemd

Tüm hizmetleri listelemek için:

systemctl list-unit-files --type=service

YA:

ls /lib/systemd/system/*.service /etc/systemd/system/*.service
    
verilen cevap TrinitronX 27.09.2015 05:49
13

/etc/init.d ve /etc/rc.* dizinleri ' upstart ' başlangıç ​​aracı tarafından yerine getirildi. Bu dizinlerdeki komut dosyaları beklendiği gibi yürütülmesine rağmen, init'te işleri çalıştırmak için yeni yöntem /etc/init/ dosyasındaki dosyalar tarafından tanımlanır

Başlatma işlerinin tümünü, dbus üzerinden yukarı çıkış sorgulayarak listeleyebilirsiniz:

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

Sahip olduğunuz başlangıç ​​sürümünü yansıtacak şekilde 0_6 değerini değiştirmeniz gerekebilir. Bu komut berrak kurulumumda çalışıyor.

    
verilen cevap Jeremy Kerr 29.07.2010 05:30
12

Hizmetlerin ve grafiklerin sunumunun güzel bir grafik sunumunu istiyorsanız, şunları deneyin:

apt-get install bootchart
    
verilen cevap john 13.10.2010 05:39
11

Hizmetinizin açılışta / hizmetin başlatılacağı zamanın ayrıntılarını gerçekten almak için initctl show-config <servicename> kullanın.

Öyle:

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

Veya NFS4 için idmap-daemon:

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

chkconfig yalnızca RedHat tabanlı sistemlerde tercih edilir. imho.

    
verilen cevap CBmemnon 21.07.2014 12:46
8

12.04 tarihinde şunları kullanabiliriz:

sudo apt-get install chkconfig
chkconfig --list

ancak 12.10'da kaldırıldı.

Örnek çıktı:

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
    
-2

Gösterge:

ls -l /etc/rc*.d/* | gawk 'match(
$ ls -l /etc/rc*.d/* | gawk 'match(%pre%, /rc([0-6S]).d.*\/(.*)$/, a) {l[a[2]]=l[a[2]]a[1]","}; END{for(v in l){print v,substr(l[v],1,length(l[v])-1)}}' | egrep README
README 0,1,2,3,4,5,6,S
, /rc([0-6S]).d.*\/(.*)$/, a) {l[a[2]]=l[a[2]]a[1]","}; END{for(v in l){print v,substr(l[v],1,length(l[v])-1)}}'

Örnek çıktı:

%pre%     
verilen cevap Carlos Alvsan 07.01.2017 17:04

Etiketlerdeki diğer soruları oku