GNU/Linux >> Belajar Linux >  >> Linux

Belajar mencintai systemd

systemd—ya, semua huruf kecil, bahkan di awal kalimat—adalah pengganti modern untuk skrip init dan SystemV init. Ini juga lebih banyak lagi.

Seperti kebanyakan sysadmin, ketika saya memikirkan program init dan SystemV, saya memikirkan startup dan shutdown Linux dan tidak terlalu banyak hal lain, seperti mengelola layanan setelah mereka aktif dan berjalan. Seperti init, systemd adalah induk dari semua proses, dan bertanggung jawab untuk membawa host Linux ke keadaan di mana pekerjaan produktif dapat dilakukan. Beberapa fungsi yang diasumsikan oleh systemd, yang jauh lebih ekstensif daripada program init lama, adalah untuk mengelola banyak aspek dari host Linux yang sedang berjalan, termasuk memasang sistem file, mengelola perangkat keras, menangani pengatur waktu, dan memulai dan mengelola layanan sistem yang diperlukan. untuk memiliki host Linux yang produktif.

Rangkaian artikel ini, yang sebagian didasarkan pada kutipan dari kursus pelatihan Linux tiga jilid saya, Menggunakan dan mengelola Linux:nol hingga sysadmin , menjelajahi fungsi systemd baik saat startup maupun awal setelah startup selesai.

Boot Linux

Proses lengkap yang membawa host Linux dari keadaan mati ke keadaan berjalan adalah kompleks, tetapi terbuka dan dapat diketahui. Sebelum masuk ke detailnya, saya akan memberikan ikhtisar singkat mulai dari saat perangkat keras host diaktifkan hingga sistem siap digunakan pengguna untuk masuk. Sebagian besar waktu, "proses booting" dibahas sebagai satu kesatuan, tapi itu tidak akurat. Faktanya, ada tiga bagian utama dari proses boot dan startup penuh:

  • Boot perangkat keras: Menginisialisasi perangkat keras sistem
  • Boot Linux: Memuat kernel Linux dan kemudian systemd
  • Memulai Linux: Di mana systemd mempersiapkan tuan rumah untuk pekerjaan produktif

Urutan startup Linux dimulai setelah kernel memuat init atau systemd, tergantung pada apakah distribusi menggunakan startup lama atau baru. Program init dan systemd memulai dan mengelola semua proses lainnya dan keduanya dikenal sebagai "induk dari semua proses" pada sistemnya masing-masing.

Penting untuk memisahkan boot perangkat keras dari boot Linux dari startup Linux dan untuk secara eksplisit menentukan titik demarkasi di antara keduanya. Memahami perbedaan ini dan bagian apa yang dimainkan masing-masing dalam membawa sistem Linux ke keadaan di mana ia dapat menjadi produktif memungkinkan untuk mengelola proses ini dan menentukan dengan lebih baik di mana masalah terjadi selama apa yang kebanyakan orang sebut sebagai "boot."

Proses startup mengikuti proses boot tiga langkah dan membawa komputer Linux ke kondisi operasional yang dapat digunakan untuk pekerjaan produktif. Proses startup dimulai ketika kernel mentransfer kendali host ke systemd.

kontroversi sistem

systemd dapat menimbulkan berbagai reaksi dari sysadmin dan pihak lain yang bertanggung jawab untuk menjaga dan menjalankan sistem Linux. Fakta bahwa systemd mengambil alih begitu banyak tugas di banyak sistem Linux telah menimbulkan penolakan dan perselisihan di antara kelompok pengembang dan sysadmin tertentu.

SystemV dan systemd adalah dua metode berbeda dalam melakukan urutan startup Linux. Skrip awal SystemV dan program init adalah metode lama, dan systemd menggunakan target adalah metode baru. Meskipun sebagian besar distribusi Linux modern menggunakan systemd yang lebih baru untuk startup, shutdown, dan manajemen proses, masih ada beberapa yang tidak. Salah satu alasannya adalah bahwa beberapa pengelola distribusi dan beberapa sysadmin lebih memilih metode SystemV yang lebih lama daripada systemd yang lebih baru.

