Làm thế nào để tiêu diệt tất cả các quy trình trong Linux


15

Tôi muốn giết tất cả các quy trình trên máy tính của tôi. Tôi có thể sử dụng lệnh nào để làm như vậy?


4
Tất cả các quy trình? sudo reboot
Stephen

1
Bạn đang nói về các quy trình thuộc sở hữu của bạn hoặc tất cả các quy trình trong hệ thống hiện đang chạy?
J. Polfer

3
@Stephen - sau đó anh ấy sẽ kết thúc với tất cả các quá trình khởi động lại và đó là điều cuối cùng bạn muốn khi bạn muốn tất cả chúng CHẾT!
x3ja

Câu trả lời:


29

shutdown -h now


9
Ok, các quy trình đã dừng lại, và máy tính cũng vậy. Câu trả lời này giống như trả lời "làm thế nào để ngừng lo lắng quá nhiều" bằng "tự sát".
Andrew

28

Lệnh killall5 -9sẽ chấm dứt mạnh mẽ tất cả các quy trình đang chạy ngoại trừ shell đăng nhập, init và các quy trình dành riêng cho kernel.

Thêm thông tin tại đây: http://linux.about.com/l Library / cmd / blcmdl8_killall5.htm


OK Tôi đã làm điều này, và bây giờ máy của tôi đang ở trong một vòng lặp liên tục, nơi nó hỏi tôi mật khẩu, đi đến máy tính để bàn, quay lại vỏ đăng nhập và hỏi lại mật khẩu. Làm thế nào để tôi đi ra khỏi đây?
Mahathi Vempati 7/12/2016

Các liên kết bây giờ hướng đến một chủ đề khác nhau.
fixer1234

8

Bạn có thể giết tất cả các quy trình của người dùng bằng một trong những quy trình sau:

killall -u username

hoặc là

pkill -u username

hoặc bạn có thể sử dụng UID số thay vì tên người dùng.

Coi chừng killallchức năng khác nhau (tương tự killall5) trên một số hệ thống như Solaris.


8

Cách dễ nhất là sử dụng phím Magic SysRq : Alt+SysRq + i. Điều này sẽ giết tất cả các quá trình ngoại trừ init.

Alt+ SysRq+ osẽ tắt hệ thống (giết init cũng được).

Lưu ý rằng trước tiên bạn có thể cần đặt bàn phím sang chế độ XLATE: Alt+SysRq +r

Cũng lưu ý rằng trên một số bàn phím hiện đại, bạn phải sử dụng PrtScchứ không phải SysRq.


Xin lưu ý rằng nên sử dụng Alt + Shift + SysRq + reisub để khởi động lại an toàn.
l0b0

7

Trong một số bản phân phối Linux, bạn có thể chuyển sang Chạy cấp 0 - cái mà tôi nghĩ đã bị dừng, nhưng vẫn được bật:

sudo telinit 0

Tôi thực sự đã nghe nói về việc này được sử dụng cho các máy chủ tường lửa chuyên dụng vì nó giữ một số nội dung hạt nhân cấp thấp cần thiết được tải như iptables ... lạ nhỉ? Xem ở đây để biết thêm.

Để xem các distro làm những gì tại mỗi runlevel, hãy xem ở đây .


1
Khi tôi chuyển máy tính của mình sang runlevel 0, nó thực sự tắt ...
David Z

1
Dường như điều đó phụ thuộc vào hương vị Linux của bạn - en.wikipedia.org/wiki/Runlevel#Linux - sẽ chỉnh sửa câu trả lời của tôi một chút.
x3ja

4

Để loại bỏ tất cả các quy trình thuộc sở hữu của người dùng hiện tại, bạn có thể làm:

ps x | awk {'print $1'} | xargs kill

Điều này tất nhiên, cũng sẽ giết lớp vỏ mà bạn hiện đang đăng nhập. Nếu bạn không muốn hành vi đó, hãy thử câu trả lời của raku015.

Lưu ý rằng nếu bạn chạy cái này với tư cách là người dùng root, điều tồi tệ sẽ xảy ra.


4

Cách nhanh nhất, dễ dàng nhất để tiêu diệt tất cả các quy trình là kéo dây nguồn khỏi tường.


2
FTFY: s / bằng chứng / ish /
Chris Nava

4
:-) Đó là một vấn đề về quan điểm. OP đã không xác định mục tiêu mong muốn là gì ngoài việc "tiêu diệt tất cả các quy trình". Tôi nghĩ thật ngu ngốc khi có bất kỳ mệnh lệnh nào để giết tất cả các quy trình.
Doug Harris

2
Tôi đồng ý. Chưa kể rằng hệ thống tập tin cũng hơi khó để tiêu diệt sức mạnh như thế.
Chris Nava

2
Và tháo pin nếu đó là máy tính xách tay.
Keith Thompson

1
Và bọc nó trong xi măng để đảm bảo nó không bao giờ có bất kỳ quy trình mới nào được đưa ra?
Mokubai


1

Tôi sẽ sử dụng lệnh dưới đây. (Đây là cái tôi sử dụng khi tôi bị mắc kẹt)

kill -9 -1

Điều này sẽ giết tất cả các quá trình. Môi trường của tôi là Ubuntu. Nếu tôi gõ cái này trong terminal, nó sẽ đóng tất cả các tiến trình và sẽ đưa bạn đến màn hình đăng nhập (gần giống như đã đăng xuất)


Điều đó gần giống với câu trả lời cũng nói kill -9 -1cộng với một dòng tiêu diệt khác - câu trả lời của bạn có thực sự giống như một câu trả lời khác không, hay nó có thể nằm trong một nhận xét cho câu trả lời khác không?
Xen2050

0
kill -9 -1 
kill -kill 0

Tôi không chắc chắn rằng bạn sẽ có thời gian để gõ kill -kill 0 sau lệnh đầu tiên
Menuka Ishan

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.