GNU/Linux >> Belajar Linux >  >> Linux

Cara Mendaftar Layanan di Linux

Sebagai administrator sistem, Anda mungkin berurusan dengan banyak layanan setiap hari.

Di Linux, layanan digunakan untuk banyak tujuan yang berbeda.

Mereka dapat digunakan untuk memulai server SSH di mesin Anda atau mereka dapat melakukan beberapa operasi pada jam atau hari tertentu.

Baik Anda menggunakan distribusi berbasis Debian atau RedHat, layanan kueri sangat mirip.

Namun, mengingat distribusi yang Anda gunakan, dan lebih khusus lagi sistem inisialisasi (init atau systemd), Anda mungkin harus menggunakan perintah yang berbeda.

Dalam tutorial ini, Anda akan mempelajari bagaimana Anda bisa, dengan manajer sistem Anda, mencantumkan semua layanan di mesin Linux Anda.

Tentukan pengelola sistem yang digunakan

Seperti yang mungkin Anda ketahui, distribusi terbaru menggunakan Pengelola sistem sistem .

Namun, tidak selalu demikian:di masa lalu, sebagian besar distribusi menggunakan manajer sistem SysVinit.

Akibatnya, sebenarnya ada dua cara untuk mengelola layanan Anda di sistem Linux.

Sebelum mempelajari perintah untuk membuat daftar layanan, Anda harus mengetahui pengelola sistem yang sedang Anda gunakan.

Untuk menentukan pengelola sistem Anda saat ini, cara termudah adalah menggunakan perintah “pstree” dan memeriksa proses pertama yang pernah dijalankan di sistem Anda.

$ pstree | head -n 5

Jika Anda melihat “systemd “, itu jelas berarti Anda sedang menggunakan systemd. Namun, jika Anda melihat “init “, artinya Anda menggunakan SysVinit.

Pada Ubuntu 14.04, yang masih menggunakan sistem init lama, “pstree” Anda mungkin terlihat seperti ini.

Mencantumkan Layanan menggunakan systemctl

Cara termudah untuk membuat daftar layanan di Linux, saat Anda menggunakan sistem systemd, adalah dengan menggunakan perintah "systemctl" diikuti dengan "list-units". Anda dapat menentukan opsi “–type=service” untuk membatasi hasil hanya pada layanan.

$ systemctl list-units --type=service

Secara default, perintah ini hanya akan menampilkan layanan yang aktif atau layanan yang gagal di sistem Anda. Pada tangkapan layar di atas, sebagian besar layanan aktif tetapi logrotate (disorot dengan warna merah) ditandai sebagai gagal.

Luar biasa, Anda belajar bagaimana Anda dapat dengan mudah mendaftarkan layanan Anda di server Linux.

Namun, seperti yang mungkin Anda perhatikan, Anda tidak memiliki akses ke semua layanan :bagaimana dengan layanan yang tidak aktif? Bagaimana dengan layanan yang tidak dimuat oleh systemd saat boot?

Mencantumkan Semua Layanan di Linux menggunakan unit-daftar

Untuk membuat daftar semua layanan, yang berarti aktif dan tidak aktif, Anda harus menggunakan perintah “systemctl list-units” diikuti dengan opsi “–all”.

Demikian pula, Anda dapat membatasi hasil ke layanan hanya dengan menggunakan filter jenis.

$ systemctl list-units --type=service --all

Seperti yang Anda lihat, layanan tidak aktif juga terdaftar yang mungkin nyaman jika Anda hanya menulis layanan Anda dan merawatnya dalam daftar.

Dalam hal ini, hanya layanan yang dimuat yang terdaftar. Saat boot, systemd memuat file unit dan mungkin memilih untuk tidak memuat layanan tertentu jika ternyata tidak akan digunakan oleh sistem.

Akibatnya, ada perbedaan nyata antara “dimuat ” dan “dipasang " jasa. Layanan “Terpasang” berarti bahwa file unit dapat ditemukan di jalur yang sesuai.

Mencantumkan Layanan Berdasarkan Negara Bagian

Dalam beberapa kasus, Anda mungkin hanya tertarik pada layanan yang gagal. Untuk itu, Anda dapat menentukan status yang Anda cari sebagai opsi dari perintah systemctl.

