Arasındaki fark nedir /etc/init/
ve /etc/init.d/
?
Daha genel olarak, .d
sonek bir dizine ne anlam ifade ediyor?
Arasındaki fark nedir /etc/init/
ve /etc/init.d/
?
Daha genel olarak, .d
sonek bir dizine ne anlam ifade ediyor?
Yanıtlar:
/etc/init.d
System V init araçları (SysVinit) tarafından kullanılan komut dosyalarını içerir. Bu, Linux için geleneksel bir servis yönetim paketidir ve init
programı (çekirdeğin başlatılması bittiğinde çalıştırılan ilk işlem) ve hizmetleri başlatmak ve durdurmak ve yapılandırmak için bir altyapı içerir. Özellikle, dosyalar /etc/init.d
yanıt kabuk komut dosyaları start
, stop
, restart
(destekleniyorsa) ve reload
belirli bir hizmet yönetmek için komutlar. Bu komut dosyaları doğrudan veya (en yaygın olarak) başka bir tetikleyici (tipik olarak sembolik bir bağlantının varlığı) aracılığıyla çağrılabilir /etc/rc?.d/
.
/etc/init
Upstart tarafından kullanılan yapılandırma dosyalarını içerir. Upstart, Ubuntu tarafından savunan genç bir servis yönetimi paketidir. Dosyalar /etc/init
nasıl ve ne zaman için kimsesiz anlatan yapılandırma dosyalarıdır start
, stop
, reload
yapılandırma ya sorgulamak status
bir hizmetin. Net olarak, Ubuntu, SysVinit'ten Upstart'a geçiş yapıyor, bu da birçok hizmetin neden Upstart konfigürasyon dosyaları tercih edilse de SysVinit scriptleri ile geldiğini açıklıyor. Aslında, SysVinit scriptleri Upstart'taki bir uyumluluk katmanı tarafından işlenir.
.d
(örneğin dizin isimlerinde genellikle belirli bir durum için birçok konfigürasyon dosyalarını veya komut dosyalarını içeren bir dizin belirten /etc/apt/sources.list.d
bir sanal yapmak için birleştirilmiş dosyaları içeren sources.list
; /etc/network/if-up.d
bir ağ zaman çalıştırılan komut dosyaları içerir i NTER f ace devreye girer). Bu yapı genellikle, dizindeki her giriş farklı bir kaynak tarafından sağlandığında kullanılır, böylece her paket kendi başvurusunu tek bir yapılandırma dosyasını ayrıştırmak zorunda kalmadan kendi eklentisini depolayabilir. Bu durumda, sadece "init" dizini için mantıklı bir isim olur, SysVinit ilk geldi ve kullanılmış init.d
ve Upstart düz kullanılaninit
Benzer bir amaç için bir dizin için (daha çok "ana" ve /etc/upstart.d
bunun yerine kullanılmış olsaydı daha az kibirli olurdu ).
İn initrd saymıyor
upstart
veya adlı bir paket olup olmadığını kontrol edin sysvinit
. Ve son sürümlerde de olabilir systemd
(cevabımı yazdığımda Ubuntu için geri gelmedi). Hangi paketin sağladığı /sbin/init
( dpkg -S /sbin/init
).
upstart
/ sbin / init (koştu dpkg -S /sbin/init
) sağlayan paket . Ancak Bitnami, komut dosyasını /etc/init.d dizinine yerleştirmiştir. Bu @AsheeshR için verdiğiniz cevap ile çelişkili değil mi? Teşekkür ederim.
".D" genellikle, eskiden tek bir komut dosyası veya tek bir yapılandırma dosyası tarafından işlenenin ne olduğunu (veya ne olabileceğini) bir kolaylık sağlamak için birden fazla dosyaya bölündüğünü, ancak hangi birlikte dahil edilmeli veya uygulanmalıdır.
Örneğin, /etc/apache/conf.d/
veya/etc/apt/sources.d/
Hangi sıraya dahil edilmeleri / yürütülmesi gerektiğinin önemli olduğu durumlarda, bu dizinlerdeki dosyalar bazen doğru sırayla çalışması için "00 varsayılan" veya "80 kullanıcı" gibi bir sayı ile başlar.
Bu durumda, /etc/init.d/
"init.d" deki scriptlerin hepsinin çalıştırılması gerektiğini gösterir. Ancak günümüzde, modern işletim sistemlerinin init sistemi bundan biraz daha fazla, ancak dizin adı hala orada.
Sizin de belirttiğiniz gibi, ".d" terminolojisi şaşırtıcı ve gariptir ve herhangi bir modern sistemde herhangi bir yeri yoktur - çoğu modern hizmetin onu bırakma eğiliminde olduğunu fark edeceksiniz.
Dizinin /etc/init
olmamasının /etc/upstart
sebebi, Upstart'ın proje adı olması, asıl kurulu olan ikilik hala, /sbin/init
bu nedenle konfigürasyonunun ikili ile uyuşmayan bir isme sahip olması mantıklı olmaz.
rules.d
, Xorg'un nispeten yeni xorg.conf.d
, çok eski değil /etc/profile.d
vb ..
.d
Dizinler, V Sistemine girmiştir. O zamanlar şaşırtıcı bir notasyondu ve nihayetinde muhtemelen bir kişinin kod tabanına giren ve gidemediği fikri. Örneğin,cat
gerçekleştirdiği görev için bunun kötü bir ad olduğunu düşünüyorsanız , sistemde kaç tane dosyayı değiştirmek için dokunmanız gerektiğini düşünün.