LINUX.ORG.RU
ФорумAdmin

sshd не может запустить шелл!


0

1

Доброго времени суток! Столкнулся с проблемой: на нагруженном сервере когда съедается практически вся память, меня перестает пускать по ssh. ssh сессия устанавливается, но новый шелл система запустить уже не в состоянии.

Вопросы

1. Каким образом можно гарантировать что для процессов sshd и его потомков(bash) всегда будет зарезервирована память?

2. Как сделать приоритет для процесса _заранее_? Т.е. нечто вроде renice, но ещё до того как будет запущен конкретный процесс? (чтобы можно было относительно комфортно работать в шелле, а не со скоростью 10 букв в минуту буквально)

Как сделать приоритет для процесса _заранее_? Т.е. нечто вроде renice

nice ?

megabaks ★★★★
()
Ответ на: комментарий от leave

ssh -T


если памяти нету для нового процесса, то не поможет. malloc() не сработает. Нужно именно резервирование.

jKoader2
() автор топика
Ответ на: комментарий от leave

Круто. А как такого пользователя обнаружить? who и last молчат. Только по наличию процесса юзверь@notty или ещё способы есть?

router ★★★★★
()
Ответ на: комментарий от jKoader2

памяти-то не хватает чаще всего для баша

leave ★★★★★
()

Как вариант, подкрутить OOM-Killer, чтобы он более агрессивно пристреливал процессы :)

Nao ★★★★★
()

Ещё можно же сделать своп побольше.

Nao ★★★★★
()
Ответ на: комментарий от leave

Т.е. всё равно смотреть список процессов... Вот блин.

router ★★★★★
()

А такую элементарную вещь как killer-login конечно вряд-ли кто вспомнит :)

Делается юзер с uid=0 gid=0 и вместо шел что-то типа «killall squid» или просто init 4 (runlevel в котором нет особо прожорливых процессов, но остались mission-critical).

Если явно наступает полная (|)опа, достаточно просто издали стукнуться под этим юзером, а минут через 5-10, когда всё лишнее поубивато, спокойно вернуться под своим аккаунтом на пепелище и разгребать логи.

MKuznetsov ★★★★★
()
Ответ на: комментарий от MKuznetsov

вместо шел что-то типа «killall squid»


принципиально не важно будет ли ssh запускать bash или kill (на запуск kill также не хватит памяти, я это наблюдал имея физ. консоль с заранее открытым шеллом).

вопрос всё таки упирается в возможность резервирования памяти ядром линукс, и каким инструментарием админ сможет этим управлять.

jKoader2
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.