一。重要提示:千万不要断开服务器连接
除非宝子们和我一样,linux安装了图形化界面。还有另一个渠道可以打开。不然就翘翘了,找领导的话一顿批是免不了了。。。
没错,按照上图来的话。。问题是周五搞得,周六加班搞回来。我可怜的周六啊!!!
二。操作问题记录
root 用户,使用mv 命令移动/ 根目录后。命令无法使用,ssh无法连接。
root@localhost 222]# mv /* /home/tools/aaa
mv: 无法将'/dev' 移动至'/home/tools/aaa/dev': 设备或资源忙
mv: 无法将目录'/home' 移动至自身的子目录'/home/tools/aaa/home' 下
mv: 无法将'/proc' 移动至'/home/tools/aaa/proc': 设备或资源忙
mv: 无法将'/run' 移动至'/home/tools/aaa/run': 设备或资源忙
mv: 无法将'/sys' 移动至'/home/tools/aaa/sys': 设备或资源忙
mv: 无法将'/tmp' 移动至'/home/tools/aaa/tmp': 设备或资源忙
[root@localhost 222]# ls
-bash: /usr/bin/ls: No such file or directory
[root@localhost 222]# cd /
[root@localhost /]# ls
-bash: /usr/bin/ls: No such file or directory
[root@localhost /]# cd /home/tools/
[root@localhost tools]# ls
-bash: /usr/bin/ls: No such file or directory
[root@localhost tools]# mv /home/tools/aaa/* /
-bash: /usr/bin/mv: No such file or directory
[root@localhost tools]# cd /
[root@localhost /]# ls
-bash: /usr/bin/ls: No such file or directory
[root@localhost /]# w -s
-bash: /usr/bin/w: 没有那个文件或目录
[root@localhost /]# cat /etc/passwd
-bash: /usr/bin/cat: 没有那个文件或目录
[root@localhost /]# sudo cat /etc/password
-bash: /usr/bin/sudo: 没有那个文件或目录
[root@localhost /]# undo
-bash: undo: command not found
[root@localhost /]# ifconfig
-bash: /usr/sbin/ifconfig: 没有那个文件或目录
[root@localhost /]# sudo systemctl restart systemd-resolved.service
-bash: /usr/bin/sudo: 没有那个文件或目录
[root@localhost /]# export PATH=$PATH:/usr/bin/yum
[root@localhost /]# sudo systemctl restart systemd-resolved.service
-bash: /usr/bin/sudo: 没有那个文件或目录
[root@localhost /]# sudo visudo
-bash: /usr/bin/sudo: 没有那个文件或目录
[root@localhost /]# export PATH=$PATH:/usr/bin/sudo
[root@localhost /]#
[root@localhost /]# redoup {-a}
-bash: redoup: command not found
[root@localhost /]#
[root@localhost /]# find /etc/sudoers.d
-bash: /usr/bin/find: 没有那个文件或目录
查看询原因后发现只有bash原生的那些命令可用:
cd、export、declare、echo、pwd
三。正所谓集大家之所长,补己之短也。直接上解决记录
当发现问题解决不了后 想把文件还原到 /目录下 : mv /* /home/tools/aaa 但是奈何命令不可用呀
因为执行mv命令的脚本ld-linux-x86-64.so.2找不到了。 (我的Xshell虽然关了但是我还连接着sftp嘞,嘿嘿嘿。万能的傻瓜操作 把文件放回根目录了)
直到我看到了这篇中:原文链接:https://blog.youkuaiyun.com/weixin_51051177/article/details/132461377
其中:正常情况下其位于根目录下的lib64中,而根目录下的lib64为根目录/usr/lib64的软链接,此时只是根目录下的软链接lib64没了,实际上mv命令和ld-linux-x86-64.so.2都仍在/usr/bin和/usr/lib64中。现在要做的就是重建根目录下的lib64软链接,然后就可以恢复所有命令的使用了。 这句话我一看。这不正是我所需要的吗。
3.1执行这个命令解决了常用命令无法解决的问题:
lib64/ld-linux-x86-64.so.2 bin/ln -s usr/lib64 /lib64
到此cd ,mv 等一些命令就可以正常使用了。
然后反执行移动文件命令: mv /home/tools/aaa/* /
还是登录不上服务器。。。。看了下 用户的命令和SSH 命令:
3.2执行这个命令解决了服务器无法登录的问题:
lib64/ld-linux-x86-64.so.2 bin/ln -s usr/bin /lib
命令可以用了,ssh无法登录咋办呢?看了下这个文章。原文链接: https://blog.51cto.com/u_15084467/6076598
需要执行这个命令 :lib64/ld-linux-x86-64.so.2 bin/ln -s usr/bin /lib 服务器可以正常连接了!到此,目前的问题可算是解决了。等后续使用的时候再看有没有后续影响。
四。总结
1.操作命令后 千万不要关掉服务器连接(我差点直接到云主机那里重装了)
2.操作记录千万要留好。万一自己解决不了可以找大神,可别让自己后续的操作让大神也无力回天了
3.当时解决不了千万不要乱了阵脚。可以像我一样失眠一晚,第二天会回光返照。
此次记录就到这里了。希望大家看到了可以有所借鉴。