【问题标题】:sshpass throwing error 'Failed to get a pseudo terminal: Success'sshpass 抛出错误'无法获得伪终端:成功'
【发布时间】:2012-07-03 15:51:21
【问题描述】:

我正在尝试运行 sshpass 工具来自动执行 sftp 操作。

在另一台服务器上,该命令有效,但在这台服务器上它只返回一行错误消息。

这是我正在使用的命令:

sshpass -p Password sftp Uname@Host

我得到了错误:

Failed to get a pseudo terminal: Success

我已经在许多不同的主机上以 root 用户的身份尝试过,我可以毫无问题地 sftp 进入,所以我很确定这是 sshpass 或伪终端问题。

我对伪终端知之甚少,似乎找不到任何有关错误的信息。 文件夹 /dev/pts 为空, cat /proc/sys/kernel/pty/nr 为 0,我认为这意味着没有任何运行。从 ptya0 到 ptyzf 共有 256 个 pty** 项目,这让我相信我可能已经达到了伪终端数量的限制。我认为我的最大终端数(通过查看 cat /proc/sys/kernel/pty/max)是 4096。

是否有其他人遇到过此错误或知道可能出了什么问题?它是一个生产服务器,所以我不能让它停机。对此的任何帮助将不胜感激。

【问题讨论】:

    标签: sftp pty pts


    【解决方案1】:

    想通了。对于有类似错误的任何人,pts 目录由于某种原因被卸载。执行以下操作就可以了:

    rm -rf /dev/ptmx
    mknod /dev/ptmx c 5 2
    chmod 666 /dev/ptmx 
    umount /dev/pts
    rm -rf /dev/pts
    mkdir /dev/pts
    vim /etc/fstab
        (added: none  /dev/pts  devpts  defaults 0 0)
    mount /dev/pts
    

    【讨论】:

      猜你喜欢
      • 2016-09-22
      • 2021-11-03
      • 2014-07-10
      • 1970-01-01
      • 1970-01-01
      • 2019-12-11
      • 1970-01-01
      • 2014-10-25
      • 1970-01-01
      相关资源
      最近更新 更多