Gunakan systemd untuk Memulai Layanan Linux saat Boot ⋆ ALexHost SRL
Uji kemampuan Anda di semua layanan Hosting kami dan dapatkan diskon 15%!

Gunakan kode saat checkout:

Skills
04.06.2025

Gunakan systemd untuk Memulai Layanan Linux saat Boot

Bagi mereka yang mengelola aplikasi atau layanan pada hosting VPS Linux, memastikan bahwa layanan penting dimulai secara otomatis saat boot sangat penting untuk menjaga operasi tanpa gangguan. Dengan menggunakan systemd, sebuah sistem inisialisasi yang tangguh dan fleksibel, Anda dapat dengan mudah mengonfigurasi layanan untuk diluncurkan tepat saat sistem dimulai, yang sangat penting untuk aplikasi web, basis data, dan layanan penting lainnya yang berjalan di lingkungan VPS. Panduan ini akan memandu Anda dalam menyiapkan unit layanan systemd khusus, sehingga Anda dapat mengotomatiskan pengaktifan layanan, merampingkan manajemen, dan memastikan keandalan pada pengaturan hosting VPS Linux Anda.

Gunakan systemd untuk Memulai Layanan Linux saat Boot

systemd adalah sistem inisialisasi modern yang digunakan oleh banyak distribusi Linux untuk mengelola layanan dan sumber daya sistem. Salah satu fitur utamanya adalah kemampuan untuk memulai layanan secara otomatis saat boot, memastikan bahwa aplikasi dan layanan penting sudah aktif dan berjalan segera setelah sistem dimulai. Artikel ini akan memandu Anda melalui langkah-langkah untuk membuat unit layanan systemd dan mengaktifkannya untuk memulai saat boot.

Apa itu systemd?

systemd adalah sistem init yang menggantikan sistem init yang lebih lama seperti SysVinit dan Upstart. Ini mengelola proses dan layanan sistem, memungkinkan paralelisasi start-up layanan, memulai daemon sesuai permintaan, dan kontrol sumber daya yang lebih baik. Dengan struktur file unit, systemd menyediakan cara yang fleksibel untuk mengelola layanan, soket, perangkat, dan sumber daya sistem lainnya.

Membuat Layanan systemd

Untuk memulai sebuah servis pada saat boot menggunakan systemd, Anda perlu membuat berkas unit servis. File ini berisi semua informasi yang diperlukan oleh systemd untuk mengelola layanan. Berikut ini cara membuat dan mengkonfigurasi file unit layanan:

Langkah 1: Periksa Direktori Kerja

Buka berkas unit layanan Anda untuk memeriksa direktori WorkingDirektori:

sudo nano /etc/systemd/system/myapp.service

Temukan baris WorkingDirektori. Seharusnya terlihat seperti ini ( Cari: Buat File Unit Layanan):

WorkingDirektori=/etc/systemd/myapp

Verifikasi bahwa direktori yang ditentukan ada:

ls -l /etc/systemd/myapp

* /path/to/myapp – ganti dengan path yang sebenarnya ingin Anda gunakan. Jika Anda menerima kesalahan bahwa direktori tersebut tidak ada, Anda harus membuatnya.

Langkah 2: Membuat Direktori Kerja

Jika direktori tidak ada, buatlah:

sudo mkdir -p /etc/systemd/myapp

Tetapkan izin yang sesuai agar pengguna yang ditentukan dalam arahan Pengguna pada layanan Anda dapat mengaksesnya. Misalnya, jika layanan Anda berjalan sebagai myuser:

sudo chown myuser:myuser /etc/systemd/myapp

