一、需求:在管理机房服务器,pc等环境的时候,经常需要进行试验环境的配置,可能会需要几十台上百台的具有完全相同的环境的机器

         举一个实例:

        我们需要对大机房新到的20台pc,安装ubuntu9.04的操作系统,需要对系统打补丁,重新编译新的内核,对硬盘进行分区,每个分区格式化为ext3文件系统。

二、传统方法:使用u盘或者系统盘对每一台机器都安装系统,然后打补丁,编译内核,然后分区格式化,挂载文件系统。假设配置这样一台机器需要1个小时,那么总共需要20个小时。

三、克隆拷贝:如果我们采用clonezilla软件来进行镜像拷贝的话,那将大大提高我们的工作效率。

Clonezilla 是一个很好的系统克隆工具,它可以说是吸取了 Norton Ghost 和 Partition Image 的优点。即不仅支持对整个系统进行克隆,而且也可以克隆单个的分区,这种灵活性可能更能适应备份者的需要。详细介绍请进。

四、主要步骤如下:

1、首先我们需要花费1个小时的时间来配置一台我们所要求的实验环境的机器,安装系统,打补丁,编译内核,对硬盘分区,挂载文件系统。第一台这样的机子我们称之为主机A1,其他待安装的机器分别为A2-A20。

2、从clonezilla的官网下载最新版本的软件镜像iso(这个非常重要,一定要最新版本,原因后文分析),选定和我们机器相同体系结构的iso,我们选择i686版本。可以通过ultraiso工具来制作clonezilla启动盘,与制作系统启动盘类似。我们需要制作两个或者两个以上这样的u盘。

3、我们假定所有的机器都是干净的,除了我们刚刚装好的主机A1,其他的机器的硬盘没有操作系统没有数据。

4、如果有多个u盘,我们可以并行操作,假设我们只有两个u盘。将两个u盘分别插入到主机A1(已配置环境)和A2(未配置环境)usb口。搞定了A1到A2的拷贝,A3-A20就可以依葫芦画瓢了。下面我们介绍A1到A2的拷贝过程。

5、首先我们重启机器A1,按住快捷键(我们用的是dell机器,是F8)进入grub启动选定界面,选择从u盘启动,然后进入clonezilla系统。

 其加载过程与Linux系统是一样的,不同的是其最后自动加载了还原工具。然后中途有一系列的选项操作,都是傻瓜式的。有篇文章详细的说明了,并且还附带了截图——《学生机房虚拟化(六)使用Clonezilla克隆Linux系统》,可以作为参考。

6、其中,有一项是配置ip。因为clonezilla拷贝是通过网络传输拷贝的,所以最起码要保证所有20台机子之间形成的局域网要是通的,能够相互访问。假定ip分别设置为192.168.0.1-192.168.0.20,子网掩码设置为255.255.255.0,网关设置为190.168.0.254。

7、最后的A1屏幕上会显示等待目标机器的字符,剩下的操作就要交给主机A2了。

8、接下来,要重启A2,按照步骤5,6进入clonezilla系统,配置好ip。最后在终端输入接收拷贝的命令

 
  

ocs-onthefly -s 192.168.0.1 -t sda1    //192.168.0.1是主机A1的ip,sda1是我们想要拷贝的磁盘盘分区

接下来又是傻瓜式的,详细截图,可以参照。这个拷贝速度可以达到2GB/min以上。一个系统占用了约为2GB空间,而我们sda1的分区为50GB,拷贝sda1实际上只需要1min的拷贝时间,而不是50GB/2GB。因为分区后面都是空的,不需要磁盘写操作。
我们的机子是干净的,想完整的复制整个硬盘。我们选定了device-device的拷贝方式(还有device-p_w_picpath方式,能够保留A2-A20硬盘上的内容)。拷贝的过程中,device到device的拷贝模式,会擦除硬盘上的所有数据,把主机A1硬盘(分区)中的所有数据100%的拷贝到主机A2-A20的硬盘(分区)。

10、然后把插在A2的u盘拔了,重启A2,进入A2系统,验证一下,是否拷贝成功。

11、最后依葫芦画瓢,搞定A3到A20。