Saya rasa keduanya memiliki kelebihan.

Mengapa saya lebih memilih SystemV

Saya lebih suka SystemV karena lebih terbuka. Startup dilakukan dengan menggunakan skrip Bash. Setelah kernel memulai program init, yang merupakan biner terkompilasi, init meluncurkan rc.sysinit script, yang melakukan banyak tugas inisialisasi sistem. Setelah rc.sysinit selesai, init meluncurkan /etc/rc.d/rc skrip, yang selanjutnya memulai berbagai layanan yang ditentukan oleh skrip awal SystemV di /etc/rc.d/rcX.d , di mana "X" adalah jumlah runlevel yang dimulai.

Lebih banyak sumber daya Linux

  • Lembar contekan perintah Linux
  • Lembar contekan perintah Linux tingkat lanjut
  • Kursus online gratis:Ikhtisar Teknis RHEL
  • Lembar contekan jaringan Linux
  • Lembar contekan SELinux
  • Lembar contekan perintah umum Linux
  • Apa itu container Linux?
  • Artikel Linux terbaru kami

Kecuali program init itu sendiri, semua program ini adalah skrip yang terbuka dan mudah diketahui. Dimungkinkan untuk membaca skrip ini dan mempelajari dengan tepat apa yang terjadi selama seluruh proses startup, tetapi saya rasa tidak banyak sysadmin yang benar-benar melakukannya. Setiap skrip awal diberi nomor sehingga memulai layanan yang dimaksudkan dalam urutan tertentu. Layanan dimulai secara serial, dan hanya satu layanan yang dimulai pada satu waktu.

systemd, dikembangkan oleh Red Hat's Lennart Poettering dan Kay Sievers, adalah sistem kompleks dari executable biner terkompilasi yang besar yang tidak dapat dimengerti tanpa akses ke kode sumber. Ini adalah open source, jadi "akses ke kode sumber" tidak sulit, hanya kurang nyaman. systemd tampaknya mewakili sanggahan yang signifikan dari beberapa prinsip filosofi Linux. Sebagai biner, systemd tidak langsung terbuka untuk sysadmin untuk melihat atau membuat perubahan yang mudah. systemd mencoba melakukan segalanya, seperti mengelola layanan yang berjalan, sambil memberikan informasi status yang jauh lebih banyak daripada SystemV. Itu juga mengelola perangkat keras, proses, dan grup proses, pemasangan sistem file, dan banyak lagi. systemd hadir di hampir setiap aspek dari host Linux modern, menjadikannya alat satu atap untuk manajemen sistem. Semua ini jelas melanggar prinsip bahwa program harus kecil dan setiap program harus melakukan satu hal dan melakukannya dengan baik.

Mengapa saya lebih memilih systemd

Saya lebih suka systemd sebagai mekanisme startup saya karena ini memulai layanan sebanyak mungkin secara paralel, tergantung pada tahap saat ini dalam proses startup. Ini mempercepat startup secara keseluruhan dan membawa sistem host ke layar login lebih cepat daripada SystemV.

systemd mengelola hampir setiap aspek dari sistem Linux yang sedang berjalan. Itu dapat mengelola layanan yang berjalan sambil memberikan informasi status yang jauh lebih banyak daripada SystemV. Itu juga mengelola perangkat keras, proses dan grup proses, pemasangan sistem file, dan banyak lagi. systemd hadir di hampir setiap aspek sistem operasi Linux modern, menjadikannya alat satu atap untuk manajemen sistem. (Apakah ini terdengar familiar?)

Alat systemd adalah biner yang dikompilasi, tetapi rangkaian alat terbuka karena semua file konfigurasi adalah file teks ASCII. Konfigurasi startup dapat dimodifikasi melalui berbagai GUI dan alat baris perintah, serta menambahkan atau memodifikasi berbagai file konfigurasi agar sesuai dengan kebutuhan lingkungan komputasi lokal tertentu.

Masalah sebenarnya

Apakah Anda pikir saya tidak bisa menyukai kedua sistem startup? Saya melakukannya, dan saya dapat bekerja dengan salah satunya.

