Kelola layanan di distribusi GNU / Linux Anda

skema Linux init

Saat bekerja dengan layanan di distroBergantung pada jenis sistem yang Anda gunakan (SysV init, Upstart, systemd,…), cara layanan dapat dihentikan, dimulai, dihentikan, direstart, dll., Dapat bervariasi. Ini adalah titik di mana banyak orang meragukan bagaimana hal itu sebenarnya dilakukan, dan fakta bahwa ada beberapa sistem yang berbeda tidak membantu beberapa pengguna yang tidak berpengalaman, yang mencoba melakukannya dengan perintah yang salah.

Oleh karena itu, saya akan menunjukkan tutorial sederhana yang akan menjelaskan kepada Anda bagaimana Anda dapat bekerja di distro Anda, apa pun itu. Untuk melakukan ini, hal pertama yang harus Anda jelaskan adalah jenis iblis yang Anda gunakan. Seperti yang saya katakan, tidak semua distro menggunakan hal yang sama jenis sistem startup. Faktanya, seperti yang Anda ketahui, beberapa telah menentang systemd baru dan telah menghasilkan garpu atau turunan dengan SysV lama, seperti halnya dengan Devuan dibandingkan dengan Debian ...

Bagaimana saya tahu sistem yang digunakan distro saya? Nah, Anda dapat mengetahuinya dengan mencari rute ini, dan jika Anda memilikinya, Anda akan memiliki sistem itu di distro Anda:

  • Untuk mengetahui apakah Anda memiliki systemd: temukan jalur / usr / lib / systemd
  • Untuk mengetahui apakah Anda memiliki pemula: temukan jalur lain ini / usr / share / pemula
  • Untuk mengetahui apakah Anda memiliki SysV init: temukan jalur /etc/init.d
  • Jerami lainMeskipun sedikit lebih jarang, dalam kasus-kasus tertentu, Anda dapat melakukan sesuatu yang serupa jika Anda curiga mereka tidak seperti yang disebutkan di atas.

Cara lain untuk membuatnya lebih mudah, karena itu sama untuk semua orang, itu adalah mencari info di / proc tentang PID = 1, yaitu, proses pertama dari mana sisanya hang dan yang persis sama dengan daemon startup ini. Untuk melakukan ini, cukup jalankan perintah berikut dan itu akan mengembalikan nama:

sudo stat /proc/1/exe

Sekarang Anda tahu sistem apa yang Anda miliki, oleh karena itu, ayo perintah yang dapat Anda gunakan untuk mengelola layanan:

  • Inisiasi sistem: /etc/init.d/[service_demon_name] [tindakan]
  • systemd: systemctl [tindakan] [service_demon_name]
  • Pemula: layanan [nama_demon_layanan] [tindakan]
  • lain: Jika Anda menggunakan sistem yang berbeda, Anda sebaiknya melihat manual. Misalnya, beberapa kasus yang jarang terjadi di Linux dan Unix lainnya mungkin menggunakan sinyal dari proses SIGHUP untuk menyetel ulang layanan: kill -HUP $ (cat / var / run / [service-PID])

Anda harus ganti [tindakan] untuk apa yang perlu Anda lakukan. Misalnya, jika Anda perlu memulai ulang, maka gunakan reset, jika Anda ingin berhenti gunakan berhenti, jika Anda ingin mulai menggunakan bintang, dll. Dan ganti [daemon_name] dengan nama daemon layanan yang ingin Anda mulai. Sebagai contoh:

systemctl reset httpd

Saya harap Anda lebih jelas sekarang.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Bertanggung jawab atas data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.

  1.   CRISTIAN dijo

    Apakah masih ada sistem dengan pemula? Saya pikir hanya beberapa Ubuntu lama.
    Bahkan jika Anda memiliki systemd Anda masih dapat memiliki folder etc / init.d
    Saya lebih suka menggunakan beberapa perintah lain seperti ps atau pstree, dan tidak menyalahgunakan sudo-this-sudo-that.
    salam

  2.   CRISTIAN dijo

    Perintah "service" bekerja pada sistem init.d dan systemd