根据标题,当我尝试通过scp
隧道ssh
时,我收到以下警告。在我的情况下,我不能scp
直接foo,因为设备foo上的端口1234被转发到专用网络上的另一个机器栏(并且bar是给我隧道到192.168.1.23的机器)。 / p>
$ # -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
的警告?
答案 0 :(得分:52)
当我在~/bashrc
上添加以下行时,我遇到了完全相同的问题:
stty -ixon
这一行的目的是允许使用Ctrl-s in reverse search of bash。
Web Archive version of the above link
'stty'适用于ttys,您可以使用它进行交互式登录会话。 .kshrc是针对所有会话执行的,包括stdin不存在的会话 一个tty。除了将其移至您的.profile之外,解决方案是 使执行成为一个交互式shell。
There are several ways to check for interecative shell。以下解决了bash的问题:
[[ $- == *i* ]] && stty -ixon
答案 1 :(得分:0)
最后,我创建了一个空白的.cshrc文件(用于ubuntu 18.04)。工作