Menurut pendapat saya, masalah sebenarnya dan akar penyebab dari sebagian besar kontroversi antara SystemV dan systemd adalah bahwa tidak ada pilihan pada level sysadmin. Pilihan apakah akan menggunakan SystemV atau systemd telah dibuat oleh pengembang, pengelola, dan pembuat paket dari berbagai distribusi—tetapi dengan alasan yang bagus. Mengambil dan mengganti sistem init, karena sifatnya yang ekstrim dan invasif, memiliki banyak konsekuensi yang akan sulit diatasi di luar proses desain distribusi.

Terlepas dari kenyataan bahwa pilihan ini dibuat untuk saya, host Linux saya boot dan berfungsi, yang biasanya paling saya pedulikan. Sebagai pengguna akhir dan bahkan sebagai sysadmin, perhatian utama saya adalah apakah saya dapat menyelesaikan pekerjaan saya, pekerjaan seperti menulis buku dan artikel ini, menginstal pembaruan, dan menulis skrip untuk mengotomatiskan semuanya. Selama saya bisa melakukan pekerjaan saya, saya tidak terlalu peduli dengan urutan awal yang digunakan di distro saya.

Saya peduli ketika ada masalah saat startup atau manajemen layanan. Terlepas dari sistem startup mana yang digunakan pada host, saya cukup tahu untuk mengikuti urutan kejadian untuk menemukan kegagalan dan memperbaikinya.

Mengganti SystemV

Ada upaya sebelumnya untuk mengganti SystemV dengan sesuatu yang sedikit lebih modern. Selama sekitar dua rilis, Fedora menggunakan sesuatu yang disebut Pemula untuk menggantikan SystemV yang menua, tetapi itu tidak menggantikan init dan tidak memberikan perubahan yang saya perhatikan. Karena Pemula tidak memberikan perubahan signifikan pada masalah seputar SystemV, upaya ke arah ini dengan cepat dibatalkan demi systemd.

Terlepas dari kenyataan bahwa sebagian besar pengembang Linux setuju bahwa mengganti startup SystemV yang lama adalah ide yang bagus, banyak pengembang dan sysadmin tidak menyukai systemd untuk itu. Daripada mengulangi semua yang disebut masalah yang dimiliki — atau dimiliki orang — dengan systemd, saya akan merujuk Anda ke dua artikel bagus, jika agak lama, yang harus mencakup hampir semua hal. Linus Torvalds, pencipta kernel Linux, tampaknya tidak tertarik. Dalam artikel ZDNet 2014, Linus Torvalds dan lainnya di systemd Linux , Linus jelas tentang perasaannya.

"Saya sebenarnya tidak memiliki pendapat yang kuat tentang systemd itu sendiri. Saya memiliki masalah dengan beberapa pengembang inti yang menurut saya terlalu angkuh tentang bug dan kompatibilitas, dan saya pikir beberapa detail desainnya gila (saya tidak menyukai log biner, misalnya), tetapi itu adalah detail, bukan masalah besar."

Jika Anda tidak tahu banyak tentang Linus, saya dapat memberitahu Anda bahwa jika dia tidak menyukai sesuatu, dia sangat blak-blakan, eksplisit, dan cukup jelas tentang ketidaksukaan itu. Dia menjadi lebih diterima secara sosial dalam caranya mengatasi ketidaksukaannya tentang berbagai hal.

Pada tahun 2013, Poettering menulis posting blog yang panjang di mana ia menyanggah mitos tentang systemd sambil memberikan wawasan tentang beberapa alasan untuk membuatnya. Ini adalah bacaan yang sangat bagus, dan saya sangat merekomendasikannya.

tugas systemd

