Saya tahu bahwa mereka semua adalah file unit, tetapi saya tidak dapat memahami arti khusus dari mereka. Saya pikir targetnya mirip dengan daemon dan soket sama dengan socket (IP + port) tetapi juga dengan nomor inode. Adakah yang bisa menjelaskannya dengan kata-kata sederhana?
35
man
Halaman-halaman systemd adalah contoh: sudahkah Anda melihatnyaman systemd.{service,socket,target}
?Jawaban:
Unit layanan:
- systemd.service (5)
Unit layanan Systemd adalah unit yang benar-benar menjalankan dan melacak program dan daemon, dan dependensi digunakan untuk memastikan bahwa layanan dimulai dalam urutan yang benar. Mereka adalah jenis unit yang paling umum digunakan.
Unit soket:
- systemd.socket (5)
Unit soket di sisi lain tidak benar-benar memulai daemon sendiri. Sebagai gantinya, mereka hanya duduk di sana dan mendengarkan alamat IP dan port, atau soket domain UNIX, dan ketika sesuatu terhubung, daemon yang digunakan untuk memulai soket dan koneksi diserahkan padanya.
Ini berguna untuk memastikan bahwa dasmon besar yang mengambil banyak sumber daya tetapi jarang digunakan tidak berjalan dan mengambil sumber daya sepanjang waktu, tetapi mereka hanya dimulai ketika dibutuhkan.
Unit target:
- systemd.target (5)
Target digunakan untuk pengelompokan dan unit pemesanan. Mereka agak setara dengan runlevel di mana pada target yang berbeda, layanan yang berbeda, soket, dan unit lainnya dimulai. Tidak seperti runlevel, mereka jauh lebih bebas dan Anda dapat dengan mudah membuat target sendiri untuk memesan unit, dan target memiliki ketergantungan di antara mereka sendiri.
Misalnya,
multi-user.target
adalah apa yang sebagian besar daemon dikelompokkan di bawah, dan itu perlubasic.target
diaktifkan, yang berarti bahwa semua layanan yang dikelompokkan di bawahbasic.target
akan dimulai sebelum yang masukmulti-user.target
.sumber
Dokumentasi untuk systemd sangat baik untuk proyek yang relatif baru. Untuk memulai dengan target , dari
man systemd.target
:"Grup unit" ini mencakup berbagai fungsi yang berbeda, dari
basic.target
yang pada dasarnya mencakup boot sistem, hingga segala hal dari dbus, gettys, mount point untuk swap dan timer. Anda dapat melihat daftar lengkapnya denganman systemd.special
.file layanan adalah unit dasar untuk menjalankan proses yang dikendalikan oleh systemd. Lagi, dari
man systemd.service
:Ini merupakan daemon yang dapat dimulai, dihentikan, dimulai kembali, dimuat ulang.
Akhirnya, soket , dari
man systemd.socket
:Ini mencakup soket di sistem file atau di Internet, serta FIFO klasik sebagai transportasi. Setiap unit soket memiliki unit layanan yang cocok, yang dimulai jika koneksi pertama masuk pada soket atau FIFO.
Selain
man
halaman, ada baiknya membaca serangkaian posting blog Lennart, systemd untuk Administrator , yang memberikan pandangan mendalam pada arsitektur dan implementasi systemd (saat ini ada 20 posting dalam seri).sumber