Bagaimana cara menghentikan program yang berjalan saat startup di Linux. Saya ingin menghapus beberapa aplikasi dari startup agar mereka dapat dikelola oleh supervisord
mis. Apache2
Bagaimana cara menghentikan program yang berjalan saat startup di Linux. Saya ingin menghapus beberapa aplikasi dari startup agar mereka dapat dikelola oleh supervisord
mis. Apache2
Jawaban:
Bergantung pada distro Anda, gunakan chkconfig atau update-rc.d tool untuk mengaktifkan / menonaktifkan layanan sistem.
Pada sistem gaya redhat / suse / mandrake:
sudo chkconfig apache2 off
Di Debian:
sudo update-rc.d -f apache2 remove
Lihat halaman manual mereka untuk info lebih lanjut.
Jika Anda berurusan dengan sistem Ubuntu modern dan beberapa distro lain, Anda mungkin harus berurusan dengan kombinasi skrip init tradisional dan skrip pemula. Mengelola skrip init dicakup oleh jawaban lain. Berikut ini adalah salah satu cara untuk menghentikan layanan pemula mulai dari saat boot:
# mv /etc/init/servicename.conf /etc/init/servicename.conf.disabled
Masalah dengan metode ini adalah tidak memungkinkan Anda untuk memulai layanan menggunakan:
# service start servicename
Alternatif untuk ini adalah membuka servicename.conf
file di editor favorit Anda dan komentar setiap baris yang dimulai dengan:
start on
Yaitu, ubah ini menjadi
#start on ...
di mana "..." adalah apa pun setelah "mulai" sebelumnya. Dengan cara ini, ketika Anda ingin mengaktifkannya kembali, Anda tidak harus mengingat apa parameter "mulai" itu.
Terakhir, jika Anda memiliki versi baru pemula, Anda cukup menambahkan kata "manual" ke akhir file konfigurasi. Anda dapat melakukan ini langsung dari shell:
# echo "manual" >> /etc/init/servicename.conf
Ini akan menyebabkan pemula mengabaikan frasa "mulai" sebelumnya di dalam file.
Pada sistem Fedora dan RHEL Masa Depan yang terbaru
systemctl disable httpd.service
akan menonaktifkan layanan httpd
systmctl
perintah ini bekerja dengan baik.
Untuk membuat daftar semua layanan startup
systemctl
Untuk menghentikan layanan agar tidak berjalan saat start up
sudo systemctl disable servicename
Misalnya jika kita perlu berhenti menjalankan ssh server saat startup
sudo systemctl disable sshd.service
Kami dapat mengaktifkan ini lagi menggunakan
sudo systemctl enable sshd.service
Hampir setiap distribusi linux menggunakan systemd untuk layanan startup bootstrap. Jadi perintah di atas berfungsi untuk sebagian besar distro.
Slackware dan Arch linux memiliki metode yang sama untuk menghentikan / memulai proses saat boot, berbeda dari contoh gaya Ubuntu dan Redhat yang diberikan di atas.
Di Slackware dan Arch linuxes, skrip sh ada di direktori /etc/rc.d
, biasanya satu skrip per daemon, atau satu skrip per subsistem.
Sebagai contoh, Slackware memulai server web Apache dengan sebuah skrip /etc/rc.d/rc.httpd
, dipanggil pada waktu yang tepat selama startup sistem dengan argumen "mulai". Arch linux memiliki skrip dengan nama berbeda, tetapi hal yang sama terjadi.
Agar beberapa proses tidak dimulai saat boot sistem, di Slackware, Anda cukup membuat skrip yang sesuai di /etc/rc.d tidak dapat dieksekusi. Untuk mencegah Apache memulai pada boot berikutnya:
chmod -x /etc/rc.d/rc.httpd
Untuk menghentikan Apache yang memulai saat boot: /etc/rc.d/rc.httpd stop
Anda harus root.
Lengkungan sedikit lebih kompleks. File /etc/rc.conf, skrip shell, memiliki array DAEMONS. Agar Apache tidak mulai saat boot, Anda harus mengubah baris ini di /etc/rc.conf:
DAEMONS=(hal syslog-ng network netfs crond alsa sshd httpd ntpd postgresql)
Ke baris ini:
DAEMONS=(hal syslog-ng network netfs crond alsa sshd ntpd postgresql)
Untuk menghentikan apache yang sudah dijalankan, Anda akan menjalankan /etc/rc.d/httpd stop
sebagai root.
Pada Ubuntu 10,04 Anda dapat mengontrol beberapa program startup dari GUI.
System→ Preferences→Startup Applications
1) ketuk superkey pada keyboard Anda 2) cari 'Aplikasi Startup' 3) pilih program yang ingin Anda nonaktifkan 4) tekan seperti untuk jawaban ini jika worx.