Bergantung pada opsi yang digunakan selama proses kompilasi (yang tidak dipertimbangkan dalam seri ini), systemd dapat memiliki sebanyak 69 executable biner yang melakukan tugas-tugas berikut, antara lain:

  • Program systemd berjalan sebagai PID 1 dan menyediakan startup sistem sebanyak mungkin layanan secara paralel, yang, sebagai efek samping, mempercepat waktu startup secara keseluruhan. Itu juga mengatur urutan shutdown.
  • Program systemctl menyediakan antarmuka pengguna untuk manajemen layanan.
  • Dukungan untuk skrip awal SystemV dan LSB ditawarkan untuk kompatibilitas mundur.
  • Manajemen dan pelaporan layanan menyediakan lebih banyak data status layanan daripada SystemV.
  • Ini termasuk alat untuk konfigurasi sistem dasar, seperti nama host, tanggal, lokal, daftar pengguna yang masuk, menjalankan wadah dan mesin virtual, akun sistem, direktori dan pengaturan runtime, daemon untuk mengelola konfigurasi jaringan sederhana, sinkronisasi waktu jaringan , penerusan log, dan resolusi nama.
  • Ini menawarkan manajemen soket.
  • timer systemd menyediakan kemampuan mirip cron tingkat lanjut untuk menyertakan menjalankan skrip pada waktu yang relatif terhadap boot sistem, startup systemd, terakhir kali timer dimulai, dan banyak lagi.
  • Ini menyediakan alat untuk menganalisis tanggal dan waktu yang digunakan dalam spesifikasi pengatur waktu.
  • Memasang dan melepas sistem file dengan kesadaran hierarkis memungkinkan kaskade yang lebih aman dari sistem file terpasang.
  • Ini memungkinkan pembuatan dan pengelolaan positif file-file sementara, termasuk penghapusan.
  • Antarmuka ke D-Bus menyediakan kemampuan untuk menjalankan skrip saat perangkat dicolokkan atau dilepas. Hal ini memungkinkan semua perangkat, baik yang dapat dicolokkan atau tidak, diperlakukan sebagai plug-and-play, yang sangat menyederhanakan penanganan perangkat.
  • Alatnya untuk menganalisis urutan startup dapat digunakan untuk menemukan layanan yang paling memakan waktu.
  • Termasuk jurnal untuk menyimpan pesan log sistem dan alat untuk mengelola jurnal.

Arsitektur

Tugas tersebut dan lainnya didukung oleh sejumlah daemon, program kontrol, dan file konfigurasi. Gambar 1 menunjukkan banyak komponen milik systemd. Ini adalah diagram sederhana yang dirancang untuk memberikan gambaran umum tingkat tinggi, sehingga tidak mencakup semua program atau file individual. Juga tidak memberikan wawasan tentang aliran data, yang begitu kompleks sehingga akan menjadi latihan yang tidak berguna dalam konteks rangkaian artikel ini.

Eksposisi lengkap systemd akan mengambil buku sendiri. Anda tidak perlu memahami detail tentang bagaimana komponen systemd pada Gambar 1 cocok satu sama lain; cukup mengetahui tentang program dan komponen yang memungkinkan pengelolaan berbagai layanan Linux dan menangani file log dan jurnal. Tapi jelas bahwa systemd bukanlah monstrositas monolitik seperti yang dikatakan oleh beberapa pengkritiknya.

systemd sebagai PID 1

systemd adalah PID 1. Beberapa fungsinya, yang jauh lebih ekstensif daripada program init SystemV3 lama, adalah untuk mengelola banyak aspek dari host Linux yang sedang berjalan, termasuk memasang sistem file dan memulai serta mengelola layanan sistem yang diperlukan untuk memiliki host Linux yang produktif. Setiap tugas systemd yang tidak terkait dengan urutan startup berada di luar cakupan artikel ini (tetapi beberapa akan dieksplorasi nanti dalam seri ini).

Pertama, systemd memasang sistem file yang ditentukan oleh /etc/fstab , termasuk file swap atau partisi apa pun. Pada titik ini, ia dapat mengakses file konfigurasi yang terletak di /etc , termasuk miliknya. Ia menggunakan tautan konfigurasinya, /etc/systemd/system/default.target , untuk menentukan status atau target mana yang akan digunakan untuk booting host. default.target file adalah tautan simbolis ke file target yang sebenarnya. Untuk workstation desktop, ini biasanya akan menjadi graphical.target , yang setara dengan runlevel 5 di SystemV. Untuk server, defaultnya lebih cenderung menjadi multi-pengguna.target , yang seperti runlevel 3 di SystemV. darurat.target mirip dengan mode pengguna tunggal. Target dan layanan adalah unit sistem.