$ systemctl list-units --state=<state>

$ systemctl list-units --state=<state1>,<state2>

Di mana "status" dapat berupa salah satu dari nilai berikut:aktif, tidak aktif, mengaktifkan, menonaktifkan, gagal, tidak ditemukan, atau mati.

Misalnya, jika kita hanya tertarik pada layanan "gagal", kita akan menjalankan perintah berikut

$ systemctl list-units --state=failed

Mencantumkan Semua File Layanan menggunakan list-unit-files

Terakhir, jika Anda tertarik dengan “dimuat “, “dipasang “, “dinonaktifkan ” serta “diaktifkan ” file layanan, ada perintah lain yang mungkin cukup berguna.

Untuk membuat daftar semua file layanan yang tersedia, Anda harus menggunakan perintah “systemctl” diikuti dengan “list-unit-files”. Secara opsional, Anda dapat menentukan jenisnya dengan menggunakan opsi “–type=service”.

$ systemctl list-unit-files --type=service

Atau, Anda dapat menggunakan perintah “grep” untuk mencari jalur tertentu di sistem Anda yang mungkin berisi file layanan.

$ ls -l /etc/systemd/system /usr/lib/systemd/service | egrep .service$

Selamat, Anda telah mempelajari cara membuat daftar layanan jika sistem Anda menggunakan systemd!

Mencantumkan Layanan menggunakan layanan

Cara termudah untuk membuat daftar layanan di Linux, ketika Anda menggunakan sistem init SystemV, adalah dengan menggunakan perintah “service” diikuti dengan opsi “–status-all”. Dengan cara ini, Anda akan disajikan daftar lengkap layanan di sistem Anda.

$ service --status-all

Seperti yang Anda lihat, setiap layanan terdaftar didahului oleh simbol di bawah tanda kurung. Simbol-simbol itu berarti :

  • + :berarti layanan berjalan;
  • :berarti layanan tidak berjalan sama sekali;
  • ? :berarti Ubuntu tidak dapat memberi tahu apakah layanan berjalan atau tidak.

Jadi mengapa beberapa layanan mengetahui apakah mereka berjalan atau tidak, dan beberapa tidak bisa?

Semuanya bermuara pada implementasi skrip init. Dalam beberapa skrip, seperti skrip udev misalnya, Anda dapat melihat bahwa “status ” perintah diimplementasikan.

Ini tidak berlaku untuk “dns-clean ” script misalnya yang merupakan alasan mengapa Anda memiliki tanda tanya ketika Anda menanyakan layanan ini.

Mencantumkan Layanan SysVinit di Folder

Cara lain untuk membuat daftar daftar layanan saat ini adalah dengan menggunakan perintah “ls” pada folder yang berisi semua skrip di sistem Linux, yaitu “/etc/init.d”.

$ ls -l /etc/init.d/*

Kesimpulan

Dalam tutorial ini, Anda mempelajari bagaimana Anda dapat dengan mudah membuat daftar layanan di sistem Linux apakah Anda menggunakan systemd atau SysVinit.

Jika Anda tertarik untuk membuat layanan Anda sendiri, kami sarankan Anda melihat sumber daya berikut. Mereka mungkin sangat berguna untuk mencapainya dengan benar.

  • Menulis skrip startup untuk sistem init;
  • Memulai layanan saat boot menggunakan systemd;

Jika Anda tertarik dengan Administrasi Sistem Linux , kami memiliki bagian lengkap tentang subjek ini di situs web, jadi pastikan untuk memeriksanya.


Linux
  1. Cara mengkonfigurasi Virtualisasi di Redhat Linux

  2. Cara Mengatur atau Mengubah Nama Host Sistem di Linux

  3. Cara Mendaftar Layanan Systemd di Linux

  1. Cara Menggunakan Perintah SS Linux

  2. Cara Mengelola dan Mendaftar Layanan di Linux

  3. Cara Mengubah Nama Host di Linux

  1. Cara Mendaftar Proses yang Berjalan di Linux

  2. Cara Mendaftar Pengguna di Linux

  3. Cara Memeriksa Versi Linux