(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/systemd
memberi tahu Anda bahwa Anda menggunakan sistem berbasis systemd. -
/usr/share/upstart
adalah indikator yang cukup bagus bahwa Anda menggunakan sistem berbasis pemula. -
/etc/init.d
memberitahu 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”.