Tabel di bawah (Gambar 2) membandingkan target systemd dengan runlevel startup SystemV yang lama. systemd menyediakan alias target systemd untuk kompatibilitas mundur. Alias ​​target memungkinkan skrip—dan banyak sysadmin—untuk menggunakan perintah SystemV seperti init 3 untuk mengubah runlevel. Tentu saja, perintah SystemV diteruskan ke systemd untuk interpretasi dan eksekusi.

target systemd tingkat run SystemV alias target Deskripsi
default.target     Target ini selalu diberi alias dengan tautan simbolis ke multi-pengguna.target atau graphical.target . systemd selalu menggunakan default.target untuk memulai sistem. default.target tidak boleh diberi alias ke halt.target , matikan.target , atau boot ulang.target .
graphical.target 5 runlevel5.target Target multi-pengguna. dengan GUI
  4 runlevel4.target Tidak terpakai. Runlevel 4 identik dengan runlevel 3 di dunia SystemV. Target ini dapat dibuat dan disesuaikan untuk memulai layanan lokal tanpa mengubah multi-pengguna.target default default .
multi-pengguna.target 3 runlevel3.target Semua layanan berjalan, tetapi hanya antarmuka baris perintah (CLI)
  2 runlevel2.target Multi-pengguna, tanpa NFS, tetapi semua layanan non-GUI lainnya berjalan
rescue.target 1 runlevel1.target Sistem dasar, termasuk memasang sistem file dengan hanya menjalankan layanan paling dasar dan shell penyelamat di konsol utama
darurat.target S   Mode pengguna tunggal—tidak ada layanan yang berjalan; sistem file tidak dipasang. Ini adalah tingkat operasi paling dasar dengan hanya shell darurat yang berjalan di konsol utama bagi pengguna untuk berinteraksi dengan sistem.
halt.target     Menghentikan sistem tanpa mematikannya
boot ulang.target 6 runlevel6.target Mulai ulang
matikan.target 0 runlevel0.target Menghentikan sistem dan mematikan daya

Setiap target memiliki satu set dependensi yang dijelaskan dalam file konfigurasinya. systemd memulai dependensi yang diperlukan, yang merupakan layanan yang diperlukan untuk menjalankan host Linux pada tingkat fungsionalitas tertentu. Ketika semua dependensi yang tercantum dalam file konfigurasi target dimuat dan dijalankan, sistem berjalan pada level target tersebut. Pada Gambar 2, target dengan fungsionalitas paling banyak berada di bagian atas tabel, dengan fungsionalitas menurun ke bagian bawah tabel.

systemd juga melihat direktori init SystemV lama untuk melihat apakah ada file startup di sana. Jika demikian, systemd menggunakannya sebagai file konfigurasi untuk memulai layanan yang dijelaskan oleh file. Layanan jaringan yang tidak digunakan lagi adalah contoh bagus dari layanan yang masih menggunakan file startup SystemV di Fedora.

Gambar 3 (di bawah) disalin langsung dari halaman manual boot. Ini menunjukkan peta urutan umum peristiwa selama startup systemd dan persyaratan pemesanan dasar untuk memastikan startup yang sukses.

 cryptsetup-pre.target br />  debugfs, ...)                                    v    |
  | cryptsetup.target  |
  | (berbagai swap                                 |    |    remote-fs-pre.target
  |   devices...)                         | | | |
  | | | | | v
  | v                       local-fs-pre.target | | | (sistem file jaringan)
  | swap.target                       | | v     v                 |
  | | v           | remote-cryptsetup.target  |
  | | (Berbagai tingkat rendah (berbagai mount dan | | |
| | layanan:udevd, layanan fsck ...) | | remote-fs.target
| | tmpfiles, acak | | /
  |    |   seed, sysctl, ...)          v           | | /
  | | | local-fs.target    | | /
  | | | | | | /
  \____|______|_______________   ______|___________/             | /
                              \ /                                | /
                               v                                 | /
                        sysinit.target                           | /
                               | | /
        ______________________/|\_________           | /
       /              | | | \          | /
       | | | | | | /
       v              v        | v               | | /
  (berbagai       (berbagai      |  (berbagai            |          |/
   pengatur waktu...)      jalur...)   |   soket...)        | |
       | | | | | |
       v              v        | v               | |
 timers.target  paths.target   | sockets.target      | |
       | | | | v          |
       v              \_______ | _____/         rescue.service   |
                              \|/                     | |
