Fail perkhidmatan mempunyai .perkhidmatan sambungan dan mengandungi arahan yang diperlukan oleh sistemd untuk menguruskan sesuatu perkhidmatan.
The sistemd sistem init menguruskan permulaan sistem menggunakan Unit . Unit ialah objek yang melaksanakan tugas atau tindakan, seperti mengurus perkhidmatan, yang melibatkan kawalan dan pemantauannya. Unit ini pada asasnya ialah fail yang dipanggil fail perkhidmatan yang merangkumi kebergantungan unit dan arahan. Fail ini penting untuk mengawal proses latar belakang dan mengurus sumber dengan cekap.
Dalam panduan, saya akan meneroka fail perkhidmatan systemd, strukturnya, dan arahan utama yang mengawal perkhidmatan.
Apabila bekerja dengan systemd, syarat fail perkhidmatan systemd dan fail unit systemd sering digunakan secara bergantian kerana secara teknikal ia merujuk kepada perkara yang sama.
Apakah itu Fail Perkhidmatan Systemd
Di Linux, systemd menguruskan perkhidmatan menggunakan fail perkhidmatan yang mengandungi arahan konfigurasi supaya systemd boleh memahami dan melaksanakan.
Untuk menyenaraikan unit, gunakan systemctl dengan –senarai-unit perintah.
systemctl --senarai-unit
Untuk membaca fail perkhidmatan mana-mana perkhidmatan, gunakan kucing arahan dengan laluan fail.
kucing [ / laluan fail perkhidmatan ]Sebagai contoh, untuk melihat fail perkhidmatan ssh.service gunakan arahan yang diberikan.
kucing / lib / sistemd / sistem / ssh.service
Anatomi Fail Perkhidmatan Systemd
Secara amnya, fail unit perkhidmatan systemd mengandungi tiga bahagian.
- Unit
- Perkhidmatan
- Pasang
Fail unit khusus perkhidmatan akan mempunyai bahagian khusus yang dipanggil Perkhidmatan bahagian.
Ambil perhatian bahawa perkhidmatan itu hanyalah sejenis unit. Unit boleh mempunyai jenis yang berbeza seperti soket, peranti, lekap, automount, swap, sasaran, pemasa, hirisan dan skop. Bahagian ini diletakkan di antara bahagian Unit dan Pasang. Sambungan fail juga akan digantikan dengan jenis unit masing-masing, contohnya, jenis unit soket akan mempunyai a .soket sambungan fail.
Catatan: Dalam panduan ini, saya akan memberi tumpuan kepada jenis unit perkhidmatan kerana penggunaannya yang meluas oleh pentadbir dan pembangun.
Bahagian ini disertakan dalam kurungan segi empat sama ([]). Setiap bahagian mengandungi set arahan yang berkaitan. Struktur umum fail perkhidmatan diberikan di bawah.
[ Unit ]Arahan1 =Arahan 1
Arahan2 =Arahan 2
[ Perkhidmatan ]
Arahan1 =Arahan 1
Arahan2 =Arahan 2
[ Pasang ]
Arahan1 =Arahan 1
Arahan2 =Arahan 2
Susunan bahagian boleh diubah; bagaimanapun, susunan yang disebutkan di atas secara amnya diikuti.
[Unit] Bahagian
Bahagian unit mengandungi perihalan unit dan kebergantungan unit. Bahagian ini, mengikut konvensyen, diletakkan di bahagian atas fail perkhidmatan. Arahan yang biasa digunakan disenaraikan di bawah:
Arahan | Penerangan |
Penerangan | Arahan ini digunakan untuk menyebut nama perkhidmatan. Panjang perihalan mestilah tidak melebihi 80 aksara. |
Dokumentasi | Arahan ini mengandungi halaman manual atau URL perkhidmatan. |
Memerlukan | Arahan ini digunakan untuk menyebut pergantungan pada perkhidmatan semasa. Jika pengaktifan perkhidmatan pergantungan ini tidak dilakukan, perkhidmatan semasa tidak akan dimulakan. |
Mahu | Arahan ini digunakan untuk menyebut pergantungan pada perkhidmatan semasa. Walau bagaimanapun, perkhidmatan pergantungan ini tidak diperlukan untuk diaktifkan untuk menjalankan perkhidmatan semasa. |
Sebelum ini | Selepas unit semasa telah diaktifkan, perkhidmatan yang dinyatakan dalam arahan ini akan dimulakan. |
Selepas | Sebelum unit semasa diaktifkan, perkhidmatan yang dinyatakan dalam arahan ini akan dimulakan. |
BindsTo | Arahan ini memautkan perkhidmatan semasa ke perkhidmatan yang disebutkan. Jika perkhidmatan terpaut dimulakan semula, perkhidmatan semasa juga akan dimulakan semula. |
Selain daripada arahan ini, terdapat dua lagi arahan; keadaan dan Tegaskan. Banyak perkhidmatan memerlukan keadaan sistem tertentu untuk berjaya dijalankan, dan arahan ini digunakan untuk menyebut syarat.
[Pasang] Bahagian
Bahagian ini tidak wajib dan hanya perlu apabila perkhidmatan memerlukan pengaktifan atau penyahaktifan semasa but. Lebih-lebih lagi, ia juga menyebut perkhidmatan alias. Arahan yang biasa digunakan untuk bahagian Pasang disenaraikan di bawah:
Arahan | Penerangan |
WantedBy | Arahan ini menetapkan tahap larian * sasaran perkhidmatan. Jika sasaran ditetapkan kepada berbilang pengguna.sasaran maka perkhidmatan akan didayakan pada peringkat larian ini. |
Diperlukan Oleh | Arahan ini mempunyai persamaan dengan WantedBy, walau bagaimanapun, walaupun tanpa pergantungan yang dinyatakan dalam arahan, perkhidmatan akan didayakan. |
Alias | Arahan ini digunakan untuk mendayakan perkhidmatan dengan nama lain. Pautan sym dibuat dengan nama ini apabila perkhidmatan didayakan. |
Kebanyakannya, yang berbilang pengguna.sasaran digunakan sebagai WantedBy parameter. Tetapi apakah itu multi-user.target?
Multi-user.target mewakili keadaan sistem yang bersedia untuk menerima sesi berbilang pengguna bukan grafik. Ia adalah keadaan sebelum melancarkan GUI.
Terdapat tahap larian sistem yang berbeza, mari belajar tentang fungsi tahap larian ini.
Dalam systemd, perkhidmatan dikumpulkan berdasarkan tahap larian, yang dipanggil sasaran . Setiap peringkat larian mempunyai fail dengan .sasaran sambungan dalam /etc/systemd/system direktori. Perkhidmatan akan dijalankan berdasarkan keadaan tahap larian.
Tahap Larian | Sasaran | negeri | Fail |
0 | matikan | Matikan & matikan | poweroff.target |
1 | menyelamat | Memulakan peluru penyelamat | menyelamat.sasaran |
2,3,4 | berbilang pengguna | Memulakan shell bukan GUI berbilang pengguna | berbilang pengguna.sasaran |
5 | grafik | Menubuhkan shell GUI berbilang pengguna | grafik.sasaran |
6 | but semula | Matikan & mulakan semula | reboot.target |
Bahagian [Perkhidmatan].
Bahagian ini mengandungi tetapan konfigurasi untuk perkhidmatan. Konfigurasi utama bahagian ini adalah menentukan jenis dan arahan yang akan dilaksanakan pada permulaan perkhidmatan. taip dan ExecStart adalah arahan utama yang digunakan untuk menyediakan perkhidmatan.
Jenis perkhidmatan yang berbeza disenaraikan dalam jadual berikut.
Jenis Perkhidmatan | Penerangan |
ringkas | Ia adalah jenis lalai apabila jenis atau Nama Bas tidak disebut dan hanya ExecStart disebut. Systemd melaksanakan proses utama dahulu dan kemudian unit susulan. |
bercabang | Jenis ini digunakan untuk memastikan perkhidmatan berjalan walaupun perkhidmatan induk ditutup. Ia menghentikan proses anak selepas penutupan proses induk. |
oneshot | Systemd melaksanakan proses utama dahulu dan apabila proses utama keluar, unit susulan akan bermula. |
dbus | Perkhidmatan dengan dbus digunakan untuk berkomunikasi dengan proses lain di dalam bas. Jika nama bas disebut, maka proses akan diaktifkan selepas nama bas diperoleh. |
maklumkan | Perkhidmatan akan memberitahu apabila memulakan proses. Systemd akan meneruskan ke unit susulan selepas pemberitahuan dikeluarkan. |
terbiar | Ia memegang perkhidmatan sehingga semua kerja aktif dihantar; terutamanya berguna untuk meningkatkan output konsol. |
Arahan yang biasa digunakan dalam bahagian Perkhidmatan disebut di bawah:
Arahan | Penerangan |
ExecStart | Ia menyimpan laluan penuh arahan yang akan dilaksanakan untuk memulakan proses. |
ExecStartPre | Ia menyimpan arahan yang harus dilaksanakan sebelum proses utama bermula. |
ExecStartPost | Ia menyimpan arahan yang harus dilaksanakan selepas proses utama bermula. |
ExecReload | Ia menyimpan arahan untuk memuat semula konfigurasi perkhidmatan. |
Mula semula | Untuk memulakan semula perkhidmatan secara automatik dalam keadaan seperti pada-gagal, pada-kejayaan, pada-tidak normal, pada-abort dan on-watchdog. |
Mulakan semulaSec | Untuk mengekalkan bilangan saat selepas itu perkhidmatan akan dimulakan semula secara automatik. |
The ExecStart ialah salah satu arahan penting yang digunakan dalam bahagian Perkhidmatan. Ia mengandungi laluan penuh boleh laku bahawa perkhidmatan itu akan dilaksanakan apabila menggunakan.
Kesimpulan
Fail perkhidmatan systemd ialah fail konfigurasi yang distrukturkan dengan arahan dan arahan supaya ia boleh diuruskan oleh systemd. Fail ini mengandungi arahan yang menunjukkan cara perkhidmatan diuruskan oleh systemd. Dalam panduan ini, saya membincangkan cara mengakses fail perkhidmatan systemd, bahagiannya dan arahan yang mengurus perkhidmatan. Untuk mengetahui lebih lanjut tentang arahan fail perkhidmatan, sila baca panduan dokumentasi rasmi yang ditemui di sini .