|
|
超越ghost,用tar调整系统实验
先说说我这么做原因和事先规划思路。
原因:我想实验一下使用双内核起动linux。但我在安装linux时,图省事,只分了一个/分区和swap分区。要是重新分区,然后重新安装linux吧,嫌费事。在参考了N篇 文章后,决定用tar把现有的linux备份,重新分区后,再恢复。
思路:准备把现有的/分区重新分成四个分区。
我原有的分区如下:
hda1 win98
hda5 winxp
hda6 win软件
hda7 win游戏
hda8 wn下载目录
hda9 /目录
hda10 swap分区
只准备调整hda9分区,把它变成两个100m的/boot分区,一个3G的/分区,剩余的是/home分区。
调整后要是这个样子:
hda1 win98
hda5 winxp
hda6 win软件
hda7 win游戏
hda8 win下载目录
hda9 100m /boot 安2.6.8内核
hda10 100m /boot 安2.6.11内核
hda11 3G /
hda12 2.7G /home
hda13 swap
准备工作:
1,先搜索有关tar的文章。仔细研读。
2,grub for dos 救急用。
实施过程:
1,备份原系统:我的debian的/目录中有,
/bin,/boot,/cdrom,/dev,/etc,/home,/initrd,/lib,/lost+found,/media,/mnt,/opt,/proc,/root,/sbin,/srv,/sys,/tmp,/usr,/var目录。
很多帖子介绍,其中的/cdrom,/dev,/sys,/tmp,/proc目录不需备份。我的/home目录里也没什么数据,我就也不备份了。但/lost+found,/media,/srv目录是空的,为以防万一,也备份吧。
/mnt目录由于链接了win分区,要备份的话,也会把win分区的数据备份了,所以就不备份了。
2,文章里提到的可以有选择的备份/目录中部分目录的命令,tar -cf /dev/st0 $(ls / | grep -v -e proc -e mnt),我没成功。就老老实实的一个一个目录备份。
命令如下:
tar -cf /home/gkp/usrbak.tar /usr 把/usr目录里的所有目录和文件备份成/home/gkp/目录里的。usrbak.tar文件。
一个一个把所需要的目录备份完后,把这些.tar文件拷贝至一个win分区。(我放在了hda8,就是wing)
3,有以往的经验,我对debian的分区工具很不放心,就用PQ分成我上面所说的样子。
4,本来可以在mandrake10中用tar把备份的内容恢复的。但是想到,如果我的机子里有一天只有debian时,那如何办?于是,就采取了另一种法子-------重装debian基本系统。
5,重装debian基本系统轻车熟路。只是把内核安在hda9中。不挂载hda10,留着装2.6.11内核。把所有的设置都和原来系统保持一致。(我把grub安在了hda9)
6,重启后,用grub for dos进入debian。系统自运行base-config。我只设了root密码和普通用户,(当然也和原系统一致了)。然后就结束了base-config。
7,以root身份进入。先在/mnt里建winc,wing等目录。
用mount /dev/hda8 /mnt/wing命令挂载wing分区。
8,cd进入/目录。/boot我不需恢复了,因为原来系统和现在的一样,况且我也省得修改gurb的menu.lst文件了。先把/etc/fstab文件拷贝到/mnt吧。(原系统的和现在的可不同噢。)同时拷贝的还有root目录。
9,首先是在/目录中,使用以下命令恢复:
tar -xpf /mnt/wing/usrbak.tar 把备份的/usr目录恢复到了现在的/目录中了。
一个一个恢复吧。
其中的/etc和/ lost+found恢复不成,提示现在有这两个目录,就不给你恢复。我用rm把此两目录删了后,就解决了。^_^
10,最重要的,把你刚才拷贝到/mnt的fstab文件再重新拷贝至/etc吧。(不然,怎么挂载swap和/home)。同时拷贝的还有root目录。接着,运行grub,重新安装grub。
11,重启后,一切搞定。这时,再修改/etc/fstab,添加上win分区。
至于我留着的hda10,过几天再安2.6.11内核吧。 |
|