v v |
basic.target rescue.target |
| |
                       ________v_________             |
                      /              | \            |
                      | | | |
v v v |
Display- (Berbagai Sistem (Berbagai Sistem |
Manajer. Layanan Layanan Layanan) |
| Diperlukan untuk | |
| UIS grafis) v            v
                      | | multi-pengguna.target
 layanan darurat    | | |
         | \_____________ | _____________/
         v                          \|/
 emergency.target                  v
            target grafis

sysinit.target dan basic.target target dapat dianggap sebagai pos pemeriksaan dalam proses startup. Meskipun salah satu tujuan desain systemd adalah untuk memulai layanan sistem secara paralel, layanan dan target fungsional tertentu harus dimulai sebelum layanan dan target lain dapat dimulai. Pos pemeriksaan ini tidak dapat dilewati sampai semua layanan dan target yang diperlukan oleh pos pemeriksaan tersebut terpenuhi.

sysinit.target tercapai ketika semua unit tempat bergantungnya telah selesai. Semua unit tersebut, memasang sistem file, menyiapkan file swap, memulai udev, menyetel benih generator acak, memulai layanan tingkat rendah, dan menyiapkan layanan kriptografi (jika satu atau lebih sistem file dienkripsi), harus diselesaikan tetapi, dalam sysinit.target , tugas-tugas tersebut dapat dilakukan secara paralel.

sysinit.target memulai semua layanan dan unit tingkat rendah yang diperlukan agar sistem berfungsi secara marginal dan yang diperlukan untuk memungkinkan perpindahan ke basic.target .

Setelah sysinit.target terpenuhi, systemd kemudian memulai semua unit yang diperlukan untuk memenuhi target berikutnya. Target dasar menyediakan beberapa fungsionalitas tambahan dengan memulai unit yang diperlukan untuk semua target berikutnya. Ini termasuk menyiapkan hal-hal seperti jalur ke berbagai direktori yang dapat dieksekusi, soket komunikasi, dan timer.

Terakhir, target tingkat pengguna, multi-pengguna.target atau graphical.target , dapat diinisialisasi. multi-pengguna.target harus dicapai sebelum dependensi target grafis dapat dipenuhi. Target yang digarisbawahi pada Gambar 3 adalah target startup biasa. Ketika salah satu dari target ini tercapai, startup telah selesai. Jika multi-pengguna.target adalah default, maka Anda akan melihat login mode teks di konsol. Jika graphical.target adalah default, maka Anda akan melihat login grafis; layar login GUI tertentu yang Anda lihat bergantung pada pengelola tampilan default Anda.

Halaman manual boot juga menjelaskan dan menyediakan peta boot ke dalam disk RAM awal dan proses penonaktifan sistem.

systemd juga menyediakan alat yang mencantumkan dependensi dari startup lengkap atau untuk unit tertentu. Unit adalah entitas sumber daya systemd yang dapat dikontrol yang dapat berkisar dari layanan tertentu, seperti httpd atau sshd, hingga timer, mount, soket, dan banyak lagi. Coba perintah berikut dan gulir ke seluruh hasilnya.

systemctl list-dependencies graphical.target 

Perhatikan bahwa ini sepenuhnya memperluas daftar unit target tingkat atas yang diperlukan untuk membawa sistem ke mode run target grafis. Gunakan --semua opsi untuk memperluas semua unit lainnya juga.

systemctl list-dependencies --all graphical.target 

Anda dapat menelusuri string seperti "target", "slice", dan "socket" menggunakan alat penelusuran kurang perintah.

