Ben önyükleme başlaması (veya başlatılmış) olması gereken tüm hizmetlerin (/etc/init.d veya upstart veya systemd) bir listesini almak için bir yol arıyorum.
Tüm başlangıç hizmetlerinin bir listesini nasıl alırsınız? - Bu soruyu biliyorum ve kullanmayı önerir service --status-all
.
Ama bu bana hangi servislerin ÇALIŞTIRILMASI gerektiğini gösteriyor . Tüm init betiklerini " status
" argümanıyla çağırır . Bu, çalıştırılabilecek tüm hizmetlerin bir listesidir.
Ancak, önyüklemede başlatılan bir hizmetin hala çalışıp çalışmadığını bilmek istiyorum.
Misal…
Yüklü webfs var. Ama önyüklemede çalışmasını istemiyorum. Böylece onu devre dışı: sudo update-rc.d webfs disable
. Ayrıca samba yükledim ve önyüklemede çalışıyor olmalı. Ancak durdurulur (herhangi bir nedenle). sudo service --status-all
burada bana yardım etmiyor:
$ sudo service --status-all 2>/dev/null | grep -E 'samba$|webfs'
[ - ] samba
[ - ] webfs
Her ikisi de kapalı ama hiçbir fikrim yok, bir (samba) açık olması gerekiyordu.
Yani…
Açılışta başlayan tüm hizmetlerin bir listesini nasıl alabilirim? Ve bir uzantı olarak, bu hizmetlerin "durumunu" almanın kolay bir yolu var mı (eğer değilse, ben sadece bu liste üzerinde döngü ve "hizmet $ hizmet durumu" ya da bunun gibi bir şey çalıştıracağım).
Teşekkürler, Alexander
Edit 2015-05-04: Ubuntu 14.04'deyim .
Bu sorunun ana odağı şudur:
Ancak, önyüklemede başlatılan bir hizmetin hala çalışıp çalışmadığını bilmek istiyorum.
Bu nedenle, initctl list
pek yardımcı olmuyor. /etc/init.d
Komut dosyaları tarafından başlatılan hizmetleri (başlangıçtaki komut dosyaları ile karşılaştırıldığında /etc/init
) gerçekten dikkate almaz .
Ayrıca bir listesi /etc/rc?.d/S*
yardımcı olmaz. Belirli bir çalışma seviyesinde başlatılmış olabilecek hizmetlerin bir listesini oluşturur. Başlamam gereken bir hizmet hala çalışıyorsa bana göstermiyor.
Temel olarak, svcs -x
Ubuntu için Solaris gibi bir şey arıyorum . İle svcs -x
, başlatılan bir hizmet artık çalışmıyorsa çıktı alırım. Bu, Ubuntu'ya da ihtiyacım var.
Sebep: Icinga / Nagios izleme sistemimiz için (daha fazla veya daha az ...) genel bir kontrol yaptırmak istiyorum, bu da beni bir hizmetin artık çalışmaması durumunda çalışmalıdır. Birçok farklı müşteri için birçok farklı sunucumuz olduğundan, "önemli" hizmetlerin bir listesini tanımlamak gerçekten ölçeklendirilmez.
initctl list
, başlatılan / çalıştırılan işlemleri listeleyen, ancak bu liste de elle başlatılan işlemleri de içerecektir
initctl list
. Ancak bu, manuel olarak başlatılan hizmetleri de göstereceği için gerçekten cevap vermiyor. Ve çalışmayan hizmetleri göstermiyor.