Bagaimana cara saya membunuh semua proses yang berjalan dengan akun non-root saya sendiri?
Saya memiliki beberapa proses smbd pemintalan yang saya sebabkan dari mesin windows saya dan jadi saya melakukan telnet ke server linux dan saya ingin membunuh proses pemintalan tersebut. Saya tidak punya wewenang untuk me-restart layanan atau me-reboot mesin.
kill -15 -1
, dan hanya beralih kekill -9 -1
jika ada proses keras kepala dan saya tahu apa yang saya lakukan . Secara acak membunuh proses yang mungkin ada di tengah-tengah transaksi basis data bukanlah sesuatu yang harus dilakukan sesantai yang Anda sarankan.firefox-bin
.killall firefox
dankillall firefox-bin
dan melihat apa yang bekerja. Saya setuju dengan komentar pertama Anda.Gunakan
sudo kill <pid>
atausudo killall <process-name>
sumber
Mari kita coba sesuatu yang lebih:
The
top
perintah adalah cara tradisional untuk melihat penggunaan sumber daya sistem Anda dan melihat proses yang mengambil sumber daya yang paling sistem. Top menampilkan daftar proses, dengan yang menggunakan CPU terbanyak di atas.htop
menampilkan informasi yang sama dengan tata letak yang lebih mudah dipahami. Ini juga memungkinkan Anda memilih proses dengan tombol panah dan melakukan tindakan, seperti membunuh mereka atau mengubah prioritas mereka, dengan Ftombol.sumber
Anda dapat gunakan
Jika Anda mencari jenis firefox di terminal suka
ps -ax | grep firefox
, itu menunjukkan id proses aplikasi yang sesuai. Anda dapat menghentikan aplikasi itu dengankill
perintah jika proses id = 1317,sumber
Saya akan menggunakan
xkill
. Masukkanxkill
terminal dan klik di jendela, atau masukkanxkill
dan ID proses dan itu akan dihentikan.Temukan lebih banyak tentang
xkill
di x.org.sumber
Untuk mencoba membunuh semua proses yang dimiliki oleh pengguna
username
, jalankan:sumber
Saya akan membagi masalah Anda menjadi 2 bagian:
1) Bagaimana saya menemukan proses yang dimulai oleh saya? Jalankan ini:
The
whoami
hanya dalam kasus Anda tidak tahu nama akun yang Anda gunakan, jika tidak hanya ketik nama account tanpa tanda kutip kembali.Ini akan mencantumkan semua proses yang dapat dihapus oleh akun Anda.
2)
ps
Perintah akan mencantumkan nomor proses, TTY, Waktu, dan CMD. ID proses adalah kolom pertama. Gunakan nomor itu untuk menghentikan proses. Hati-hati saat membunuh proses. Anda mungkin merusak sesuatu jika Anda membunuh proses yang salah. Untuk membunuh proses, Anda akan menggunakankill
perintah, yang mengirimkan SIGNAL ke proses. Sinyal menunjukkan apa yang harus dilakukan proses . Misalnya, mengirimkan-1
ke proses akan memintanya memuat ulang file konfigurasi; mengirimkan-2
setara dengan menekan Control + C pada proses itu;-9
akan menyebabkan kernel mengabaikan proses, tanpa mengkomunikasikannya ke proses.Misalkan ps -u
whoami
mengembalikan sesuatu sepertiDan Anda ingin mematikan
firefox
proses dengan id prosesnya, maka Anda akan melakukannya:Kemudian Anda akan menjalankan kembali
ps
perintah yang sama dan memeriksa apakah prosesnya masih berjalan. Jika masih berjalan, maka lakukan acara kerja Anda hingga
-9
.Untuk membunuh semua proses yang dimulai oleh akun Anda, masukkan
kill <level> -1
. Sama seperti sebelumnya: lanjutkan dengan cara Anda-9
.Jika Anda tahu nama prosesnya, Anda bisa pergi ke
killall <processname>
tempat yang ingin Anda bunuh. Misalnya:killall fish
(ikan, dalam pengertian ini, adalah Friendly Interactive Shell).Dokumentasi untuk
killall
dapat ditemukan di sini: http://manpages.ubuntu.com/manpages/hardy/man1/killall.1.htmlsumber
Dengan aplikasi ini Anda dapat melihat daftar program
instal htop
untuk melihat proses dan mematikan proses, Anda dapat menginstalnya dan cukup menghapus
sumber
... Semua proses di Linux merespons sinyal. Sinyal adalah cara os-level untuk memberitahu program untuk menghentikan atau mengubah perilaku mereka.
Cara Mengirim Sinyal Proses oleh PID
Cara paling umum menyampaikan sinyal ke suatu program adalah dengan perintah kill.
Seperti yang Anda duga, fungsionalitas default utilitas ini adalah mencoba mematikan proses:
Ini mengirimkan sinyal TERM ke proses. Sinyal TERM memberi tahu proses untuk berhenti. Ini memungkinkan program untuk melakukan operasi pembersihan dan keluar dengan lancar.
Jika program mengalami kesalahan fungsi dan tidak keluar ketika diberi sinyal TERM, kami dapat meningkatkan sinyal dengan meneruskan sinyal KILL:
Ini adalah sinyal khusus yang tidak dikirim ke program.
Sebagai gantinya, itu diberikan ke kernel sistem operasi, yang mematikan proses. Ini digunakan untuk memotong program yang mengabaikan sinyal yang dikirim kepada mereka ...
sumber
Saya menulis skrip kecil yang saya tulis untuk membunuh (dalam kasus saya) Skype:
Tetapi saya menemukan bahwa sebanyak itu berhasil, itu tidak berfungsi pada hari berikutnya karena pid itu panjangnya berbeda dan ada untuk jumlah ruang yang berbeda
Kemudian saya menemukan situs ini dan mencoba
yang dengan mudah menampilkan proses dalam format
Jadi saya menyesuaikan kode saya dalam skrip ini:
Apa yang dilakukan adalah mem-pipe semua proses yang
justin
sedang berjalan (yang dapat diubah menjadi nama pengguna apa pun)grep
yangskype
dicari (ini dapat diubah ke proses Anda) dan kemudian mem-pipe gariscut
yang kemudian hanya membaca PID dan akhirnya menggunakannya PID dalamkill
perintah untuk membunuhnya.sumber
-l
, dan berlaripgrep -u justin skype
, dan untuk membunuh:pkill -u justin skype
(ataupkill -KILL -u justin skype
mengirim SIGKILL).Berikut ini adalah skrip python sederhana yang saya tulis, killProcess.py, yang akan menerima apa pun sebagai input dan mematikannya.
Saya menulis skrip ini karena saya memiliki banyak proses python atau simpul yang ingin saya bunuh secara individu dan secara terprogram. Saya tidak dapat menggunakan "killall python" karena itu akan menghentikan proses yang saya butuhkan untuk tetap berjalan.
Harap beri nama file "killProcess.py", lalu tambahkan nama skrip yang ingin Anda hentikan. Contoh: python killProcess.py runnablePoller.py akan membunuh file runnablePoller.py
sumber
Saya menggunakan prosedur berikut untuk mematikan proses di Ubuntu ::
Langkah 1: Dapatkan pid dari proses dengan menggunakan grep atau Anda dapat menggunakan -C juga ::
atau
atau
atau
Langkah 2: Catat nomor pid.
Langkah 3: Gunakan perintah 'kill' dengan nomor pid sebagai:
sumber
Ctrl+ Alt+ Deletedapat diatur untuk memberi Anda akses ke task manager, dari tempat itu mudah untuk mematikan proses dengan beberapa klik, dan bagi saya, persyaratan yang lebih sedikit untuk mengingat perintah yang dapat merusak jika dilakukan salah:
http://ubuntuhandbook.org/index.php/2013/07/use-ctrl-alt-del-task-manager-ubuntu/
https://www.itsmarttricks.com/a-guide-to-kill-pkill-and-killall-commands-to-stop-the-process-in-linux-kill-process-linux/
sumber