Làm thế nào để tôi giết một quá trình forkbomb?


11

Tôi đã bắt đầu forkbomb từ tài khoản người dùng thông thường nói - "user1" Tôi đang chạy một đoạn script nói

killall -u user1

Nhưng nó đã không khắc phục được tình hình.


Là đặt lại sức mạnh là một lựa chọn?

Có lựa chọn nào khác? Mặc dù khởi động lại giải quyết vấn đề này. Nhưng đó không phải là giải pháp lâu dài

Câu trả lời:


14

khởi động lại máy tính

nếu bạn không thể, bạn có thể thử:

killall -STOP -u user1
killall -KILL -u user1

Nếu bằng "giải pháp vĩnh viễn", bạn có nghĩa là ngăn chặn điều này xảy ra một lần nữa, thì bạn thực sự không thể, nhưng bạn chỉ có thể giảm bớt ulimitcho người dùng có vấn đề và bỏ qua chúng.


1
cảm ơn thiết lập ulimit là giải pháp lâu dài để ngăn chặn nó. Nhưng killall -KILL cũng làm việc cho tôi
Cảm ơn


0

Tôi đồng ý với câu trả lời của Colin, nhưng tôi sẽ bọc -STOP thành một kịch bản và hay - 20 để đảm bảo rằng kịch bản tiêu diệt nhận được nhiều cpu hơn so với những quả bom 1000s đang chạy.

echo "while [ 1 ]; do killall -STOP bombprocess ; done" > killscript.sh

hoặc là

echo "while [ 1 ]; do killall -STOP -u userrunningthebomb ; done" > killscript.sh

sau đó

nice --20 ./killscript.sh

và sau đó, sau khi tất cả dừng lại

killall -KILL bombprocess (Bạn sẽ có thể sử dụng lại ps vào thời điểm này)

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.