bash 有问题,现在 ssh 不上,有什么解决办法?

2016 年 9 月 8 日
 hackingwu

把 bash 替换成自己的一个代理程序(去调用真的 bash ),但是好像程序有点问题,现在导致 ssh 不上,有什么解决办法吗?等登录到其他的 shell 吗,比如我的 /bin 还有 ksh 。求救,在线等。

4177 次点击
所在节点    程序员
21 条回复
bjzhou1990
2016 年 9 月 8 日
用 scp 放一个没问题的 bash 进去?
tinyproxy
2016 年 9 月 8 日
我就想问一句,你的 mv 还好用么。。。覆盖回去重启试试
hackingwu
2016 年 9 月 8 日
@bjzhou1990 那不是也要 ssh 上去,而且我也试了 不行,“ Fatal: Received unexpected end-of-file from server
”
hackingwu
2016 年 9 月 8 日
@tinyproxy 我已经登不上去了,怎么 mv
hackingwu
2016 年 9 月 8 日
@bjzhou1990 或者出了 scp ,还有没有其他方式把没问题的 bash 上传上去。
bjzhou1990
2016 年 9 月 8 日
@hackingwu ssh root@yourserver.com -t sh
hackingwu
2016 年 9 月 8 日
@bjzhou1990 这是什么意思?不行,虽然我不是 root 账号
bjzhou1990
2016 年 9 月 8 日
@hackingwu 就是你 ssh 命令后面加-t 参数 sh 或者你用的 ksh 都可以
xp0729
2016 年 9 月 8 日
就是换别的 shell 啊
hackingwu
2016 年 9 月 8 日
@bjzhou1990 好吧 不行,,
bjzhou1990
2016 年 9 月 8 日
@hackingwu 好吧,都是需要 bash 才行,不知道 rsync 是不是依赖 bash ,你可以试下
holyzhou
2016 年 9 月 8 日
ssh hostname /bin/ksh 不行?
holyzhou
2016 年 9 月 8 日
@holyzhou 或者把 /bin/ksh 换成你之前的移动的 bash 的位置 因为缺少环境变量文件 可能不会有正常前面的提示符
skydiver
2016 年 9 月 8 日
ssh hostname /bin/ksh
应该就不会执行 bash 了
skydiver
2016 年 9 月 8 日
@skydiver 试了一下,需要像楼上说的 ssh hostname -t /bin/ksh 才行
julyclyde
2016 年 9 月 8 日
没救了
ssh 后面带命令的都是调用 sh -c 'command'这种形式来执行的
要求 sh 本身完好
hackingwu
2016 年 9 月 8 日
@julyclyde 是啊,差一点就没救了。幸好还有一个同事之前登陆上去,还没有退出,用他的链接重置了 bash 。真是好险。。。
julyclyde
2016 年 9 月 8 日
@bjzhou1990 scp 方案、 sftp 方案都有可能,但前提是 root 用户允许直接 ssh 登录。这两个都没 su 的机会吧
jyf007
2016 年 9 月 8 日
静态编译的 bhsybox 和 dropbear 还有 lrzsz 拯救你
oska874
2016 年 9 月 9 日
telnet 啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/304809

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX