GNU/Linux >> Belajar Linux >  >> Linux

Menambahkan layanan baru ke sistem Linuxd

Karena Sistem V perlahan-lahan dihapus, kemungkinan besar seseorang perlu belajar bagaimana menyesuaikan diri dengan SYSTEMD yang jauh lebih kuat. Misalnya, salah satu fitur yang berguna adalah secara otomatis memulai ulang layanan yang berhenti dengan sendirinya. Fitur-fitur tersebut ditemukan misalnya di BluePill dll. Dengan Systemd tidak perlu menggunakan pengawas tambahan seperti itu. Berikut adalah beberapa informasi yang sangat mendasar tentang cara membuat layanan baru yang disebut 'unit' di bawah Systemd di Linux.
Systemd memiliki file konfigurasinya di:/etc/systemd/
Dalam contoh ini saya akan membuat file konfigurasi Systemd untuk layanan sederhana bernama istatd yang harus memulai daemon tunggal dengan perintah:/usr/local/bin/istatd -d
Untuk membuat layanan yang hanya dapat dioperasikan oleh root, file konfigurasi barunya harus dibuat sebagai:/etc/systemd/system/istatd.service
touch /etc/systemd/system/istatd.service
chmod 644 /etc/systemd/system/istatd.service

Konten:
[Unit]
Description=IStad iPhone monitoring service
#
[Service]
Type=forking
ExecStart=/usr/local/bin/istatd -d
ExecStop=/usr/bin/killall istatd
Restart=on-failure
RestartSec=3
#
[Install]
WantedBy=default.target

File konfigurasi ini untuk unit istatd akan memulai/menghentikan daemon dan memulai kembali jika berhenti sendiri 3 detik setelah terdeteksi oleh pengawas hilangnya daemon dari daftar proses.
Untuk mengaktifkan konfigurasi baru dan memulai layanan, jalankan:
systemctl daemon-reload
service istatd start

Perintah yang mungkin untuk start/stop/restart/status dan debugging adalah:
systemctl {start|stop|restart|status} istatd
OR
service istatd {start|stop|restart|status}

Untuk Systemd debugging gunakan perintah:
journalctl -xn
Setelah ada perubahan pada salah satu file konfigurasi Systemd, Anda harus menjalankan perintah:
systemctl enable istatd
systemctl daemon-reload

Untuk informasi lebih lanjut tentang cara kerja Systemd dan cara membuat file konfigurasinya, lihat:
http://patrakov.blogspot.de/2011/01/writing-systemd-service-files.html
dan
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sect-Managing_Services_with_systemd-Unit_Files.html

Beberapa perintah berguna lainnya:

Hapus layanan sepenuhnya:
systemctl stop [servicename]
systemctl disable [servicename]
systemctl daemon-reload
systemctl reset-failed


Linux
  1. Linux – Lokasi Skrip Fsck?

  2. 'portmap' layanan OS Linux

  3. Layanan OS Linux 'diaudit'

  1. Layanan OS Linux 'nfs'

  2. Layanan OS Linux 'microcode_ctl'

  3. Layanan OS Linux 'NetFS'

  1. Layanan OS Linux 'hplip'

  2. Layanan OS Linux 'ldap'

  3. Layanan OS Linux 'yppasswdd'