Debian başlasın mı?


20

Debian için aynı olacağını düşünerek Ubuntu'da bir başlangıç ​​yazısı oluşturdum. Ancak Debian'ın /etc/initUbuntu'nun sahip olduğu bir klasörü yok . Uptart indirme sayfasına gittim ve paketlerinin olduğunu gördüm , bir yaptım apt-get install upstart, ancak sistemimi bozacağını / çözeceğini bildiğim sysvinit'i kaldırmayı istiyor. Peki Ubuntu betiğimin Debian üzerinde çalışmasını nasıl sağlayabilirim?

Yanıtlar:


12

Doğrudan Debian vs Ubuntu ile ilgili değil, SysVinit vs Upstart ile ilgili . Debian varsayılan olarak SysVinit; Upstart'ı yükleyebilirsiniz, ancak ne yaptığınızı bilmeniz gerekir ve bir üretim sunucusuna yüklemeyi düşünmeden önce bunu bilmeniz gerekir. Teorik olarak her ikisini de kurmak mümkün olsa da, bunlardan sadece biri işlem numarası 1 olarak çalışıyor, Debian bunu kutunun dışında desteklemiyor.

Upstart, SysVinit'ten daha gençtir ve daha fazla özelliğe sahiptir, bu da neden bir Upstart hizmet açıklaması alıp SysVinit'e besleyemeyeceğinizi açıklar. İçin bir senaryo/etc/init.d yazmanız gerekecek . Temelde komut ihtiyaçları ilk argüman (bakmak için o $1) ve start, stopveya restartyönlendirilmiş olarak hizmet.

Komut dosyasının ne zaman başlatılacağını belirlemek için Upstart olaylarını kullanıyorsanız, diğer bazı yöntemleri kullanmanız gerekir. Upstart, birçok farklı kaynaktan gelen olayları toplar; Upstart'ı nereden alırsanız başlatabilirsiniz, bu açıdan Upstart birçok farklı yerde ve protokolde tetikleyici aramak zorunda kalmanın uygun bir yoludur.


Peki Ubuntu nasıl upstart ve SysVinit kullanıyor (ya da öyle görünüyor)?
ColinM

@ColinM Ubuntu SysVinit kullanmaz.
Gilles 'SO- kötü olmayı bırak'

5

Kaldırılmasının nedeni sysvinit, bu ikisinin çatışma olması. Ayrıca, bunun sysvinitönemli olduğunu unutmayın ( ne yaptığınızı bilmiyorsanız , kaldırılmamalıdır ).

'Yetenek şovu başlangıç' dan alınan çıktının bir kısmı:

Conflicts: startup-tasks, system-services, sysvinit, upstart-compat-sysv, upstart-job

Sisteminizi hortumlamayı göze alabiliyorsanız, devam edin ve kurun.


Hayır, bu bir üretim sunucusu. Terminalden başlayıp durdurabileceğim bir hizmet oluşturmamın bir yolu yok mu?
TheTuxRacer

Daha sonra komut dosyanızı yerleştirin /etc/init.dve minimum start|stop|restartkomutları anlamasını sağlayın . upstartKomut dosyasını çalıştırmanıza gerek yoktur , yalnızca normal komut satırınızdır.
alex

@kau Üretim sunucunuzu bazı test makinelerine klonlamaya ve uptart ve test etmeye ne dersiniz ?
tshepang

@alex @Tshepang Bir göz atabilir ve tavsiye verebilir misiniz, lütfen? paste.ubuntu.com/555683 Kavanoz yürütülmüyor.
TheTuxRacer

execOraya ihtiyacınız yok - git ve kabuk komut dosyası yazmayla ilgili bazı kitapları ve / veya kitapları oku.
alex
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.