Как исправить ошибку запроса на канале 0

ssh terminal pty

161126 просмотра

11 ответа

359 Репутация автора

когда я хочу подключиться к своему серверу, как это

ssh -a username@my-server.de -p 22

это дает мне два сообщения об ошибках:

PTY allocation request failed on channel 0
shell request failed on channel 0

когда я использую параметр, -Tпервое сообщение об ошибке исчезает. Но как исправить второй? Я не могу подключиться К другому серверу я могу подключиться без проблем.

я нахожусь на MAC OS 10.9 Параметр -vпоказывает мне этот вывод отладки:

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to xxx.your-server.de [188.40.3.15] port 22.
debug1: Connection established.
debug1: identity file /Users/xxx/.ssh/id_rsa type -1
debug1: identity file /Users/xxx/.ssh/id_rsa-cert type -1
debug1: identity file /Users/xxx/.ssh/id_dsa type -1
debug1: identity file /Users/xxx/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version mod_sftp/0.9.8
debug1: no match: mod_sftp/0.9.8
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA 55:f5:ca:ca:01:45:0f:7b:71:0a:1f:ba:9e:25:17:fb
debug1: Host 'xxx.your-server.de' is known and matches the RSA host key.
debug1: Found key in /Users/xxx/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: /Users/xxx/.ssh/id_rsa
debug1: Trying private key: /Users/xxx/.ssh/id_dsa
debug1: Next authentication method: password

после ввода пароля я получаю это

debug1: Authentication succeeded (password).
Authenticated to xxx.your-server.de ([xxx.xxx.3.15]:22).
debug1: channel 0: new [client-session]
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LANG = de_DE.UTF-8
shell request failed on channel 0
Автор: user1895268 Источник Размещён: 19.11.2014 04:15

Ответы (11)


18 плюса

836 Репутация автора

Ошибка выделения PTY на канале 0

В системе существует ограничение в 256 псевдо-терминалов. Может быть, у вас есть приложение, которое пропускает псевдо-терминалы. использование

lsof /dev/pts/*

чтобы увидеть, какие процессы имеют открытые псевдо-терминалы

запрос оболочки не выполнен на канале 0

Я получаю эту ошибку (без ошибки распределения PTY). Оказывается, что одно из моих приложений (QtCreator 3.0.?) Пропускало процессы Zombie. Другие пользователи могли войти в систему, так что я мог использовать мою квоту для каждого пользовательского процесса (если есть такая вещь). Я обновился до QtCreator 3.3. Все идет нормально.

Автор: vharron Размещён: 23.01.2015 06:55

4 плюса

504 Репутация автора

Просто добавьте эти строки в ваш /etc/mtabи /etc/fstabи перезагрузите систему.

none    /dev/pts    devpts    defaults    0    0
Автор: Mansur Ali Размещён: 12.05.2015 12:41

2 плюса

31 Репутация автора

Я решил аналогичную проблему с одним из наших пользователей, который использовался только для переадресации через ssh-порт, поэтому у него не было доступа к PTY, и это было запрещено в файле .ssh / authorized_keys:

no-pty ssh-rsa AAA...nUB9 someuser

Поэтому, когда вы пытаетесь войти в систему для этого пользователя, только сообщение

PTY allocation request failed on channel 0

был возвращен. Так что проверьте файл author_keys вашего пользователя.

Автор: Ondrej Homolka Размещён: 07.02.2017 11:48

13 плюса

1166 Репутация автора

размонтировать и монтировать /dev/ptsработал на меня

umount /dev/pts

mount devpts /dev/pts -t devpts

Ссылка: http://www.iitk.ac.in/LDP/LDP/lfs/5.0/html/chapter06/proc.html

Автор: rajagopalx Размещён: 09.05.2017 12:49

5 плюса

905 Репутация автора

У меня была точно такая же ошибка при попытке подключиться через SSH к моему серверу. Как я вижу, вы используете сервер, предоставленный Hetzner, подключающийся к нему через порт 22:

debug1: подключение к порту xxx.your-server.de [188.40.3.15].

Официальная вики / документация от Hetzner гласит:

Протокол для зашифрованной удаленной диагностики для серверов / компьютеров (консолей). Используемый порт SSH - 222.

Таким образом, вы должны подключиться через порт 222:

ssh -p 222 username@my-server.de
Автор: tecmec Размещён: 01.01.2018 02:37

1 плюс

66 Репутация автора

перезагрузка экземпляра из консоли AWS сработала для меня. Был сервис, который пропускал файловые соединения, которые lsofпомогли найти.

Автор: randhir singh Размещён: 15.01.2018 06:09

1 плюс

11 Репутация автора

Это старый вопрос, но если кто-то придет сюда, как я ...

Это может быть результатом неправильной даты на сервере. Если вы работаете со встроенной системой, это может быть причиной ... Так что проверьте свою дату:

$ date
Автор: Ian Koerich Maciel Размещён: 12.07.2018 06:42

0 плюса

12132 Репутация автора

shell request failed on channel 0

означает, что у вас нет доступа к командной оболочке или удаленным командам, исправьте разрешение пользователя на сервере для доступа к оболочке или если вы просто хотите использовать туннелирование -Nи -Tпараметры

Автор: ewwink Размещён: 31.07.2018 10:19

0 плюса

464 Репутация автора

Попробуй это:

vi /etc/security/limits.d/20-nproc.conf
*          soft    nproc     4096   # change to 65535 
root       soft    nproc     unlimited
Автор: xmduhan Размещён: 02.08.2018 03:59

0 плюса

1 Репутация автора

Перемонтирование / dev / pts работает для меня. вы можете сделать это удаленно через ssh, если вы запускаете ssh таким образом на зараженной машине. ssh не запрашивает tty при запуске таких команд, что позволяет удаленно перемонтировать / dev / pts

ssh user @ host - 'mount -o remount, rw / dev / pts'

Автор: Slavek Jurkowski Размещён: 15.02.2019 02:58

0 плюса

1 Репутация автора

только что выяснил, в чем проблема в моем случае (провайдерская страта): у меня была такая же проблема с выводом «запрос оболочки завершился неудачно на канале 0» в конце.

Я должен использовать мастер-пароль с именем веб-домена в качестве логина. (На немецком www.wunschname.de, где wunschname - ваш веб-адрес.)

Вход в систему через ssh с именами пользователей sftp и соответствующими паролями безуспешен. (Хотя scp и sftp работают с этими пользователями sftp!)

Автор: feli_x Размещён: 17.03.2019 09:54
Вопросы из категории :
32x32