Jadi sekarang, coba yang berikut ini.

systemctl list-dependencies multi-user.target 

dan

systemctl list-dependencies rescue.target 

dan

systemctl list-dependencies local-fs.target 

dan

systemctl list-dependencies dbus.service 

Alat ini membantu saya memvisualisasikan secara spesifik dependensi startup untuk Host yang sedang saya kerjakan. Silakan dan luangkan waktu menjelajahi pohon startup untuk satu atau lebih host Linux Anda. Tapi hati-hati karena halaman manual systemctl berisi catatan ini:

"Perhatikan bahwa perintah ini hanya mencantumkan unit yang saat ini dimuat ke dalam memori oleh manajer layanan. Secara khusus, perintah ini tidak cocok untuk mendapatkan daftar lengkap sama sekali dependensi terbalik pada unit tertentu, karena tidak akan mencantumkan dependensi dinyatakan oleh unit yang saat ini tidak dimuat."

Pemikiran terakhir

Bahkan sebelum masuk jauh ke dalam systemd, sudah jelas bahwa itu kuat dan kompleks. Jelas juga bahwa systemd bukanlah file biner tunggal, besar, monolitik, dan tidak dapat diketahui. Sebaliknya, ini terdiri dari sejumlah komponen dan sub-perintah yang lebih kecil yang dirancang untuk melakukan tugas-tugas tertentu.

Artikel berikutnya dalam seri ini akan membahas startup systemd secara lebih rinci, serta file konfigurasi systemd, mengubah target default, dan cara membuat unit layanan sederhana.

Sumber daya

Ada banyak informasi tentang systemd yang tersedia di internet, tetapi banyak yang singkat, tumpul, atau bahkan menyesatkan. Selain sumber daya yang disebutkan dalam artikel ini, halaman web berikut menawarkan informasi yang lebih mendetail dan andal tentang startup systemd.

  • Proyek Fedora memiliki panduan praktis yang baik untuk systemd. Ini memiliki hampir semua yang perlu Anda ketahui untuk mengonfigurasi, mengelola, dan memelihara komputer Fedora menggunakan systemd.
  • Proyek Fedora juga memiliki lembar contekan bagus yang merujuk silang perintah SystemV lama ke perintah systemd yang sebanding.
  • Untuk informasi teknis terperinci tentang systemd dan alasan pembuatannya, lihat deskripsi Freedesktop.org tentang systemd.
  • "Lebih banyak sistem menyenangkan" dari Linux.com menawarkan informasi dan tips sistem yang lebih canggih.

Ada juga serangkaian artikel yang sangat teknis untuk sysadmin Linux oleh Lennart Poettering, perancang dan pengembang utama systemd. Artikel-artikel ini ditulis antara April 2010 dan September 2011, tetapi masih relevan sekarang seperti dulu. Banyak hal bagus lainnya yang telah ditulis tentang systemd dan ekosistemnya didasarkan pada makalah ini.

  • Memikirkan kembali PID 1
  • systemd untuk Administrator, Bagian I
  • systemd untuk Administrator, Bagian II
  • systemd untuk Administrator, Bagian III
  • systemd untuk Administrator, Bagian IV
  • systemd untuk Administrator, Bagian V
  • systemd untuk Administrator, Bagian VI
  • systemd untuk Administrator, Bagian VII
  • systemd untuk Administrator, Bagian VIII
  • systemd untuk Administrator, Bagian IX
  • systemd untuk Administrator, Bagian X
  • systemd untuk Administrator, Bagian XI

Linux
  1. 10 alasan untuk mencintai Linux pada tahun 2021

  2. Mengapa programmer menyukai kemasan Linux

  3. 5 alasan mengapa saya suka coding di Linux

  1. Panduan praktis untuk belajar awk

  2. Kelola startup menggunakan systemd

  3. Memahami systemd saat startup di Linux

  1. 5 alasan sysadmin menyukai systemd

  2. Bagaimana belajar Linux adalah bahasa cinta kita

  3. Mengapa saya jatuh cinta dengan Antergos Linux