Benim en iyi bildiğim için, henüz geçti olmadı, bir Ahududu kullanarak raspian var varsayıyorum systemd . Bu durumda cevap aşağıdaki gibidir.
EDIT: systemd için (Jessie veya üstü), aşağıya bakın .
İlk olarak, şu anda hangi sistemin çalıştığını şu komutla belirleyebilirsiniz:
sudo service --status-all
Bunun gibi bir liste alacaksınız:
[ + ] triggerhappy
[ + ] udev
[ ? ] udev-mtab
[ ? ] umountfs
[ ? ] umountnfs.sh
[ ? ] umountroot
[ - ] urandom
[ + ] vsftpd
[ + ] weewx
[ - ] x11-common
+ 'In hizmetleri, çalışan belirtmek -'s hizmetler değil , çalışan lar?' İzin vermez hizmetleri durumunu onlar sadece ara sıra, çoğunlukla her zaman çalıştırmak gerekmez komutlar şunlardır: olası bir komut olarak.
Sorunuza geri dönmek için Linux'taki çalışma seviyelerini anlamanız gerekir . Çalışma seviyeleri (0-6 + S) hangi hizmetlerin çalıştırılabileceğini / çalıştırılması gerektiğini tanımlar. Bir önyükleme sırası ilk çalışma seviyesinden ( / etc / inittab içinde , Raspberry'imde belirtilir) ilerler
# The default runlevel.
id:2:initdefault:
bu satır 2 olarak tanımlar ve ardından dağıtım standart son çalışma seviyenize (2'den 5'e) ilerler. Geçerli çalışma seviyenizi komut aracılığıyla tanımlarsınız.
# runlevel
N 2
(benim durumumda, başsız bir sunucu). Diğer çalışma seviyeleri (yine é / etc / inittab * 'dan):
# Runlevel 0 is halt.
# Runlevel 1 is single-user.
# Runlevels 2-5 are multi-user.
# Runlevel 6 is reboot.
Tek kullanıcı (1) genellikle S olarak tanımlanır.
Normal bir önyüklemede, 2 ile başlar ve 5'e kadar ilerlersiniz. Bu ilerlemede başlatılan hizmetleri bulmak için şu komutu verin:
# grep -nrI Default-Start /etc/init.d
umountroot:7:# Default-Start:
checkroot.sh:8:# Default-Start: S
kbd:6:# Default-Start: S
isc-dhcp-server:11:# Default-Start: 2 3 4 5
mountkernfs.sh:7:# Default-Start: S
hostname.sh:7:# Default-Start: S
mountnfs.sh:7:# Default-Start: S
halt:6:# Default-Start:
dphys-swapfile:20:# Default-Start: 2 3 4 5
bootlogs:7:# Default-Start: 1 2 3 4 5
rc.local:6:# Default-Start: 2 3 4 5
hostapd:9:# Default-Start: 2 3 4 5
keyboard-setup:8:# Default-Start: S
lightdm:7:# Default-Start: 2 3 4 5
procps:11:# Default-Start: S
mysql:9:# Default-Start: 2 3 4 5
single:6:# Default-Start: 1
vsftpd:7:# Default-Start: 2 3 4 5
samba:7:# Default-Start: 2 3 4 5
mountall.sh:6:# Default-Start: S
weewx:20:# Default-Start: 2 3 4 5
umountnfs.sh:7:# Default-Start:
triggerhappy:6:# Default-Start: 2 3 4 5
ifplugd:24:# Default-Start: 2 3 4 5
alsa-utils:9:# Default-Start: S
bootmisc.sh:7:# Default-Start: S
sendsigs:6:# Default-Start:
console-setup:7:# Default-Start: S
nfs-common:7:# Default-Start: 2 3 4 5 S
checkroot-bootclean.sh:6:# Default-Start: S
rsyslog:7:# Default-Start: 2 3 4 5
x11-common:7:# Default-Start: S
mountdevsubfs.sh:7:# Default-Start: S
cron:10:# Default-Start: 2 3 4 5
mountnfs-bootclean.sh:6:# Default-Start: S
mountall-bootclean.sh:6:# Default-Start: S
screen-cleanup:11:# Default-Start: S
udev:6:# Default-Start: S
ssh:7:# Default-Start: 2 3 4 5
haveged:8:# Default-Start: 2 3 4 5
hwclock.sh:26:# Default-Start: S
plymouth:9:# Default-Start: 2 3 4 5
motd:7:# Default-Start: 1 2 3 4 5
killprocs:6:# Default-Start: 1
networking:6:# Default-Start: S
fake-hwclock:9:# Default-Start: S
udev-mtab:6:# Default-Start: S
apache2:6:# Default-Start: 2 3 4 5
reboot:6:# Default-Start:
umountfs:6:# Default-Start:
plymouth-log:9:# Default-Start: S
openvpn:11:# Default-Start: 2 3 4 5
kmod:8:# Default-Start: S
ntp:7:# Default-Start: 2 3 4 5
rpcbind:9:# Default-Start: S 2 3 4 5
urandom:6:# Default-Start: S
rmnologin:6:# Default-Start: 2 3 4 5
checkfs.sh:7:# Default-Start: S
sudo:8:# Default-Start: 2 3 4 5
mtab.sh:6:# Default-Start: S
dbus:6:# Default-Start: 2 3 4 5
rsync:8:# Default-Start: 2 3 4 5
Bu , çeşitli hizmetleri tanımlayan dosyaların tutulduğu /etc/init.d/ dosyasındaki tüm dosyalarda Default-Start ile başlayan satırı yazdırır . Söz konusu satır, her bir hizmetin başlatılacağı çalışma seviyesini tanımlar. Bir hizmet çalışma düzeyi N'de başlatılırsa, sistem N + 1'e ilerlediğinde yeniden başlatılması gerekmez, ancak çalışmadığı tespit edilirse başlatılır.
Bu, hizmetlerin başlatıldığı farklı aşamalar hakkında kesin bir fikir verir. Ama aynı çalışma seviyesini içinde, çizgiler Gerekli Başlangıç ve Meli-Start söz konusu hizmet için sert ve yumuşak bağımlılıkları tanımlamak yani hizmetlerini gerekir çalıştırmak ve gereken hizmet incelenmeden önce çalıştırın. Gerekli-Başlatma hizmetleri olmadan, söz konusu hizmet başarısız olur, Bunun yerine Başlatma hizmetleri olmadan genel bir hata olmaz, muhtemelen bazı yararlı özelliklerin olmaması. Aynı şey Stop-Required ve Stop-Stop ile gerçekleşir.
SİSTEM :
Tüm hizmetleri listeleme komutu
systemctl list-unit-files
bu da çok fazla bilgi tükürecek. Etkinleştirilen tüm hizmetleri , yani önyüklemede başlatılan hizmetleri seçmek için yukarıdaki komutu aşağıdaki gibi grep:
systemctl list-unit-files | grep enabled
Bu komutu sistemctl list-birimleri için tercih ederim : fark, bu sadece işletim sisteminizin bellekte olduğu hizmetleri gösterecektir = işletim sistemi ihtiyaç duyduğunu düşünür), systemctl list-unit-files olanları da dahil olmak üzere tüm yüklü hizmetleri gösterecektir maskeli ( yani bile elle başlatılabilir asla gerekiyordu olanlar) ve hangi olanlar değil denir ki etkinleştirmek statik . Başka bir deyişle, önerdiğim komut, yalnızca etkin hizmetleri listeleyen komuttan daha kapsamlıdır .
Not : systemd, önceki init sistemlerinden çok farklıdır. Özellikle, çalışma seviyeleri değil , hedefleri var . çalışma düzeyleri hala uyumluluk nedeniyle mevcuttur ve kullanılabilir tüm hedefleri listeleyerek belirli hedefler olarak görülebilir
systemctl list-unit-files --type=target
mevcut hedefinizi
$ systemctl get-default
graphical.target
Bununla ilgili daha fazla bilgi için DigitalOcean'ın mükemmel tanıtım sayfasını okuyabilirsiniz .
systemd
, ancak bu cevap hala işe yarıyor gibi görünüyor.