由于文件系统经常报有错,我决定格式化一下磁盘(后来知道不是文件系统问题,而是磁盘坏了)。 这是当时的经过。
- 幸好事先已经做过备份。 根分区和HOME目录是分开备份的。
- 磁盘上安装了多个linux,从另一个linux启动,用mke2fs 格式化磁盘
- 把备份恢复到磁盘上
- grub 启动出问题,报 initrd: unknow command
我仍从另一个系统进入, 运行
grub-install --root-directory=<mount_point> /dev/sda - 再从grub启动, 刚才的错误没有了,但启动到读磁盘的地方死机
我观察了一下grub.cfg 里面指定了磁盘的uuid,格式化之后,uuid发生了变化,应
该用新的uuid, uuid 可在/dev/disk/by-uuid 下找
- 修改uuid之后,grub启动正常,能加载内核了,但内核启动到一定程度后报
/root/dev/... 之类的错误
- 回忆前几天也恢复过系统,只不过那时没有格式化, 是不是少了文件,原来
dev, proc, sys, tmp 等目录不存在, 手工建立这些目录
- 启动成功。
总结: 备份很重要。 只要做好备份,Linux 能很容易地恢复。