一.概述
前两天在网上找了个脚本,看着没问题,直接复制粘贴了. 结果有特殊字符,直接换行.
执行了 rm -rf /usr 目录. 然后就傻了,各种操作命令找不到, 无法登陆.......
万分幸运的是,数据没丢,要是丢了.那我就要命了
恢复思路如下:
二.具体操作
准备一份安装系统的光盘(U 启也可以)
分两部分:
1.插入系统光盘或者 系统 U 盘.
进入 bios , 设置为 光驱或者 U盘启动 (F2 ,F8, F12 , ESC ..... )
2.进入系统安装盘界面,先选Troubleshooting,再选Rescue installed system
3 进入后等待最终进入提示模式,输入 1 回车
4 然后输入chroot /mnt/sysimage 切换到临时linux系统,切换后前缀会变为bash
在这时,原来的操作系统就挂载到了 /mnt/sysimage 目录下.
将恢复文件/usr 直接复制到 /mnt/sysimage 目录即可
5.将备份的数据接入 linux 操作系统&替换
我是将/usr 目录的文件直接放到 U 盘里面了.(注意 U盘格式,不然 linux 操作系统不识别)
5.1. 插入 U 盘
5.2. 执行命令 查看挂载 U 盘映射的地址名称
5.3.创建挂载文件目录
5.3. 挂载 U 盘
5.4. 操作U 盘内容
5.5.卸载 U 盘
6. 直接将/usr 目录替换
5. 输出exit然后 exec /sbin/reboot (重启)
记得bios改回为硬盘启动. (如果是通过临时修改的那种方式,可以不做修改.)
已知问题
1. 操作系统进入维护模式, 部分磁盘无法正常挂载.
原因: 操作系统对应的版本不对或者说环境不对. 导致磁盘无法挂载.
2. 用户账号无法登陆.
正常, /usr 目录恢复就可以正常登陆了, 不用担心用户账号,密码丢失的问题. 用户账号密码存放的不是在/usr 目录.
3. 重做系统之后,数据会丢嘛?
重做系统的话,数据资产可以不格式话. 正常挂载的话,是不会丢的.如果磁盘的名称是操作系统目录比如/var /home 之类的,重命名一个新的目录吧, 不然重做系统的时候会报错哦.
4.进入救援模式, 原来的操作系统在哪?
原来的操作系统是在/mnt/sysimage 目录下. 并不是 当前的根目录 "/ " 下. 进入救援模式的系统是一个临时系统, 重启之后就消失了.另外,不要讲临时系统的/usr 目录直接复制到/mnt/sysimage 目录下, 因为不起作用. 如果这是/usr/sbin 或者/usr/bin 目录下的一些命令的话,还是可以复制的.
5.yum 安装的软件之类的入股丢失的话??
重新安装吧. 用 yum 或者将操作系统中的 rpm 包之类的挂载到操作系统中.直接安装就好了. 软件包不多的话,rpm 安装也可以. 如果多的话,还是尽量用 yum 安装吧. 我试的时候,yum 还是可以使用的. 如果不能使用建议重新安装 yum. 依赖包找一台有 yum 的同版本的 linux 操作系统, 将安装包下载到本地.在挂载到需要恢复的 linux 系统上即可.
6. 进入 bios 的时候, 我遇到了两种模式. 建议选非 UEFI 的那个模式. 具体有啥区别.自己百度一下啊.
7.重做系统的话, 引导扇区 根据 bios 引导模式的不一样,会有不同的引导区. (SWAP 交换分区可以不划分,有告警没事 )
非 UEFI: /boot 目录 可能还需要 /biosboot (名字记不住了,看报错日志吧)目录.
UEFI: /boot/efi 目录