目录文件丢失修复
一、故障现象 1、重启后进入grub> 提示符 ,或error 15
2、按常理判断,执行
grub> root (hd0,0)
grub> kernel /vm +tab键 ,出现error 15 ,
file not found ,确定内核文件已经不存在
grub> ini
trd /init +tab键 出现error 15 ,file not found ,以初步确定文件已经不在
二、修复摸式 1、将光盘插入光驱
2、进入系统修复摸式在boot: 输入linux rescue 进入光盘救援模式
3、chroot /mnt/sysimage
三、修复过程记录
1、执行chroot后,光盘将原有系统挂载,实际切换到原有
linux系统 2、查看现象 #
cd /boot 进入到boot目录
#
ls 使用ls
命令后发现已经没有内容,原有内核文件和其他文件已经不存在 3、排除思路
1、修复kerner 1)、 卸载原有kernel #rpm -e kernel --nodeps 2、重新安装kernel 1)、 首先挂载光盘
#mount /dev/cdrom /opt 挂在光盘成功,如果没有/dev/cdrom ,可能 是/dev/hdc ,还一下就可以挂载了。
#cd /opt/Server
#ls |
grep kernel
#rpm -ivh kernel-2.6.18+tab补全
安装kernel完成,现在ls /boot下面有关内核的文件都已经存在 ( 注意redhat6版本, 会少一个initramfs- .img文件,
可以执行dra
cut -f 命令生成, redhat5版本,可以使用
mkinitrd命令生成。) 3、修复grub
#cd /boot
正常情况下在 /boot 下有一个grub的目录,现在没有了,需要修复
执行:
#grub-install /dev/sda 看实际情况 ,完成后在看/boot目录,grub目录也有了,一些文件也有了,但是,grub.conf文件没有了
这个需要手动写一个出来
#cd grub
#
touch grub.conf
添加 default=0
title redhat 5.5
root (hd0,0)
kernel /vmlinuz-2.6.18-194.el5 ro root=LABEL=/ 如果不确定根在那里,可以查看/etc/fstab文件
initrd /initrd-2.6.18-194.el5.img
实际情况在/etc/目录下也有一个grub的文件,给链接一个过去 #
rm -rf /etc/grub.conf
#
ln -s /boot/grub/grub.conf /etc/grub.conf 4、基本修复完成,现在可以重新启动系统了 ,重启系统后发现启动了后,立刻重启,又有新的问题了。 5、进入但用户模式,或者也可以进入到修复模式。
编辑/etc/rc.local文件,发现有一个开机启动项,将其删除,重启。 6、启动图形,发现图形启动不了,初步想到/tmp是否没空间,或者权限问题。在rhel6的系统,没有问题,可以启动,但是会报错。 进入单用户模式,查看/tmp目录
#cd /
#ls -l 发现tmp目录权限为d---------
正常的/tmp目录为777权限,有一个t权限位
修改一下
#
chmod 777 /tmp
#chmod o+t /tmp 7、重启一切正常