linux虚拟机克隆后怎么使用
VMware克隆linux基本上配置都不会有问题,唯一要改的就是网卡信息,防止和原网卡冲突。
1、修改网卡的MAC,一般可以到/etc/sysconfig/network-scripts/里找到相应的网卡,进入编辑网卡的MAC,改成其他不冲突的MAC。
2、修改MAC的同时,可以修改网卡的ip,掩码,dns等。
3、修改完MAC地址之后,要到/etc/udev/rulesd/70-persistent-netrules下面将原来eth0的mac换成现在的MAC,并将MAC1删掉。(不同服务器,这个文件位置不一样)
4、重启网络服务,service network restart
linux 下是无法使用ghost的.
因为ghost只能识别很少的老旧Linux文件系统,也无法识别grub和LILO等引导加载程序。
Linux下也有ghost工具,最著名的有g4l—ghostForLinux。
如果是整个磁盘的复制和恢复,还算简单。但是,没办法实现对一个或者几个分区的恢复。
一条dd命令就可以实现任意复杂的镜像复制和恢复的需求了.grub,还是ext4,btrfs,FAT32,NTFS都可以支持。
进入Linux操作系统,打开命令行,执行如下命令:
sudo fdisk -u -l
可以查看所有磁盘上的所有分区的尺寸和布局情况。
-u,让start和end中数字的单位是512字节,也就是一个sector扇区的大小。
假设我有一个/dev/sda磁盘,有100GB大小。我安装了一个Ubuntu操作系统。使用了如下分区:
/dev/sda1 5GB
/dev/sda2 1GB扩展分区
/dev/sda5 1GB扩展分区
/dev/sda2是所有扩展分区,它的大小和/dev/sda5重合。
/dev/sda1是ext4格式的文件系统。用于安装ubuntu操作系统。
/dev/sda5是swap格式的文件系统,作为交换分区。
这里,可以使用一条dd命令就生成6GB的镜像。然后可以在任意硬盘大于6GB的计算机上恢复出完整的系统,包括MBR和3个分区sda1,sda2,sda5。
具体步骤
找一个U盘,安装UbuntuLive Cd系统。具体如何制作U盘启动的UbuntuLive CD,可以参考Ubuntu官方网站的帮助。
UbuntuLive Cd和WindowsPE系统类似,是光盘/U盘引导的Ubuntu操作系统,不需要安装就可以直接使用。
U盘启动,进入盘上的Ubuntu系统,打开命令行,执行:
sudo fdisk -u -l /dev/sda
查看硬件的分区情况。
然后执行:
dd bs=512 count=[fdisk命令中最大的end数+1] if=/dev/sda of=/ghostimg
这样,就可以把我需要的分区数据全部copy到ghostimg文件中。镜像制作完成了!
然后,我们就可以把U盘插到其他系统上,用U盘启动,进入UbuntuLiveCD,打开命令行,执行如下命令:
dd if=/ghostimg of=/dev/sda
完成后,拔掉U盘,启动计算机,就可以看到我们的Linux系统已经安装完毕了!
注意:
不要直接在计算机上用本地磁盘启动系统后执行dd命令生成本地磁盘的镜像。而应该使用livecd启动计算机。
因此计算机运行时会对系统盘产生大量写操作。 直接对运行中的系统盘生成的镜像,在恢复到其他硬盘上时,很可能会无法启动!
一样适用于非Linux操作系统
在linux上用dd命令实现系统镜像备份和恢复,是不是很简单呢?
对于Windows系统,甚至Mac等等任意系统,其实都可以用dd命令实现系统镜像的备份和恢复。
因为,Linux的fdisk命令能够识别任意系统下的分区格式。fdisk并不关系分区上的文件系统,甚至有无文件系统都不关心。fdisk总是可以报告分区占用了哪些扇区。
dd命令也不关心磁盘的文件系统格式,它只是简单地按照要求从指定的位置,复制多少字节数据而已。
dd命令实现镜像备份和恢复,比Ghost软件简单和强大多了。使用ghost软件,依然需要用户进行复杂而危险的磁盘分区操作。
而使用fdisk和dd这两条命令,一切都免了!
压缩和解压缩
可能我们需要备份的分区很大,使用dd命令生成的镜像文件也就很大。存储和传输这些镜像不太方便。 我们也可以使用压缩程序压缩生成的镜像文件。 这里,我选择使用gzip程序,配合dd命令一起使用。
gzip参数:
-c 表示输出到stdout
-d 表示解压缩
-1 表示最快压缩
-9 表示最好压缩
默认使用的是-6压缩级别。
要使用 dd 和 gzip 生成压缩的镜像文件,可以执行命令: # dd bs=512
count=[fdisk命令中最大的end数+1] if=/dev/sda | gzip -6 > /ghostimggz
还原时,可以执行下列命令: # gzip -dc /ghostimggzgz | dd of=/dev/sda
提醒:
如果你把镜像恢复到另一台计算机上,你可能会发现你的网卡是eth1,而不是eth0。这是因为
/etc/udev/rulesd/70-persistent-netrules 文件把你做镜像的计算机的网卡作为eth0登记了。
如果你的网络脚本对eth0进行了处理,而没有对eth1进行处理,那么不修改网络脚本,你可能就无法上网了。
也许你会希望在做镜像之前,先删除 /etc/udev/rulesd/70-persistent-netrules 文件。这样你恢复镜像时,网卡的名字就是eth0。 就不会造成你在恢复后的计算机上无法上网的问题了。
注意:
最好在dd生成镜像之前,先umount所有 if和of 设备的分区。这样可以确保在dd的过程中文件系统没有被改变。
在完成dd(生成镜像和恢复镜像)后,执行sudo sync,确保数据被真正写入到硬盘上。
另外,如果你想要对整个硬盘进行备份和恢复,而不是只备份和恢复部分分区,那么就请把dd命令中的 count=[fdisk命令中最大的end数+1] 去掉。bs=512也可以去掉。
不同的系统操作略有差别吧。
一、在RHEL/CentOS/Scientific Linux平台上安装MondoRescue
1 用于RHEL/CentOS/SL 6, 5, 4 - 32位平台
下载“/etc/yumreposd/”下的MondoRescue软件库,文件名为“mondorescuerepo”。请为你的Linux OS发行版本下载正确的软件库。
# cd /etc/yumreposd/## On RHEL/CentOS/SL 6 - 32-Bit ##
# wget ftp://ftpmondorescueorg/rhel/6/i386/mondorescuerepo
## On RHEL/CentOS/SL 5 - 32-Bit ##
# wget ftp://ftpmondorescueorg/rhel/5/i386/mondorescuerepo
## On RHEL/CentOS/SL 4 - 32-Bit ##
# wget ftp://ftpmondorescueorg/rhel/4/i386/mondorescuerepo
2 用于RHEL/CentOS/SL 6, 5, 4 - 64位平台
# cd /etc/yumreposd/
## On RHEL/CentOS/SL 6 - 64-Bit ##
# wget ftp://ftpmondorescueorg/rhel/6/x86_64/mondorescuerepo
## On RHEL/CentOS/SL 5 - 64-Bit ##
# wget ftp://ftpmondorescueorg/rhel/5/x86_64/mondorescuerepo
## On RHEL/CentOS/SL 4 - 64-Bit ##
# wget ftp://ftpmondorescueorg/rhel/4/x86_64/mondorescuerepo
一旦你成功地添加了软件库,就可以使用“yum”命令安装最新的Mondo工具。
二、在Debian/Ubuntu/Linux Mint平台上安装MondoRescue
1 Debian平台
Debian用户可以使用“wget”命令抓取适用于Debian 6和Debian 5发行版的MondoRescue软件库。运行下列命令,添加“mondorescuesourceslist”到“/etc/apt/sourceslist”文件中,以便于安装Mondo软件包。
## On Debian 6 ### wget ftp://ftpmondorescueorg/debian/60/mondorescuesourceslist
# sh -c "cat mondorescuesourceslist >> /etc/apt/sourceslist"
# apt-get update
# apt-get install mondo
## On Debian 5 ##
# wget ftp://ftpmondorescueorg/debian/50/mondorescuesourceslist
# sh -c "cat mondorescuesourceslist >> /etc/apt/sourceslist"
# apt-get update
# apt-get install mondo
2 Ubuntu/Linux Mint平台
想要在Ubuntu 1210、1204、1110、1104、1010、1004,或者Linux Mint 13中安装Mondo Rescue,请打开终端,然后在“/etc/apt/sourceslist”文件中添加MondoRescue的软件库。运行下列的命令即可安装Mondo Rescue软件包。
# wget ftp://ftpmondorescueorg/ubuntu/`lsb_release -r|awk '{print $2}'`/mondorescuesourceslist
# sh -c "cat mondorescuesourceslist >> /etc/apt/sourceslist"
# apt-get update
# apt-get install mondo
三、创建系统/服务器的克隆或备份ISO镜像
安装Mondo之后,以“root”用户权限运行“mondoarchive”命令。下面的截图说明了如何创建一个完整系统的ISO备份镜像。
# mondoarchive
要克隆正在运行的系统有些困难,可以搞个live usb启动,然后假设sda上有你的centos sdb是空硬盘,那么用dd命令进行克隆
dd if=/dev/sda of=/dev/sdb bs=5M
0条评论