есть ли другой вариант? Хотя перезагрузка решает эту проблему. Но это не постоянное решение.
Ответы:
14
перезагрузите компьютер
если вы не можете, вы можете попробовать:
killall -STOP -u user1
killall -KILL -u user1
Если под «постоянным решением» вы подразумеваете предотвращение этого повторения, ну, на самом деле, вы не можете, но вы можете просто уменьшить количество ulimitпроблемных пользователей и игнорировать их.
Я согласен с ответом Колина, но я бы включил -STOP в скрипт и неплохо --20, чтобы гарантировать, что скрипт kill получит больше процессоров, чем запущенные бомбы 1000-х годов.
Ответы:
перезагрузите компьютер
если вы не можете, вы можете попробовать:
Если под «постоянным решением» вы подразумеваете предотвращение этого повторения, ну, на самом деле, вы не можете, но вы можете просто уменьшить количество
ulimit
проблемных пользователей и игнорировать их.источник
источник
Я согласен с ответом Колина, но я бы включил -STOP в скрипт и неплохо --20, чтобы гарантировать, что скрипт kill получит больше процессоров, чем запущенные бомбы 1000-х годов.
echo "while [ 1 ]; do killall -STOP bombprocess ; done" > killscript.sh
или
echo "while [ 1 ]; do killall -STOP -u userrunningthebomb ; done" > killscript.sh
тогда
nice --20 ./killscript.sh
а потом, после того как все они остановятся
killall -KILL bombprocess
(Вы уже должны снова использовать ps)источник