linux系统无法正常启动----故障集
修复命令
(1) grub-install
安装grub stage1和stage1_5到/dev/DISK磁盘上,并复制GRUB相关文件
到 DIR/boot目录下
grub-install --root-directory=DIR /dev/DISK
–root-directory=指定跟在哪(/boot所在的根)
(2) grub交互式
grub> root (hd#,#) 指定硬盘在哪
grub> setup (hd#) 安装的时候要指定硬盘
一. stage1被破坏
stage1: mbr(前446字节)就是bootloader
直接回进入光盘启动
选择第三项进入救援模式
1.用grub命令,
前提是这些文件必须全部存在
1.1/boot/grub/文件存在
执行完之后sync强制写入磁盘
也可以使用
1、重启系统按c键,直接进入grub
grub> kernel /vmlinuz-2.6.32-696.el6.x86_64 ro root=/dev/sda2 selinux=0
grub> initrd /initramfs-2.6.32-696.el6.x86_64.img
grub> boot
2、通过修改/etc/sysconfig/selinux 把selinux=disabled
1.2/boot/grub/文件不存在
只能用grub-install命令
grub-install /dev/sda
然后sysn
2.用grub-install
切根 chroot /mnt/sysiamge
原因:此时所处的位置并不是磁盘上的根,真正的根位于/mnt/sysimage下在救援模式自身是不提供grub-install的只有切根才可以
前提必须是在处于../grub
文件夹中 (也就是必须在/boot的上一级目录 / 下面)
就一条命令
grub-install /dev/sda
二. stage1_5被破坏
mbr之后的扇区比较大(1扇区之后的很多个扇区)
重启会变成这样,
直接进入grub模式
直接修复
修复不了(找不到/boot/grub/grub.conf文件)
所以只能收工敲内核
grub> kernel /vmlinuz-2.6.32-696.el6.x86_64 ro root=/dev/sda2 selinux=0
grub> initrd /initramfs-2.6.32-696.el6.x86_64.img
grub> boot
然后启动后马上写一个/boot/grub/grub.conf文件
这样就ok
三. 如果将/boot删掉
1.简单的删除/boot
所有东西都没了,所以都得修复(grub ,vmlinuz)
进入救援模式
没有/boot了
切根chroot /mnt/sysimage
开始修复
修复grub grub-install /dev/sda
挂载光盘mount /dev/sr0 /mnt
拷贝vmlinuz文件
生成initramfs.img文件
mkinitrd initramfs.img `uname -r`
手写grub.conf文件
2.删除/etc/fatab和/boot
一如果linux系统安装时是以逻辑卷方式安装的
如果这个文件被破坏
那么chroot就不能切根
首先进入救援模式
提示你没有任何linux分区,敲回车开一个shell
找不到/mnt/sysimage
/boot不能拿逻辑卷做
①先恢复fstab文件
**卷组
vgchage -ay 卷组名
然后这些逻辑卷就能被识别了
挂载root
创建fstab文件
用里面挂载的是逻辑卷
然后重启
重新进入救援模式
这就相当于找到操作系统根了(把fstab文件修复完了)
②然后修复grub.conf文件
然后修复/boot文件
切根
挂载光盘
安装kernel 必须强行安装–force
这样直接就能把initrd,vmliuz文件就自动生成了
然后强制写入磁盘sync
生成grub目录
sync写入磁盘
手写一个grub.conf文件在/biit/grub/grub.conf
在vi中可以结合r!命令
读取文件路径
sync写入磁盘
重启
二.如果linux系统安装时是以分区方式安装的
四.如果kerbel和initrd写反
方法一:
选择e编辑
选择o加入新的行 initrd /initramfs.img
d删除第一行initrd /initramfs.img
b重启
进入之后把grub.conf文件修改回去
方法二:
用命令行方式
选择c手工写kernel和initrd
上一篇: LWIP之UDP协议
推荐阅读
-
linux系统无法正常启动----故障集
-
非正常关机时,innodb故障导致mysql无法启动的解决方法_MySQL
-
Linux系统下ybase因环境变量无法启动解决一例
-
java在linux系统下开机启动无法使用sudo命令的原因及解决办法
-
java在linux系统下开机启动无法使用sudo命令的原因及解决办法
-
把WinPE装置到隐藏分区内解决系统遇到故障无法启动问题
-
把WinPE装置到隐藏分区内解决系统遇到故障无法启动问题
-
Linux修改fstab文件后 系统无法启动的解决方法
-
电脑开机出现Invalid system disk导致系统无法正常启动的原因及解决方法
-
系统文件损坏无法正常启动--记一次荡气回肠的自己挖坑自己跳然后爬出来的开心事