0

sshpassツールを実行してsftpアクションを自動化しようとしています。

別のサーバーでは、コマンドは機能しますが、このサーバーでは、1行のエラーメッセージを返すだけです。

これが私が使用しているコマンドです:

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だと思います。

他の誰かがこのエラーを経験したか、何が間違っているのか知っていますか?これは実稼働サーバーであるため、ダウンする余裕はありません。これに関する助けをいただければ幸いです。

4

1 に答える 1

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
于 2012-07-06T19:32:38.843 に答える