タイトルごとに、scp
トンネルをssh
しようとすると、次の警告が表示されます。私の場合、デバイスfooのポート1234がプライベートネットワーク上の別のマシンバーに転送されているため、scp
を直接fooにできません(barは192.168.1.23へのトンネルを提供しているマシンです)。
$ # -f and -N don't matter and are only to run this example in one terminal
$ ssh -f -N -p 1234 userA@foo -L3333:192.168.1.23:22
$ scp -P 3333 foo.py ubuntu@localhost:
ubuntu@localhost's password:
stty: standard input: Inappropriate ioctl for device
foo.py 100% 1829 1.8KB/s 00:00
誰が私がInappropriate ioctl for device
?
~/bashrc
に次の行を含めると、まったく同じ問題が発生しました。
stty -ixon
この行の目的は、 bashの逆検索でCtrl-s を使用できるようにすることでした。
このリンクには解決策があります (利用不可)
'stty'はttyに適用されます。これは、対話型ログインセッション用です。 .kshrcは、stdinがttyではないセッションを含むすべてのセッションに対して実行されます。 .profileに移動する以外の解決策は、インタラクティブなシェルであることを条件に実行することです。
相互シェルをチェックする方法はいくつかあります 。以下は、bashの問題を解決します。
[[ $- == *i* ]] && stty -ixon