Saya perlu mencari tahu jenis skrip apa yang menjalankan fsck selama boot pada CentOS 7?
Saya tahu bahwa semua skenario terletak di direktori /etc/rc.d.
Tapi saya tidak tahu tentang dimana script ini berada.
Jawaban yang Diterima:
Saya tahu bahwa semua skenario terletak di
/etc/rc.d
direktori.
Apa yang Anda tahu salah.
Selamat datang di CentOS 7. Dunia telah berubah. Secara khusus, basis Red Hat Enterprise Linux 7 Anda telah berubah. Anda menggunakan sistem operasi Linux systemd. Banyak kebijaksanaan yang diterima tentang Linux tidak benar untuk sistem seperti itu.
fsck
tidak dijalankan oleh skrip apa pun pada sistem operasi systemd Linux.
Format asli untuk systemd adalah unit , yang antara lain dapat berupa unit layanan atau unit dudukan . manajemen layanan systemd yang tepat beroperasi hanya dalam hal itu, yang dibaca dari salah satu dari sembilan direktori di mana (seluruh sistem) .service
dan .mount
file bisa hidup. /etc/systemd/system
, /run/systemd/system
, /usr/local/lib/systemd/system
, dan /usr/lib/systemd/system
adalah empat dari direktori tersebut.
/etc/fstab
. Anda database diubah menjadi unit mount oleh program bernama systemd-fstab-generator
. Program ini terdaftar di /usr/lib/systemd/system-generators/
direktori dan dengan demikian dijalankan secara otomatis oleh systemd di awal proses bootstrap pada setiap boot, dan sekali lagi setiap kali systemd diinstruksikan untuk memuat ulang konfigurasinya nanti.
Program ini adalah generator , jenis utilitas tambahan yang tugasnya membuat file unit dengan cepat, dalam tmpfs di mana tiga dari sembilan direktori (yang dimaksudkan untuk digunakan hanya oleh generator) berada. systemd-fstab-generator
menghasilkan .mount
unit yang memasang volume. Ini pada gilirannya merujuk pada .service
unit yang menjalankan fsck
.
fsck
itu unit layanan sendiri tidak ada sebagai file dalam sistem file (bahkan tidak dalam tmpfs), dan bukan produk dari generator. Mereka dibuat instantiate oleh systemd dari templat file unit layanan, bernama [email protected]
, menggunakan nama perangkat sebagai nama instance unit layanan. Instansiasi terjadi karena Requires=
dan After=
referensi ke [email protected]device.service
dari .mount
. yang dihasilkan unit.
Template instantiated ini adalah layanan yang menjalankan program bernama systemd-fsck
, yang menyiapkan koneksi klien-server untuk menampilkan informasi kemajuan dan kemudian menjalankan fsck
. systemd-fsck
adalah program C yang dikompilasi, bukan skrip yang ditafsirkan.
Bacaan lebih lanjut
- “Fitur Baru:Sistem dan Layanan”. Catatan Rilis Red Hat Enterprise Linux 7 . Topi Merah.
- Stephen Wadeley (2014). “8. Mengelola Layanan dengan systemd” Panduan Administrator Sistem Red Hat Enterprise Linux 7 . Topi Merah.
- systemd-fstab-generator . halaman manual systemd. Freedesktop.org.
- [email dilindungi] . halaman manual systemd. Freedesktop.org.
- systemd.mount . halaman manual systemd. Freedesktop.org.
- https://unix.stackexchange.com/a/204075/5132
- https://unix.stackexchange.com/a/196014/5132