Назад | Перейти на главную страницу

Невозможно использовать SSH с оболочкой в ​​NAS: «error: openpty: Invalid argument»

У меня здесь NAS WD MyBook WorldEdition II (White Light). По сути, это ARM926EJ-S с двумя подключенными дисками SATA. Некоторое время я запускал на нем Debian 6.0 Squeeze. Недавно я обновился до Debian 7.0 Wheezy с помощью специального шага в процессе обновления, который я опишу дальше.

К сожалению, система должна работать на ядре версии 2.6.24. Причина в том, что WD внесла в ядро ​​некоторые патчи и какое-то время не обновляла его. Я (в настоящее время) не могу применить эти исправления к более новой версии ядра. В результате мне не удалось обновить libc в пределах apt-get dist-upgrade. В libc для Wheezy требуется ядро ​​минимум 2.6.26. Однако я скомпилировал libc w.r.t. ядро 2.6.24. Это было объявлено на каком-то форуме и утверждалось, что оно работает. В конце концов, после обновления вручную libc, apt-get dist-upgrade успешно продолжено.

Однако после перезагрузки я не могу открыть оболочку через SSH. Вместо этого я получаю следующее сообщение об ошибке:

PTY allocation request failed on channel 0
[...]
stdin: is not a tty

Хотя я могу выполнять команды.

Изучив немного больше, я выяснил, что /var/log/auth.log содержит:

sshd[4161]: error: openpty: Invalid argument
sshd[4161]: error: session_pty_req: session 0 alloc failed

Для openpty: Invalid argument Я нашел только минимальную информацию, например это сообщение на форуме, где пользователь в конечном итоге переустановил SSH-сервер.

Дополнительная информация:

Итак, прямо сейчас я подошел к концу своих знаний. Было бы здорово иметь способ отладки, который Invalid argument фактически передается openpty.

Итак, я смог решить эту проблему, перекомпилировав libc еще раз. Я предполагаю, что это должно быть что-то в цепочке инструментов, поскольку на этот раз я использовал chroot особенно настроен на wheezy.