我有一台CentOS的机器,装有三块硬盘,有两块没有使用,今天把它们拿出来,放到需要的机器上去。但是在重新开机时出现了一个提示:Partition table entries are not in disk order.
它不影响开机,机器的运行也是正常的,但总归是个问题。搜索了一下资料,说是分区的位置顺序出了乱子,通常发生于删除分区,再重新分区时。
解决方案:使用fdisk命令修复分区顺序!
fdisk /dev/sda
键入x,进行扩展模式
键入m,查看扩展模式中的命令
键入f,修复分区顺序
键入r,回到主菜单
键入p,列出分区表,查看是否分区表正确
键入w,保存新的分区表
需要注意的是:改动磁盘分区表是有风险的,请慎重!
我就遇到了问题,修复了分区表后,在重启机器时,发现GRUB损坏,无法进入系统!这下又要修复GRUB!
使用安装盘修复GRUB:
1、放入光盘,重新开机
2、按F5,进入resuce模式的选择界面,如下图:
3、在boot: 字符后输入linux rescue,敲Enter键进入resuce模式,如下图:
4、下面是一些选择语言、键盘布局、是否启用网络(选择否)等
5、关键的地方来了,选择continue,系统会搜寻已安装内核文件;如果找到,会提示:chroot /mnt/sysimage;若没有提示,问题就大发了,重装系统吧!如下图:
6、进入如下图的shell界面:
7、在如上图中的shell中:
首先运行fdisk -l命令,找到linux启动分区,就是Boot列下带*号的那个分区;
然后在shell中输入:root (hd0,2),0是linux系统所在硬盘号,2为boot分区号;对GRUB引导中的硬盘数字表示法不了解的朋友,请自行查找相关资料。
8、继续输入:setup (hd0),这个0,是MBR所在的硬盘号;我这里linux系统和MBR在同一块硬盘上,若不在一块硬盘,就要注意这个硬盘号了。
9、下面没什么好说的,做完之后,重启系统即可!