一次误删Linux根目录文件的记录—软链接的创建与删除

故事背景

在一个周日的上午,有一个自大且睡眼惺忪菜鸟(也就是我自己😂)准备更新服务器上的测试程序的jar包并重启服务。只见他熟练地快速敲打键盘,cd /path、kill pid、rm -rf ./file。由于都是些简单又敲过无数遍的命令,他打着哈欠输入了一个又一个。然而不出意外的话就出意外了...... 当他删除日志文件夹时把 rm -rf ./log 敲成了 rm -rf /lib。在这一瞬间,他犹如被电击一般,瞬间清醒了起来。脑子开始飞速运转,从如何百度,如何问gpt到是不是该跑到泰国然后老挝、柬埔寨

处理步骤

1、冷静分析问题

在发现自己误删了目录的lib文件夹后,心里就开始慌张了起来,第一反应就去百度寻找一个靠谱的恢复文件的方法,但是在按照百度上办法试着找到被删除的文件时,发现有一些命令已经执行不了了,比如grep等命令,于是尝试恢复文件的计划暂时被打断。在这十多分钟的兵荒马乱后,我渐渐的冷静下来。这时一个想法涌入脑海------在根目录下执行ll命令后,嘴角开始微微上扬。

lib文件应该是系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都要用到这些共享库.

2、定位问题

执行完 ll 命令后,看到了根目录下有一些是软链接,这时想到根目录下的lib应该也是一个软链接。此时登录其它服务器并到根目录下执行 ll,发现确实如此。于是再通过history命令查看我删除lib文件的命令为:rm -rf /lib,至此确定我只是删除了lib的软链接,这个软链接指向的是 /usr/lib

3、解决问题

在根目录下重新创建一个软链接并指向 usr/lib,在根目录下执行命令 ln -s /usr/lib /lib 。至此,服务器已经恢复正常。

这里还好我误操作的命令是 rm -rf /lib 而不是 rm -rf /lib/,如果是后面的命令的话,那直接也就把指向的 /usr/lib 也删除掉了。

4、软链接知识点

软链接(也称为符号链接或symlink)是指一个特殊类型的文件,它包含了另一个文件或目录的路径信息。也就是说,软链接是一个指向另一个对象的快捷方式,它不共享相同的内容,属性和权限。软链接可以跨越不同的分区和文件系统创建

通俗来说软连接是linux中一个常用命令,它的功能是为某一个文件在另外一个位置建立一个不同的链接,类似于windows的快捷方式。

shell 复制代码
# 创建软链接命令
ln -s 源文件或目录 目标软链接文件名
# 删除软链接命令
rm file

总结

在执行rm 高危操作时还是需要"三思而后行",遇到问题一定要冷静分析,然后寻找最合理的解决办法。(祝大家永不加班!)

相关推荐
sulikey1 天前
【Linux权限机制深入理解】为何没有目录写权限仍能修改文件权限?
linux·运维·笔记·ubuntu·centos
liu****1 天前
8.list的模拟实现
linux·数据结构·c++·算法·list
biubiubiu07061 天前
VPS SSH密钥登录配置指南:告别密码,拥抱安全
linux
人生苦短,菜的抠脚1 天前
Linux 内核IIO sensor驱动
linux·驱动开发
jz_ddk1 天前
[LVGL] 从0开始,学LVGL:进阶应用与项目实战(上)
linux·信息可视化·嵌入式·gui·lvgl·界面设计
望获linux1 天前
【实时Linux实战系列】Linux 内核的实时组调度(Real-Time Group Scheduling)
java·linux·服务器·前端·数据库·人工智能·深度学习
MC丶科1 天前
【SpringBoot常见报错与解决方案】端口被占用?Spring Boot 修改端口号的 3 种方法,第 3 种 90% 的人不知道!
java·linux·spring boot
江公望1 天前
ubuntu kylin(优麒麟)和标准ubuntu的区别浅谈
linux·服务器·ubuntu·kylin
Lynnxiaowen1 天前
今天我们开始学习python语句和模块
linux·运维·开发语言·python·学习
生态笔记1 天前
PPT宏代码
linux·服务器·powerpoint