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

2016-09-08 13:24:28 +08:00
 hackingwu

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

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

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

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

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

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

© 2021 V2EX