Stasiun Kerja Online OnWorks Linux dan Windows

logo

Hosting Online Gratis untuk WorkStation

<Sebelumnya | Konten | Selanjutnya>

5.4. Layanan Pengelolaan‌‌


Kali menggunakan systemd sebagai sistem initnya, yang tidak hanya bertanggung jawab atas urutan boot, tetapi juga secara permanen bertindak sebagai manajer layanan berfitur lengkap, memulai dan memantau layanan.

systemd dapat ditanyakan dan dikendalikan dengan systemctl. Tanpa argumen apa pun, itu menjalankan systemctl daftar-unit perintah, yang menampilkan daftar yang aktif unit. Jika kamu lari status systemctl, output menunjukkan gambaran hierarkis dari layanan yang berjalan. Membandingkan kedua output, Anda segera melihat bahwa ada banyak jenis unit dan layanan hanya satu di antaranya.

Setiap layanan diwakili oleh unit layanan, yang dijelaskan oleh file layanan yang biasanya dikirimkan dalam

/lib/systemd/system/ (atau /run/systemd/system/, atau /etc/systemd/system/; mereka terdaftar berdasarkan urutan kepentingan yang meningkat, dan yang terakhir menang). Masing-masing mungkin dimodifikasi oleh yang lain Nama layanan.service.d/*.conf file dalam set direktori yang sama. File unit tersebut adalah file teks biasa yang formatnya terinspirasi oleh file "*.ini" yang terkenal dari Microsoft Windows, dengan: kunci

= nilai pasangan dikelompokkan antara [bagian] header. Di sini kita melihat file layanan sampel untuk /lib/systemd/system/ssh.service:


[Satuan]

Description=Server OpenBSD Secure Shell After=network.target auditd.service ConditionPathExists=!/etc/ssh/sshd_not_to_be_run


[Layanan]

EnvironmentFile=-/etc/default/ssh ExecStart=/usr/sbin/sshd -D $SSHD_OPTS ExecReload=/bin/kill -HUP $MAINPID KillMode=proses

Restart=kegagalan RestartPreventExitStatus=255 Ketik=beritahu


[Memasang]

WantedBy=multi-pengguna.target Alias=sshd.service

[Satuan]

Description=Server OpenBSD Secure Shell After=network.target auditd.service ConditionPathExists=!/etc/ssh/sshd_not_to_be_run


[Layanan]

EnvironmentFile=-/etc/default/ssh ExecStart=/usr/sbin/sshd -D $SSHD_OPTS ExecReload=/bin/kill -HUP $MAINPID KillMode=proses

Restart=kegagalan RestartPreventExitStatus=255 Ketik=beritahu


[Memasang]

WantedBy=multi-pengguna.target Alias=sshd.service


Unit target adalah bagian lain dari desain systemd. Mereka mewakili keadaan yang diinginkan yang ingin Anda capai dalam hal unit yang diaktifkan (yang berarti layanan yang berjalan dalam hal unit layanan). Mereka ada terutama sebagai cara untuk mengelompokkan dependensi pada unit lain. Ketika sistem dimulai, ini memungkinkan unit yang diperlukan untuk mencapai default.target (yang merupakan symlink ke grafis.target, dan yang pada gilirannya tergantung pada multi-pengguna.target). Jadi semua dependensi target tersebut diaktifkan saat boot.

Ketergantungan tersebut diekspresikan dengan Ingin arahan pada unit sasaran. Tetapi Anda tidak perlu mengedit unit target untuk menambahkan dependensi baru, Anda juga dapat membuat symlink yang menunjuk ke

unit ketergantungan dalam / etc / systemd / system /nama-target.target.want/ direktori. Dan inilah tepatnya systemctl aktifkan foo.service melakukan. Saat Anda mengaktifkan layanan, Anda memberi tahu systemd untuk menambahkan ketergantungan pada target yang tercantum di Dicarioleh masuknya [Memasang] bagian dari file unit layanan. Sebaliknya, systemctl menonaktifkan foo.service menjatuhkan symlink yang sama dan dengan demikian ketergantungan.

Grafik aktif dan menonaktifkan perintah tidak mengubah apa pun terkait status layanan saat ini. Mereka hanya mempengaruhi apa yang akan terjadi pada boot berikutnya. Jika Anda ingin segera menjalankan layanan, Anda harus mengeksekusi sistemctl mulai foo.service. Sebaliknya, Anda dapat menghentikannya dengan sistemctl berhenti foo.service. Anda juga dapat memeriksa status layanan saat ini dengan status systemctl foo.service, yang berguna menyertakan baris terbaru dari log terkait. Setelah mengubah konfigurasi layanan, Anda mungkin ingin memuat ulang atau memulai ulang: operasi tersebut dilakukan dengan memuat ulang sistemctl foo.service dan sistemctl restart foo. melayani masing.


gambar

# status sistemctl postgresql

● postgresql.service - RDBMS PostgreSQL

Dimuat: dimuat (/ lib/systemd/system/postgresql.service; dinonaktifkan; preset vendor:

dengan disabilitas)

Aktif: tidak aktif (mati)

# ls -al /etc/systemd/system/multi-user.target.wants/postgresql.service

ls: tidak dapat mengakses '/etc/systemd/system/multi-user.target.wants/postgresql.service': Tidak

file atau direktori tersebut

# systemctl memungkinkan postgresql

[...]

# ls -al /etc/systemd/system/multi-user.target.wants/postgresql.service

lrwxrwxrwx 1 akar akar 38 21 Apr 16:21 /etc/systemd/system/multi-user.target.wants/

postgresql.service -> /lib/systemd/system/postgresql.service

# status sistemctl postgresql

● postgresql.service - RDBMS PostgreSQL

Dimuat: dimuat (/ lib/systemd/system/postgresql.service; diaktifkan; preset vendor:

dengan disabilitas)

Aktif: tidak aktif (mati)

# systemctl mulai postgresql

# status sistemctl postgresql

● postgresql.service - RDBMS PostgreSQL

Dimuat: dimuat (/ lib/systemd/system/postgresql.service; diaktifkan; preset vendor:

dengan disabilitas)

Aktif: aktif (keluar) sejak Kamis 2016-04-21 16:22:29 EDT; 2 detik yang lalu Proses: 6355 ExecStart=/bin/true (kode=keluar, status=0/SUCCESS)

PID Utama: 6355 (kode=keluar, status=0/SUKSES)


21 Apr 16:22:29 kali-rolling systemd[1]: Memulai PostgreSQL RDBMS... 21 Apr 16:22:29 kali-rolling systemd[1]: Memulai PostgreSQL RDBMS.

Komputasi Awan OS Teratas di OnWorks: