红联Linux门户
Linux帮助

硬盘重新分区过后置换系统[Feodra14]

发布时间:2011-03-24 11:26:45来源:红联作者:pallana
前几天折腾上了Fedora15,(详情见这里)但毕竟是测试版,时常崩溃。当它崩溃后的残局达到了我无法收拾的时候,我想我该恢复到使用原来的Fedora14了(Fedora15两三天的时间就被我折腾死了,也许预见了我有虐待计算机的倾向)。但是我不想重新安装,若从头开始安装的话还要进行配置,然后一个软件一个软件的安装,花费的时间太长,我想直接使用我的Fedora14备份文件来恢复系统。
说干就干了,LiveCd启动系统,挂载Fedora15系统分区,然后复制系统文件。再挂载/boot分区,复制内核,修改grub.conf,重启系统,漂亮的蓝色进度条结束后,卡了,提示无法找到/根目录。
内核可以启动,但是无法找到文件系统,这个问题如何解决呢?毕竟在红联混了些日子,每天看高手们的文章,我还是有些收获的。很快的我就想到会不会是/etc/fstab的问题?是不是试验一下就知道了,修改/etc/fstab,重新启动系统,发现系统可以正常启动了,而且和我刚备份的时候一模一样,我的系统恢复成功了。太高兴了,看来论坛没有白混,以后还要继续混下去了。

接下来详细说一下我的置换过程,作为向不厌其烦的解答新手问题论坛里的高手们致敬:

1.确定分区情况
首先确定分区情况,然后修改/etc/fstab和grub.conf ,使之可以挂载正确的路径就可以了。
分区情况如下
/dev/sda1 500M boot ext4
/dev/sda2 250G Linux LVM
LVM卷内的分区情况
LVM卷名称 大小 挂载目录 格式 设备
lv_root 20G / ext4 /dev/dm-0
lv_home 20G /home ext4 /dev/dm-4
lv_swap 1G swap ext4 /dev/dm-1

以上这些信息都可以在系统中利用 磁盘实用工具 来查看。

2.复制系统文件并修改fstab

用liveCD启动系统,挂载Fedora15的系统分区,假设挂载到/media/_Fedora15.然后把不需要的文件夹删除,再把Fedora14系统备份文件解压到这里来,然后修改vi /media/_Fedora15/etc/fstab。注意修改的文件,不要把命令写成 vi /etc/fstab。这样的话就是修改了LiveCD的fstab。[code]#
# /etc/fstab
# Created by anaconda on Sun Jan 30 03:38:28 2011
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
#UUID=3ee58373-58bb-48e0-8d73-ad162ce5be54 / ext4 defaults 1 1
#UUID=d750731f-4f72-4028-bfdf-ccb691dc6995 /home ext4 defaults 1 2
#UUID=17e36900-278d-4501-abf7-b79cd79ca562 swap swap defaults 0 0
/dev/dm-0 / ext4 defaults 1 1
/dev/dm-4 /home ext4 defaults 1 2
/dev/dm-1 swap swap defaults 0 0
/dev/sda1 /boot ext4 defaults 1 1
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0[/code]其中前面被注释掉的UUID开始的行是我以前Fedora14系统安装的时候的分区情况,采用UUID的方式来描述设备的,现在我已经重新分区,那么原来的UUID就不行了,必须修改。为了简单,我用设备名来定义的。
在修改的时候注意,中间只能用TAB来间隔,不要使用空格,使用空格会导致错误。
即 /dev/dm-0 [TAB] / [TAB] ext4 [TAB] defaults [TAB] 1[Space]1
中间均是用TAB来间隔的,若/dev/dm-0 / ext4 中间用了空格,则会导致错误。
只有最后那个1 1 中间可以用空格,而且建议只用一个空格就好了。

