1. 程式人生 > 其它 >ssh [email protected] -p 123出現PTY allocation request failed on channel 0

ssh [email protected] -p 123出現PTY allocation request failed on channel 0

未驗證

1、lsof /dev/pts/*   檢視哪些程序打開了偽終端

通過解除安裝並重新掛載 /dev/pts 來修復錯誤

$ umount /dev/pts
$ mount devpts /dev/pts -t devpts

如果伺服器變得不可訪問,我們建議客戶將伺服器重新啟動到單使用者模式,並將這些行新增到您的 /etc/mtab & /etc/fstab 條目中。

為此,我們開啟檔案 /etc/mtab 或 /etc/fstab。然後,我們將該行新增到這些檔案中。

none /dev/pts devpts defaults 0

 

同樣,不正確的 SSH 設定也會觸發此錯誤。例如,當 SSH 二進位制檔案別名為 'ssh –

t' 時,可能會導致錯誤。

此外,當 .ssh/authorized_keys 檔案中禁止訪問 PTY 時,會彈出相同的錯誤。

或者,當SSH配置檔案包含諸如“PermitTTY yes”之類的條目時,它甚至可能導致TTY錯誤。最終,這會導致登入失敗。

因此,我們編輯配置並將條目設定為:

PermitTTY no

這樣可以解決問題並使SSH再次工作

 

2、

是由於 系統當前使用的虛擬終端pty的數量已經達到了系統允許的上限

解決方法:

1: 通過tty(接顯示器), 管理口,登入主機,root執行 ps -ef|grep pts  找到 使用虛擬終端的程序 ,看是否因程式異常造成使用這麼多的pty,然後將異常程序殺掉。

2: 或者 通過修改 系統允許的最大pty數量 解決,

          對當前執行的系統生效 echo   5000  > /proc/sys/kernel/pty/max ( rhel7下該值預設為 4096)

永久生效方法: 將kernel.pty.max = 4096     寫入到/etc/sysctl.conf   後執行sysctl -p 讓新配置生效果。

驗證結果時pty開的太多