Membuat berkas unit layanan

  1. Buka terminal pada sistem Linux Anda.
  2. Buat berkas unit layanan baru pada direktori /etc/systemd/system/. Nama file harus diakhiri dengan .service. Sebagai contoh, untuk membuat sebuah service untuk aplikasi kustom bernama myapp, Anda akan menjalankan:
    sudo nano /etc/systemd/system/myapp.service
  3. Tambahkan konten berikut ini ke berkas, modifikasi seperlunya untuk aplikasi Anda:
    [Unit]
    Description=My Custom Application
    After=network.target
    [Service]
    ExecStart=/usr/bin/myapp
    Restart=always
    User=myuser
    WorkingDirectory=/etc/systemd/myapp
    [Install]
    WantedBy=multi-user.target
  • bagian [Unit]: Bagian ini menyediakan metadata dan ketergantungan untuk layanan.
      • Deskripsi: Deskripsi singkat tentang layanan.
      • Setelah: Menentukan bahwa layanan harus dimulai setelah jaringan tersedia.
  • bagian [Layanan]: Bagian ini mendefinisikan bagaimana layanan berperilaku.
      • ExecStart: Perintah untuk memulai layanan. Ganti /usr/bin/myapp dengan jalur ke aplikasi yang dapat dieksekusi.
      • Restart: Menentukan perilaku memulai ulang. selalu berarti layanan akan dimulai ulang jika terjadi kerusakan.
      • User: Menentukan pengguna yang seharusnya menjalankan layanan.
      • WorkingDirektori: Menetapkan direktori kerja untuk layanan.
  • bagian [Instal]: Bagian ini mendefinisikan bagaimana layanan harus diaktifkan.
      • WantedBy: Bagian ini mendefinisikan target di mana layanan harus dimulai. multi-user.target adalah target umum untuk layanan pengguna.

Langkah 3: Verifikasi Izin

Periksa apakah pengguna memiliki izin yang benar untuk mengakses direktori kerja:

ls -ld /etc/systemd/myapp

Pastikan bahwa perizinan mengizinkan pengguna untuk membaca dan mengeksekusi berkas dalam direktori ini.

Langkah 4: Menguji Eksekusi di Direktori Kerja

Pastikan aplikasi Anda dapat berjalan dari direktori kerja ini. Anda bisa mengujinya dengan beralih ke pengguna dan menavigasi ke direktori tersebut:

sudo -u myuser bash
cd /etc/systemd/myapp
/usr/bin/myapp
Periksa apakah aplikasi berjalan tanpa kesalahan. Jika gagal, pecahkan masalah pada aplikasi itu sendiri.

Langkah 5: Muat ulang systemd dan Mulai Layanan

Setelah memastikan direktori kerja ada dan diatur dengan benar, muat ulang konfigurasi systemd:

sudo systemctl daemon-reload

Coba mulai layanan lagi:

sudo systemctl start myapp.service

Langkah 6: Periksa Status

Periksa status layanan untuk mengetahui apakah layanan tersebut berhasil dimulai:

sudo systemctl status myapp.service

Langkah 7: Tinjau Log untuk Kesalahan Tambahan

Jika layanan masih gagal dimulai, tinjau log untuk informasi tambahan:

journalctl -u myapp.service

Langkah 8: (Opsional) Hentikan dan Nonaktifkan Layanan

Jika Anda perlu menghentikan layanan atau mencegahnya memulai saat boot, Anda dapat menggunakan perintah berikut:

  • Untuk menghentikan layanan:
    sudo systemctl stop myapp.service
  • Untuk menonaktifkan layanan agar tidak dimulai saat boot:
    sudo systemctl disable myapp.service

Kesimpulan

Menggunakan systemd untuk memulai layanan Linux pada saat boot adalah proses langsung yang meningkatkan keandalan dan manajemen sistem. Dengan membuat berkas unit layanan, Anda dapat menentukan bagaimana aplikasi Anda seharusnya berjalan dan memastikannya dimulai secara otomatis dengan sistem Anda. Metode ini tidak hanya menyederhanakan manajemen servis tetapi juga menyediakan fitur-fitur yang kuat untuk mengendalikan perilaku servis, menjadikan systemd alat yang penting untuk administrasi sistem Linux modern.

Dengan langkah-langkah ini, Anda dapat secara efektif mengatur dan mengelola layanan Anda sendiri, meningkatkan fungsionalitas keseluruhan lingkungan Linux Anda. Jika Anda menemukan masalah, meninjau log dengan journalctl dapat memberikan wawasan yang bermanfaat tentang apa yang mungkin salah.

Uji kemampuan Anda di semua layanan Hosting kami dan dapatkan diskon 15%!

Gunakan kode saat checkout:

Skills