当前位置:操作系统 > Unix/Linux >>

FreeBSD数据迁移方法

hpserver# dmesg | grep ad2成功的话会显示

  ad2: 9765MB <Maxtor 91024U4> [19841/16/63] at ata1-master UDMA33等信息,否则你要检查是否接错线,或者硬件兼容问题。

  新硬盘已经安装成功,下面举例说一下两种数据迁移的方法。

  hpserver# mount /dev/ad1s1e /mnt4、将数据迁移,这里也有两种方法,一种是使用tar,另一种是使用dump,我分别介绍,大家可以根据需要而选择备份方式。

  (1) 使用tar备份并还原数据。

  hpserver# cd /var

  hpserver# tar cf - * | (cd /mnt; tar xf -)

  (2) 使用dump备份并用restore还原数据。就我个人而言,我推荐使用这种方法,因为我曾经试过用tar备份var目录的时候,出现了错误并自动停止,我分析了一下原因,一些正在使用的文件或者临时文件可能不能备份,但dump不是以文件为单位,而是而block为单位的,应该不存在这样的情况,所以这是我推荐使用dump和restore的原因。

  hpserver# cd /mnt

  hpserver# dump -f- /var | restore -f- -r在过程中和结束会出现类似以下信息:

  DUMP: Date of this level 0 dump: Wed Jan 14 23:44:35 2004

  DUMP: Date of last level 0 dump: the epoch

  DUMP: Dumping /dev/ad0s1e (/var) to standard output

  DUMP: mapping (Pass I) [regular files]

  DUMP: mapping (Pass II) [directories]

  DUMP: estimated 305 tape blocks.

  DUMP: dumping (Pass III) [directories]

  DUMP: dumping (Pass IV) [regular files]

  DUMP: DUMP: 361 tape blocks

  DUMP: finished in less than a second

  DUMP: DUMP IS DONE

  5、有一点提醒的是,你要确保备份后没有数据写入原来的/var,否则,这些数据没有备份到新分区中。结束后别忘了检查一下结果,并卸载/mnt。

  hpserver# ls /mnt

  hpserver# umount /mnt6、编辑/etc/fstab文件,将原来指向/var的文件系统改为/dev/ad1s1e,重新启动就可生效。

  hpserver# cd /mnt

  hpserver# mkdir root

  hpserver# mkdir usr

  hpserver# mkdir var用cat /etc/fstab查看原来的文件系统的对应关系,我们只要看最后面的一个字母就可以了,这样避免我们忘记了什么对应什么,这就是我刚才为什么让新硬盘的文件系统的名称对应以前的原因。

  hpserver# mount /dev/ad2s1a /mnt/root

  hpserver# mount /dev/ad2s1g /mnt/usr

  

  hpserver# mount /dev/ad2s1e /mnt/var

  3、复制硬盘最好用dump,尽量不用tar,因为你备份根分区的时候,如果不加参数排除一些目录,它会把全部东西备份到你新的分区的,这肯定不是我们想看到的。

  hpserver# cd /mnt/root

  hpserver# dump -f- / | restore -f- -r

  hpserver# cd /mnt/var

  hpserver# dump -f- /var | restore -f- -r

  hpserver# cd /mnt/usr

  hpserver# dump -f- /usr | restore -f- -r

  4、到这里为止,数据备份和还原已经结束,检查一下有没有错漏,然后分别umount这些分区。

  hpserver# umount /mnt/root

  hpserver# umount /mnt/usr

  hpserver# umount /mnt/var

  5、最后,关机,摘掉原来的硬盘,把新硬盘挂到旧硬盘原来的位置,这步不要省略了,如果你不换位置,系统还是认为新硬盘是ad2,由于你的/etc/fstab里面是对应ad0的,所以启动会找不到/usr和/var等文件系统。启动看看,如果没有什么异常,那恭喜你,数据迁移已经成功,否则,请再看看有什么操作错误或者忘记做哪一步了。无论怎样,都别那么着急把旧硬盘内容清空,最好让新的系统运行几天观察有什么异常再动手。

  切记,数据迁移的是一件比较危险的事情,操作过程中不能有差错,否则可能导致你原来的数据丢失,所以必须非常谨慎。
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,