Mulai menggunakan Debian?


20

Saya membuat skrip pemula di Ubuntu, berpikir itu akan sama untuk Debian. Tetapi Debian tidak memiliki /etc/initfolder yang dimiliki Ubuntu. Saya pergi ke halaman unduhan pemula dan melihat bahwa mereka memiliki paket, melakukan apt-get install upstart, tetapi meminta untuk menghapus sysvinit, yang saya tahu akan / mungkin mengacaukan sistem saya. Jadi bagaimana cara membuat skrip Ubuntu saya berfungsi pada Debian?

Jawaban:


12

Ini tidak secara langsung tentang Debian vs Ubuntu, ini tentang SysVinit vs Upstart . Default Debian ke SysVinit; Anda dapat menginstal pemula, tetapi Anda harus tahu apa yang Anda lakukan, dan Anda harus terbiasa dengannya bahkan sebelum Anda berpikir untuk menginstalnya di server produksi. Walaupun secara teori memungkinkan untuk menginstal keduanya, dengan hanya satu yang berjalan sebagai proses nomor 1, Debian tidak mendukung hal ini.

Pemula lebih muda dari SysVinit dan memiliki lebih banyak kemampuan, yang menjelaskan mengapa Anda tidak bisa hanya mengambil deskripsi layanan Pemula dan memberikannya ke SysVinit. Anda harus menulis naskah untuk/etc/init.d . Pada dasarnya skrip itu perlu melihat argumen pertama ( $1) dan start, stopatau restartlayanan seperti yang diarahkan.

Jika Anda menggunakan acara Memulai untuk menentukan kapan memulai skrip, Anda harus menggunakan beberapa metode lain. Pemula mengumpulkan acara dari berbagai sumber; Anda bisa mendapatkan pemicunya dari mana saja Pemula mendapatkannya, Pemula dalam hal ini hanyalah cara mudah untuk tidak harus mencari pemicu di banyak tempat dan protokol yang berbeda.


Jadi bagaimana bisa Ubuntu menggunakan baik pemula dan SysVinit (atau tampaknya)?
ColinM

@ColinM Ubuntu tidak menggunakan SysVinit.
Gilles 'SANGAT berhenti menjadi jahat'

5

Alasan itu akan dihapus sysvinitadalah karena keduanya konflik. Juga, perhatikan yang sysvinitdianggap penting (baca: tidak akan dihapus, kecuali Anda tahu apa yang Anda lakukan ).

Bagian dari output dari 'aptitude show upstart`:

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

Jika Anda mampu menyemprot sistem Anda, silakan dan instal.


Tidak, ini server produksi. Apakah saya tidak dapat membuat layanan yang dapat saya mulai dan hentikan dari terminal?
theTuxRacer

Kemudian letakkan skrip Anda ke dalam /etc/init.ddan buatlah ia memahami minimum start|stop|restartperintah. Anda tidak perlu upstartmenjalankan skrip, hanya baris perintah yang biasa.
alex

@ Koh Bagaimana kalau Anda mengkloning server produksi Anda ke beberapa mesin pengujian dan menginstal pemula, dan menguji?
tshepang

@alex @Tipepang Bisakah Anda melihat dan memberi saran? paste.ubuntu.com/555683 Stoples tidak dijalankan.
theTuxRacer

Anda tidak perlu di execsana - baca beberapa manual dan / atau buku tentang shell scripting.
alex
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.