Ubuntu误删/lib64自救指南

环境

操作系统:Ubuntu20.04 LTS

平台:x86_64,企业级服务器

问题描述

误删除根目录下/lib64,该文件是一个软链接,在ubuntu20.04中指向/usr/lib64,删除的结果便是ssh无法登录,重启服务器内核崩溃,可以说后果非常严重。

问题分析

/lib64存储共享库,大多数程序(包括:ln等)甚至内核都依赖于/lib64存储的共享库,即使其本身是一个软连接,删除也会导致严重后果。不过好在/usr/lib64目录是安全的,只需要重建软连接指向/usr/lib64即可。

然而,/lib64缺失的情况下,系统无法正常启动,ubuntu的recovery 模式也无法正常进入,比较安全的方法是通过live cd进入系统,然后挂载根目录,重建软链接。

解决步骤

准备好一个u盘,并制作你安装的Linux发行版的启动盘,我的是ubuntu20.04,所以需要一个ubuntu20.04的启动盘,启动盘制作网上有很多攻略。

bios设置从u盘启动,即可进入Live CD模式的ubuntu系统,这部分攻略网上也有。

进入系统后,不要点击install,点击Try Ubuntu,进入桌面后通过终端操作。因为Live CD模式的根目录是你的u盘,而不是原来的根目录,首先你要挂载原来的根目录到/mnt下。

查看根目录是哪个快设备:

bash 复制代码
lsblk

该命令会列出系统中所有的块设备,你可以根据TYPE字段和容量大小判断哪一个是你的根目录,实在无法判断可以都挂载,然后根据目录中的内容判断。

挂载目录,这里假设原来的根目录对应块设备/dev/sda1:

bash 复制代码
sudo mkdir -p /mnt/ubuntu
sudo mount -o rw /dev/sda1 /mnt/ubuntu

ok,走到这一步,事情已经好办多了,重建软连接即可:

bash 复制代码
cd /mnt/ubuntu
sudo ln -s usr/lib64 lib64

这里的链接目标最好设置成 usr/lib64,与linux系统原来的保持一致,不要设置为 /usr/lib64,否则可能埋下问题隐患。

最后,记得卸载块设备:

bash 复制代码
sudo umount /mnt/ubuntu

关机,拔掉u盘,开机,系统正常进入,ssh正常连接,问题完美解决。

结语

Linux根目录下的文件一定不要乱动,否则可能导致严重后果。我误删/lib64也是受了ai的误导,某宝与某包都告诉我/lib64不是一个标准的ubuntu目录,是用户创建的,所以我才放心删除的,最后发现这就是ubuntu的一个标准目录。。。牵涉面比较广的问题大家还是不要完全相信ai为好,尽量亲自验证再操作。

相关推荐
小成202303202658 小时前
Linux高级02
linux·开发语言
mounter6258 小时前
【硬核前沿】CXL 深度解析:重塑数据中心架构的“高速公路”,Linux 内核如何应对挑战?-- CXL 协议详解与 LSF/MM 最新动态
linux·服务器·网络·架构·kernel
++==8 小时前
Linux 进程间通信与线程同步技术详解:IPC 机制、线程 API、同步工具与经典同步问题
linux
特长腿特长8 小时前
centos、ubantu系列机的用户和用户组的结构是什么?具体怎么配置?用户组权限怎么使用?这篇文章持续更新,帮助你复习linux的基础知识
linux·运维·centos
zzzyyy5388 小时前
Linux环境变量
linux·运维·服务器
pluvium279 小时前
记对 xonsh shell 的使用, 脚本编写, 迁移及调优
linux·python·shell·xonsh
无级程序员9 小时前
centos7 安装 llvm-toolset-7-clang出错的问题解决
linux·centos
赛博云推-Twitter热门霸屏工具9 小时前
Twitter运营完整流程:从0到引流获客全流程拆解(2026)
运维·安全·自动化·媒体·twitter
CHHC18809 小时前
NetCore树莓派桌面应用程序
linux·运维·服务器
帮我吧智能服务平台10 小时前
装备制造智能制造升级:远程运维与智能服务如何保障产线OEE
运维·服务器·制造