“Cara Membuat dan Menjalankan Service Baru di Systemd Menggunakan Shell dan Bash Script”
Daftar Isi
Pengantar
Systemd adalah sebuah sistem init dan manajer sistem yang digunakan dalam distribusi Linux. Ini bertugas menginisialisasi sistem setelah proses boot dan mengelola layanan (service) selama runtime. Dibandingkan sistem init tradisional seperti System V init, systemd dirancang untuk meningkatkan performa dan menawarkan fitur tambahan yang lebih modern.
Fitur Utama Systemd:
- Parallelization
Systemd menggunakan teknik inisialisasi paralel sehingga proses boot lebih cepat dibandingkan sistem init tradisional. - Unit Files
Konfigurasi layanan di systemd disebut unit files yang menggantikan skrip inisialisasi tradisional. Unit files ini memiliki format standar dan mendukung berbagai jenis layanan seperti:service
(layanan)socket
(soket)timer
(jadwal)mount
(sistem berkas yang di-mount)
- Dependency Management
Systemd mengelola dependensi layanan dengan lebih baik menggunakan pendekatan deklaratif. - Logging Terintegrasi
Systemd menggunakan journald untuk mencatat log sistem dan layanan, memungkinkan pencarian log yang terpusat dan mudah. - Targets
Targets digunakan untuk menggantikan runlevel dalam System V. Contoh target:multi-user.target
,graphical.target
. - D-Bus Integration
Menggunakan D-Bus untuk komunikasi antar proses sehingga mempermudah pengelolaan layanan.
Perintah Dasar Systemd:
- Mengelola Layanan
systemctl start [nama_layanan]
: Memulai layanan.systemctl stop [nama_layanan]
: Menghentikan layanan.systemctl restart [nama_layanan]
: Memulai ulang layanan.systemctl status [nama_layanan]
: Mengecek status layanan.
- Mengaktifkan/Nonaktifkan Layanan
systemctl enable [nama_layanan]
: Mengaktifkan layanan agar berjalan otomatis saat boot.systemctl disable [nama_layanan]
: Menonaktifkan layanan dari boot.
- Mengecek Status Sistem
systemctl list-units
: Menampilkan semua unit aktif.systemctl is-active [nama_unit]
: Mengecek apakah unit aktif.
Keunggulan Systemd:
- Boot lebih cepat karena inisialisasi paralel.
- Standar konfigurasi modern dengan unit files yang lebih mudah dikelola.
- Dependency management yang canggih.
- Logging terintegrasi melalui journald.
Cara Membuat dan Menjalankan Service Baru di Systemd Menggunakan Shell dan Bash Script
Misalkan yang akan di buat systemd nya script berikut :
sh /opt/pentaho/data-integration/kitchen.sh -file="/opt/pentaho/JobModelTrxQoinApp.kjb"
- Buat systemd baru
nano /etc/systemd/system/pentaho.service
- Kemudian masukan file berikut
[Unit]
Description=Pentho Job
After=network.target
[Service]
ExecStart=/opt/pentaho/data-integration/kitchen.sh -file="/opt/pentaho/JobModelTrxQoinApp.kjb"
Type=simple
StandardOutput=append:/var/log/pentaho/kitchen-job.log
StandardError=append:/var/log/pentaho/kitchen-job.log
[Install]
WantedBy=multi-user.target
- Tambahkan file log
mkdir -p /var/log/pentaho
touch /var/log/pentaho/kitchen-job.log
chmod a+x /var/log/pentaho/kitchen-job.log
- Jalankan service
systemctl daemon-reload
systemctl start pentaho.service
systemctl status pentaho.service
systemctl enable pentaho.service
- Selesai
Penutup
Sahabat Blog Learning & Doing demikianlah penjelasan mengenai Cara Membuat dan Menjalankan Service Baru di Systemd Menggunakan Shell dan Bash Script . Semoga Bermanfaat . Sampai ketemu lagi di postingan berikut nya.