把 bash 替换成自己的一个代理程序(去调用真的 bash ),但是好像程序有点问题,现在导致 ssh 不上,有什么解决办法吗?等登录到其他的 shell 吗,比如我的 /bin 还有 ksh 。求救,在线等。
1
bjzhou1990 2016-09-08 13:37:03 +08:00
用 scp 放一个没问题的 bash 进去?
|
2
tinyproxy 2016-09-08 13:38:24 +08:00 via iPhone
我就想问一句,你的 mv 还好用么。。。覆盖回去重启试试
|
3
hackingwu OP @bjzhou1990 那不是也要 ssh 上去,而且我也试了 不行,“ Fatal: Received unexpected end-of-file from server
” |
5
hackingwu OP @bjzhou1990 或者出了 scp ,还有没有其他方式把没问题的 bash 上传上去。
|
6
bjzhou1990 2016-09-08 13:45:02 +08:00
@hackingwu ssh [email protected] -t sh
|
7
hackingwu OP @bjzhou1990 这是什么意思?不行,虽然我不是 root 账号
|
8
bjzhou1990 2016-09-08 13:47:45 +08:00
@hackingwu 就是你 ssh 命令后面加-t 参数 sh 或者你用的 ksh 都可以
|
9
xp0729 2016-09-08 13:48:02 +08:00
就是换别的 shell 啊
|
10
hackingwu OP @bjzhou1990 好吧 不行,,
|
11
bjzhou1990 2016-09-08 14:00:45 +08:00
@hackingwu 好吧,都是需要 bash 才行,不知道 rsync 是不是依赖 bash ,你可以试下
|
12
holyzhou 2016-09-08 14:38:39 +08:00
ssh hostname /bin/ksh 不行?
|
13
holyzhou 2016-09-08 14:40:38 +08:00
@holyzhou 或者把 /bin/ksh 换成你之前的移动的 bash 的位置 因为缺少环境变量文件 可能不会有正常前面的提示符
|
14
skydiver 2016-09-08 14:46:58 +08:00
ssh hostname /bin/ksh
应该就不会执行 bash 了 |
16
julyclyde 2016-09-08 14:52:22 +08:00
没救了
ssh 后面带命令的都是调用 sh -c 'command'这种形式来执行的 要求 sh 本身完好 |
17
hackingwu OP @julyclyde 是啊,差一点就没救了。幸好还有一个同事之前登陆上去,还没有退出,用他的链接重置了 bash 。真是好险。。。
|
18
julyclyde 2016-09-08 17:35:24 +08:00
@bjzhou1990 scp 方案、 sftp 方案都有可能,但前提是 root 用户允许直接 ssh 登录。这两个都没 su 的机会吧
|
19
jyf007 2016-09-08 22:54:43 +08:00 via Android
静态编译的 bhsybox 和 dropbear 还有 lrzsz 拯救你
|
20
oska874 2016-09-09 09:10:40 +08:00
telnet 啊
|
21
KingsWay 2016-09-09 17:36:00 +08:00
ssh 是可以不通过 shell 执行命令的。。。
比如 python 的 paramiko ,它的 ssh 连接默认不分配 pty ,更不用说 shell 了。。。 |