0%

linux-rescue

Linux极端情况下的"拯救"措施

Linux系统管理员日常操作可能会出现一些"误操作",造成系统损坏不可用,可尝试以下几种极端的文件传输方案等拯救系统

前置条件:

  • 远程
  • 可登录或当前登录会话未退出
  • 大部分关键系统维护命令不可用

如果能物理接触机器当然挂载LiveCD最便捷

nc

nc — arbitrary TCP and UDP connections and listens

通过nc传输文件或目录: 例如通过nc把正常机器的/lib压缩打包后传输到待修复机器

待修复机器

1
nc -l -p 65000 | tar zxf - -C /lib

正常机器

1
tar zcvf - /lib/* | nc remote_ip 65000

busybox

BusyBox - The Swiss Army Knife of Embedded Linux

可尝试busybox相关命令进行数据查看、传输等

1
2
busybox ls ...
busybox nc ...

/dev/[tcp|udp]/$host/$port

注: 环境问题,未测试成功

前置条件,bash需要开启下面的编译选项

1
2
3
'--enable-net-redirections'
This enables the special handling of filenames of the form
'/dev/tcp/HOST/PORT' and '/dev/udp/HOST/PORT' when used in

待修复机器

1
2
3
exec 8</dev/tcp/x.x.x.x/12345

while true; do read -u 8 -a xx; echo -n -e $xx >> test; done

正常机器

1
nc x.x.x.x 12345 < test.data