免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: jacson007
打印 上一主题 下一主题

高手救命啊,误删/usr目录,欢迎各位的高见 [复制链接]

论坛徽章:
0
71 [报告]
发表于 2009-03-12 19:48 |只看该作者
如果之前有备份到有得救,没有就只能重装了

论坛徽章:
0
72 [报告]
发表于 2009-03-13 03:09 |只看该作者
原帖由 wiliiwin 于 2009-3-5 09:23 发表
没有那么严重,不格式分区重新装下系统就行了,如果服务器有问题的重新装下,就好了。以前干过这样的事,基本半个小时就搞定了。

能给点详细步鄹么?

论坛徽章:
0
73 [报告]
发表于 2009-03-13 09:29 |只看该作者
啊,我看了八页了,还没搞定啊!继续期待
学知识啊

论坛徽章:
0
74 [报告]
发表于 2009-03-15 14:59 |只看该作者
楼主机器还挂着啊,好了没有?

论坛徽章:
0
75 [报告]
发表于 2009-03-27 14:08 |只看该作者

最终解决办法

首先多谢CU各位热心的高手回帖。
在看完高手们的回帖之后,我首选选定方案jiecho大侠的方案,请看原帖http://linux.chinaunix.net/bbs/thread-1064580-1-1.html
预备知识:
rpm包的各种信息,包括包名,安装日期、文件的md5校验信息等,都是存放在/var/lib/rpm的各个文件当中的,
所以只要这个目录不被删掉,我们可以从中读出我们需要的信息进行恢复被误删的文件。

步骤:
1,用安装光盘进入rescue模式,校验所有系统中的安装包,找出那些文件丢失:

rpm -qaV --root /mnt/sysimage >/tmp/rpm_qaV.log


2,找到所有校验结果为missing的文件:

grep missing /tmp/rpm_qaV.log|awk '{print $NF}' >/tmp/missing_file

3,查询每一个被删除的文件是属于那个rpm包:

for line in `cat /tmp/missing_file`
do
rpm -qf $line --root /mnt/sysimage >>/tmp/missing_rpm
done


4,步骤3中生成的missing_rpm文件有很多是重复的,需要处理一下:

sort /tmp/missing_rpm |sort -u >/tmp/rpm_reinstall
cp /tmp/rpm_reinstall /mnt/sysimage/tmp

到此为止,我们在救援模式下得到了系统所有被删除的文件所在的rpm包,
下一步的工作就是把这些rpm包重新安装,被删除丢失的文件也就找回来了。

5,启动到单用户模式,挂载光盘,从安装光盘里拷贝拷贝需要的rpm包到硬盘准备安装:
mkdir /rpms
mount /dev/cdrom /mnt
cd /mnt/Server
for line in `cat /tmp/rpm_reinstall`
cp $line* /rpms
done

6,重新用安装光盘启动到救援模式,安装rpm包:

rpm -ivh /mnt/sysimage/rpms/* --root /mnt/sysimage --nodeps --force

忽略各种警告和错误信息,等待完成,重新启动系统,一切正常,可以安心睡觉了!

然而不幸的是,可能由于驱动的原因,关盘启动无法进入rescue模式,所以此方案最终不得不放弃,但是还是感谢jiecho大侠的测试和回帖

[ 本帖最后由 jacson007 于 2009-3-27 14:13 编辑 ]

论坛徽章:
0
76 [报告]
发表于 2009-03-27 14:24 |只看该作者

实际恢复

由于无法进入linux rescue模式,所以考虑把重要数据备份出来,然后重装系统,但是还是无法进入安装界面

最后只得init 3 启动到命令行模式,根据上面的救援工作得知某些软件都缺少某些必要的可执行文件/usr/bin/*和/usr/sbin/*

由于以上原因,

先安装好ssh工具,确保系统可以远程FTP,之后撤离机房

用安装盘在虚拟机上安装一个RedHat AS4 ,再压缩拷贝原始目录上传到服务器。

此时大部分问题基本上解决了,但还是有不少软件不完整,或者文件大小被改变。不过系统总算恢复正常使用了。

论坛徽章:
0
77 [报告]
发表于 2009-03-29 16:30 |只看该作者

回复 #76 jacson007 的帖子

恢复就好,关注很久了。

论坛徽章:
0
78 [报告]
发表于 2009-03-29 16:52 |只看该作者
原帖由 chenyx 于 2009-3-4 20:19 发表

关键是怎么传到服务器上.
wget,ftp命令都在/usr目录下



打包另一台机器的/usr目录,然后想办法弄个机房的技术员,让他把这个资料cp到U盘里然后插你机器上 ........

论坛徽章:
0
79 [报告]
发表于 2009-03-29 16:55 |只看该作者
另外,楼主是怎么误删除/usr的,给大伙也提提醒

论坛徽章:
0
80 [报告]
发表于 2009-03-31 22:10 |只看该作者
原帖由 qzdmail 于 2009-3-29 16:52 发表



打包另一台机器的/usr目录,然后想办法弄个机房的技术员,让他把这个资料cp到U盘里然后插你机器上 ........



做过,不巧的是去之前,U盘miss了,郁闷啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP