LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 5786|回复: 24

[HOWTO]如何使用GHOST 8将一个LINUX系统从一台机器复制到另一台机器

[复制链接]
发表于 2004-4-17 06:23:42 | 显示全部楼层 |阅读模式
04-17-2004 已完成第一版HOWTO,内容在第7/8贴。
------------------------------------------------------------
两台机器配置完全不同,
一台 AMD ATHLON XP 1800+ NFORCE2 + GEFORCE TI 4 + SB LIVE5。1     + 40 G
另一台INTEL CELERON2 700+ VIA 694 + TNT2 + AC97(via82cxxx-udio) + 20 G

现已成功从AMD机上复制到INTEL机上。
当然不止GHOST这么简单。如果大家感兴趣我就来写详细过程。

实在累了,赶紧休息去,哈哈。

如果下午醒来能看到10篇回复,就写详细过程。
发表于 2004-4-17 08:45:17 | 显示全部楼层
我回复十篇算不算啊,dreamrise兄赶紧写吧,给我们这些小菜多写点成功的文章,好指引我们前进
发表于 2004-4-17 08:51:14 | 显示全部楼层
10篇^_^
发表于 2004-4-17 11:37:29 | 显示全部楼层
我也算一篇!楼主快写啊!
发表于 2004-4-17 13:06:28 | 显示全部楼层
快写,强烈期待中。。。。。
发表于 2004-4-17 13:40:29 | 显示全部楼层
刚才想了想,dreamrise兄是不是在这里挖坑让我们灌水啊?:ask
dreamrise兄快把文章贴出来吧~
发表于 2004-4-17 14:19:49 | 显示全部楼层
等你等到我心痛!千呼万喚不出?!
发表于 2004-4-17 18:25:19 | 显示全部楼层
把amd整个系统tar起来,在intel机上解开,修改fstab,grub(或lilo),有必要的话重编一下kernel,搞定!:p
 楼主| 发表于 2004-4-17 21:13:50 | 显示全部楼层
呵呵,只有6篇回复哦。简单写写吧:

我朋友有台机器就是INTEL那台,原本装的WINDOWS染了太多病毒,不行了。我就把她的机器拿了过来。然后重新分区.
讲一下分区:
一个主分区,FAT32,为W2K准备的(7G)。
一个扩展分区,然后划成了三个逻辑分区:一个FAT32,作WIN2K的D盘(3G),一个未格式化的分区,留着待会GHOST LINUX用(8G),还有一个200多M的LINUX SWAP分区,
这是LINUX下用FDISK看的结果:
  1. Disk /dev/hda: 20.5 GB, 20547841536 bytes
  2. 255 heads, 63 sectors/track, 2498 cylinders
  3. Units = cylinders of 16065 * 512 = 8225280 bytes
  4.    Device Boot      Start         End      Blocks   Id  System
  5. /dev/hda1   *           1         973     7815591    b  W95 FAT32
  6. /dev/hda2             974        2498    12249562+   f  W95 Ext'd (LBA)
  7. /dev/hda5             974        1433     3694918+   b  W95 FAT32
  8. /dev/hda6            1434        2465     8289508+  83  Linux
  9. /dev/hda7            2466        2498      265041   82  Linux swap
复制代码
先是用史努比做的WINDOWS2000GHOST安装光盘,用GHOST灌了一个WIN2K在C盘上。

接下来就要用GHOST灌LINUX了,GHOST灌WINDOWS大家都会用,把硬盘拆下来,装到另外一台机器上,两个硬盘之间选择分区到分区的拷贝就行了,灌LINUX也是一样,但是在做GHOST之前还有以一项重要工作要在旧主机上做:为新主机编译一个新内核
1、重新编译一个内核,我用的内核是前几天有一个贴子里面说的打了SPLASHSCREEN的补丁的2。6。5的内核    http://www.linuxsir.cn/forum.php?mod=viewthread&tid=101574   ,这样我就要根据新的主机的硬件环境来修改编译选项,重新编译一个内核。相当这两台机器的改动,需要修改这几处: 处理器/硬盘控制器/ALSA驱动/ 关于硬件信息你可以进WINDOWS用那个叫AIDA32的软件来查看,把芯片类型记下来(不是要你记品牌),如果你手上有LINUX的LIVE CD,比如KNOPPIX/MANDRAKE MOVE的话,也可以用它来启动试试,把启动中找到硬件的提示记下来,然后根据这些信息来修改你的内核配置,再编译新内核。把编译出来的内核文件拷贝到/boot/目录下,新取一个名字。
2、这个准备GHOST的系统中还要装一样东西就是GRUB或LILO,先装好,待会要用。

接下来就可以用GHOST拷贝你的LINUX分区了。
GHOST时还有一点要注意:你的源分区已用空间的大小要小于目标分区的大小,小的可以灌进大的,大的可就放不进小的。而特别的一点,对于reiserfs格式的分区,GHOST会把整个分区的大小都当做已使用的空间,这点跟别的文件格式都不同,我也是做的时候才发现,而对EXT2/EXT3/FAT这些文件格式的分区,GHOST可以识别出正确的已用空间来。