3.复制内核并修改gurb.conf
接下来挂载/boot分区,假设挂载到了/media/_boot,然后把我的内核复制到这个分区
sudo cp /media/_fedora15/boot/*2.6.35.11-83.fc14.i686* /media/_boot
修改grub.conf。我的内核是2.6.35.11-83.fc14.i686 ,在修改grub.conf的时候就只需要修改这个内核名称就可以了,其他的不修改,利用Fedoa15的就好。我的grub.conf如下。[code]# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/mapper/VolGroup-lv_root
# initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=0
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.35.11-83.fc14.i686)
root (hd0,0)
kernel /vmlinuz-2.6.35.11-83.fc14.i686 ro root=/dev/mapper/VolGroup-lv_root rd_LVM_LV=VolGroup/lv_root rd_LVM_LV=VolGroup/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us rhgb quiet nouveau.modeset=0 rdblacklist=nouveau
initrd /initramfs-2.6.35.11-83.fc14.i686.img
title Fedora (2.6.38-0.rc5.git1.1.fc15.i686)
root (hd0,0)
kernel /vmlinuz-2.6.38-0.rc5.git1.1.fc15.i686 ro root=/dev/mapper/VolGroup-lv_root rd_LVM_LV=VolGroup/lv_root rd_LVM_LV=VolGroup/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us rhgb quiet
initrd /initramfs-2.6.38-0.rc5.git1.1.fc15.i686.img[/code]只修改了第一个选项的内核名称就可以了,第二个选项是我安装Fedora15的时候LiveCD上的内核。
这里的root=/dev/mapper/VolGroup-lv_root 应该就是使用了卷名称来标明根目录位置的。当然也可以修改为 root=/dev/dm-0 ,还可以使用root=UUID=XXXXXXXX来标明。

4 重启系统
当我重新启动后发现不能进入系统,原来是U盘没有拔下来,拔掉U盘后,一切正常了。

总结一下:
Linux的系统的启动只有两个地方涉及到硬盘的分区,一个是grub引导时,另一个就是fstab挂载分区的时候,而对于其他的软件,不再对于分区做任何的处理,都是从/目录为路径来读取数据,所以原则上可以把你的系统放到任何的地方,只要能够让grub找到,让fstab得到分区信息就是了。而grub以及fstab均可以通过UUID、设备名(如/dev/sda1,/dev/dm-1形式)、卷标名称等的方式来读取数据和挂载分区,这就给我们提供了很多的选择。
文章评论

共有 22 条评论

  1. wjc11261103 于 2013-05-17 14:57:37发表:

    顶一下 在学习中:0)1

  2. loveRHEL 于 2013-05-12 19:22:02发表:

    顶!

  3. ask200 于 2013-05-12 11:42:00发表:

    看着高深莫测~

  4. 月亮大姐 于 2012-05-24 13:50:25发表:

    一个人最大的破产是绝望,最大的资产是希望。

  5. rjicecgvvk 于 2012-02-13 10:27:21发表:

    你们订婚的日期决定了吗?" "
    刚刚决定的,就在这个月月底。" 茱莉亚似乎想到什么,眉开眼笑地把原静羽
    拉向沙发," 静羽,你来帮我看看,我正在挑选订婚当天要穿的礼服吧!" "
    哦……好……" 原静羽被动地照做。
     她在心中严重的警告自己:不能哭!绝对不能哭!否则会被静影看穿心事。
     静影已经亲自承认他要娶茱莉亚,这代表静影爱茱莉亚,所以她不可以哭,
    更不能反对,不然会给静影带来无端的困扰。
     于是她强颜欢笑,心不在焉地和茱莉亚讨论礼服的事。
     " 静羽,你不是来找静影的吗?" 夜岚一句话救了她。
     原静影也因为茱莉亚和达尼尔的事,一时忘了问原静羽突然到访的原因,连
    忙把原静羽拉进怀里,满怀柔情的问:" 在学校发生什么事了?" 莫非又有"
    哈雷" 的人找麻烦?
     静影的柔情此刻对原静羽无异是锥心的折磨,害她更想放声痛哭,她赶紧深
    吸一口气,仰高脸不让眼泪掉下来,勉强扬起唇角道:" 没事,你别穷紧张。
    " " 那——" " 我只是在学校听到同学说你要订婚,因为我从没听你提过,所
    以感到很意外,一时性急才跑来问你的。现在我已经知道是事实就好了,那—
    —我要回学校上课了。" 此刻的原静羽一心只想逃开原静影身边。
     " 我送你去。" 原静影说着便拿起汽车钥匙。
     " 不,我自己回去就好。" 原静羽再也忍不住泛起氤氲泪光。
     " 静羽,你怎么了?" 原静影状甚焦急关心。
     原静羽连忙拭泪说道:" 我没事……只是你没有事先告诉我你要订婚的事…
    …让我觉得有点被冷落的感觉,所以才……" 愈说泪愈泛滥,害她无法再说下
    去。
     原静影掏取手巾,小心轻柔地替她拭泪,宠爱地说:" 傻女孩,你别胡思乱
    想,没事先告诉你订婚的事是觉得没什么重要,无论我有没有结婚,你在我心
    中永远是最重要的妹妹,我怎么可能冷落你?" " 确实是我多心了……" 原静
    羽只能这么附和,泣血的心在不停呐喊着:我不要当你的妹妹,我要当你最爱
    的女人!
     " 好了啦,静影,快放手让静羽回学校去,难道你想让她继续翘课不成?"
    夜岚提醒他。
     " 那我先走了。" 原静羽急着逃出去。
     " 我送你。" " 不用了,你继续做你的事,不可以给我坏榜样喔!" 原静羽
    很懂得如何阻止他。
     原静影果然投降,不再坚持," 你这丫头就会反将我一军,自己路上小心。
    " " 嗯!" 下一秒钟,原静羽已迅速逃离。
     凝睇着消失在电梯的原静羽,原静影迟迟未收回紧盯电梯门口的视线,表情
    看来十分骇人。
     " 怎么?看到静羽的眼泪后悔了,不想?

  6. tan0620 于 2011-08-11 15:44:16发表:

    感谢分享

  7. dqwit 于 2011-05-29 21:44:32发表:

    妞妞

  8. dqwit 于 2011-05-29 21:26:24发表:

    牛B啊,谢谢楼主

  9. tangzhongchun 于 2011-05-02 18:36:45发表:

    好好学习。谢谢!

  10. caiji 于 2011-04-24 21:46:34发表:

    新人学习。飘过

  11. sdut714 于 2011-04-15 03:04:38发表:

    感谢分享技术!
    刚刚开始使用fedora14,慢慢学习

  12. yiyelin 于 2011-04-08 14:23:20发表:

    新手任务,得回帖,谢谢LZ分享?????????????灌水莫怪?????????????有机会一定登门拜谢????????????

  13. yiyelin 于 2011-04-08 14:16:50发表:

    新手任务,得回帖,谢谢LZ分享?????????????灌水莫怪?????????????有机会一定登门拜访????????????

  14. ynzthouyong 于 2011-04-01 22:36:08发表:

    嘿嘿,支持(e:e2s

  15. lijianhui1986 于 2011-03-31 16:46:32发表:

    支持下

  16. Growth兆 于 2011-03-25 09:39:39发表:

    感谢pallana的分享,本贴加入到论坛顶置的Linux应用索引贴中

  17. tiany524 于 2011-03-24 22:18:48发表:

    高手 :0)1

  18. alick 于 2011-03-24 22:10:49发表:

    对,真正理解了就很简单了,怎么折腾都行 :)

  19. breakbrain 于 2011-03-24 19:23:57发表:

    不错.

  20. pallana 于 2011-03-24 15:02:07发表:

    3# wangyu


    经常当小白,也就习惯了。
    有问题使劲的折腾,然后才发现原来真理如此的直接。

  21. wangyu 于 2011-03-24 13:40:27发表:

    常常见你小白一回:0lopw(1

  22. mconela 于 2011-03-24 11:43:32发表:

    太强了,支持支持