(20 jawaban)
Tutup 6 tahun yang lalu.
Apakah ada cara sederhana untuk mengetahui sistem init mana yang digunakan misalnya oleh Debian wheezy baru-baru ini atau Fedora sistem? Saya mengetahui bahwa Fedora 21 menggunakan systemd initsystem tetapi itu karena saya membacanya dan karena semua skrip/symlink yang relevan disimpan di /etc/systemd/ . Namun, saya tidak yakin tentang misalnya Debian squeeze atau CentOS 6 or 7 dan seterusnya.
Teknik mana yang ada untuk memverifikasi sistem init?
Jawaban yang Diterima:
Anda dapat melihat-lihat sistem untuk menemukan indikator. Salah satu caranya adalah dengan memeriksa keberadaan tiga direktori:
-
/usr/lib/systemdmemberi tahu Anda bahwa Anda menggunakan sistem berbasis systemd. -
/usr/share/upstartadalah indikator yang cukup bagus bahwa Anda menggunakan sistem berbasis pemula. -
/etc/init.dmemberitahu Anda bahwa kotak tersebut memiliki SysV init dalam riwayatnya
Masalahnya, ini adalah heuristik yang harus dipertimbangkan bersama, mungkin dengan data lain, bukan indikator tertentu sendiri. Kotak Ubuntu 14.10 yang saya lihat sekarang memiliki ketiga direktori. Mengapa? Karena Ubuntu baru saja beralih ke systemd dari Pemula dalam versi tersebut, tetapi tetap Pemula dan SysV init untuk kompatibilitas mundur.
Pada akhirnya, saya pikir jawaban terbaik adalah "pengalaman." Anda akan melihat bahwa Anda telah masuk ke kotak CentOS 7 dan tahu bahwa itu adalah systemd. Bagaimana Anda belajar ini? Bermain-main, RTFMing, dll. Dengan cara yang sama Anda mendapatkan semua pengalaman.
Saya menyadari ini bukan jawaban yang sangat memuaskan, tetapi itulah yang terjadi ketika ada fragmentasi di pasar, menciptakan desain yang tidak standar. Ini seperti menanyakan bagaimana Anda tahu apakah ls menerima -C , atau --color , atau tidak menghasilkan keluaran warna sama sekali. Sekali lagi, jawabannya adalah “pengalaman”.