接下来就讲GHOST之后的配置了,灌完了还是不能启动,因为没有装引导程序,我要用GRUB来做引导,所以我一开始在GHOST的系统中就装好了GRUB,然后找一张随便什么版本的LINUX安装光盘来进入急救模式:
1、mount 你GHOST好了的LINUX分区:/dev/hda6
    cd / && mkdir slack && mount /dev/hda6 /slack
2、chroot到你GHOST好了的LINUX分区:/dev/hda6中去
    chroot /slack /bin/bash
    . /etc/profile
3、这时候你已经进到你新灌的LINUX中来了,列一下如果没有问题,就说明ghost的过程是成功:
     然后就可以开始安装GRUB了,给个SHELL给大家,修改一下,然后在你的/boot/grub目录下执行,就可以用了:
INSTAL.SH
  1. grub --device-map=/boot/grub/device.map --batch <<EOF
  2. install (hd0,5)/boot/grub/stage1 d (hd0) (hd0,5)/boot/grub/stage2 p (hd0,5)/boot/grub/menu.lst
  3. quit
  4. EOF
复制代码
还要编辑:/boot/grub/device.map,本来是工具生成的,但是也可以手工编写:
  1. (fd0)   /dev/fd0
  2. (hd0)   /dev/hda
  3. (hd1)   /dev/hdb
复制代码
4、引导程序装好后就是编辑/boot/grub/menu.lst文件了。注意把内核部分要改成你为新系统编译的内核 kernel-2.6.5-via
/etc/grub/menu.lst:
  1. timeout 10
  2. color black/cyan yellow/cyan
  3. splashimage (hd0,5)/boot/grub/splash.xpm.gz
  4. default 0
  5. title windows
  6. root (hd0,0)
  7. chainloader +1
  8. title Slackware current
  9. kernel (hd0,5)/boot/[color=red]kernel-2.6.5-via[/color] root=/dev/hda6 vga=791
  10. initrd (hd0,5)/boot/initrd.splash
复制代码

5、还有一件就是另外编辑一个/etc/fstab文件,这得根据你的分区信息来做,如果有GENTOO/LFS经验的这点能力应该都有。再不成发个贴子,自然有人来帮你。
/etc/fstab
  1. /dev/hda7        swap             swap        defaults         0   0
  2. /dev/hda6        /                reiserfs    defaults         1   1
  3. /dev/hda1        /windows/c       vfat,[color=red]iocharset=gb2312,codepage=936[/color]        defaults         1   0
  4. /dev/hda5        /windows/d       vfat,[color=red]iocharset=gb2312,codepage=936[/color]        defaults         1   0
  5. /dev/cdrom       /mnt/cdrom       iso9660     noauto,owner,ro  0   0
  6. /dev/fd0         /mnt/floppy      auto        noauto,owner     0   0
  7. devpts           /dev/pts         devpts      gid=5,mode=620   0   0
  8. proc             /proc            proc        defaults         0   0
复制代码
做完这些事情,你的LINUX应该就可以启动了,进到系统后,我的机器还要重新装一下NVIDIA的显卡驱动模块,然后进KDE/GNOME什么的东西都完全正常,跟在原机器上一样。

这篇短文可能新鸟还是看不明白,比如如何编译内核,如何编辑/boot/grub/menu.lst,如何编辑/etc/fstab.这些都可以到论坛里去找吧。

先写到这里,以后再完善本文,希望对大家有点帮助。
 楼主| 发表于 2004-4-17 22:24:01 | 显示全部楼层
这儿是那两台机器内核配置的config文件,大家可以参考一下,学学怎么最优化的配置你的内核,最优化的要求就是只留下需要用的,编译进内核build-in而不是模块modules,我的配置文件中没有一个模块,但是模块支持是必须要的,要不然怎么装NVIDIA/ATI驱动:

这是AMD ATHLON XP 1800+ NFORCE2 + GEFORCE TI 4 + SB LIVE5。1 :
-rw-r--r--    1 root     root        24728 2004-04-17 22:21 config-2.6.5-nforce
这是INTEL CELERON2 700+ VIA 694 + TNT2 + AC97(via82cxxx-udio):
-rw-r--r--    1 root     root        24006 2004-04-17 04:20 config-2.6.5-via


注意这几处:
  1. Processor family:
  2. ( ) Athlon/Duron/K7
  3. (x) Pentium-II/Celeron(pre-Coppermine)
  4. ATA/ATAPI/MFM/RLL support:
  5. [*]       Generic PCI bus-master DMA support
  6. < >         AMD and nVidia IDE support
  7. < >         Intel PIIXn chipsets support
  8. <*>         VIA82CXXX chipset support
  9. Character devices:
  10. <*> /dev/agpgart (AGP Support)                                                                     
  11. < >   Intel 440LX/BX/GX, I8xx and E7x05 chipset support
  12. < >   Intel i865 chipset support
  13. < >   NVIDIA nForce/nForce2 chipset support
  14. < >   SiS chipset support
  15. <*>   VIA chipset support
  16. PCI devices:
  17. < > EMU10K1 (SB Live! & Audigy, E-mu APS)
  18. <*> VIA 82C686A/B, 8233 South Bridge
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表