Question

shell request failed on channel 0

I was running two Python scripts 24x7, and when I added two more it started giving the error

shell request failed on channel 0

When I run in a debug mode it outputs the following:

OpenSSH_8.1p1, LibreSSL 2.7.3
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 47: Applying options for *
debug1: Connecting to 1.2.230.166 [1.2.230.166] port 22.
debug1: Connection established.
debug1: identity file dokey type 0
debug1: identity file dokey-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_8.1
debug1: Remote protocol version 2.0, remote software version OpenSSH_9.0p1 Ubuntu-1ubuntu7
debug1: match: OpenSSH_9.0p1 Ubuntu-1ubuntu7 pat OpenSSH* compat 0x04000000
debug1: Authenticating to 1.2.230.166:22 as 'root'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: ecdsa-sha2-nistp256
debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none
debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ecdsa-sha2-nistp256 SHA256:lznBqzR8ZwxO68S3OLtGe9CaVe/RwXDyhlHpYRL31ro
debug1: Host '1.2.230.166' is known and matches the ECDSA host key.
debug1: Found key in /Users/f/.ssh/known_hosts:125
debug1: rekey out after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey in after 134217728 blocks
debug1: Will attempt key: dokey RSA SHA256:xxxxxx+iIlF6lnN0 explicit
debug1: SSH2_MSG_EXT_INFO received
debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,sk-ssh-ed25519@openssh.com,ssh-rsa,rsa-sha2-256,rsa-sha2-512,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,sk-ecdsa-sha2-nistp256@openssh.com,webauthn-sk-ecdsa-sha2-nistp256@openssh.com>
debug1: kex_input_ext_info: publickey-hostbound@openssh.com (unrecognised)
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering public key: dokey RSA SHA256:xxxxxx+iIlF6lnN0 explicit
debug1: Server accepts key: dokey RSA SHA256:xxxxxx+iIlF6lnN0 explicit
debug1: Authentication succeeded (publickey).
Authenticated to 1.2.230.166 ([1.2.230.166]:22).
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: pledge: network
debug1: client_input_global_request: rtype hostkeys-00@openssh.com want_reply 0
debug1: Remote: /root/.ssh/authorized_keys:1: key options: agent-forwarding port-forwarding pty user-rc x11-forwarding
debug1: Remote: /root/.ssh/authorized_keys:1: key options: agent-forwarding port-forwarding pty user-rc x11-forwarding
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
debug1: Sending env LC_ALL = en_US.UTF-8
debug1: Sending env LC_CTYPE = UTF-8
shell request failed on channel 0

Please help!


Submit an answer
Answer a question...

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Sign In or Sign Up to Answer

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

KFSys
Site Moderator
Site Moderator badge
January 12, 2023

Hi there, There are a lot of reasons that can be behind this error.

There is a limit of 256 pseudo terminals on a system. Maybe your python scripts are leaking pseudo terminals or creating Zombie processes. Use

lsof /dev/pts/*

to see what processes have open pseudo-terminals.

Additionally, you can try this:

vi /etc/security/limits.d/20-nproc.conf
*          soft    nproc     4096   # change to 65535
root       soft    nproc     unlimited