由于Linux系统一切都是文件,故只需要将想备份Ubuntu系统直接复制到新硬盘或新分区中就行,当然拷贝完后需要修改一些配置文件(主要是/boot/grub/grub.cfg和/etc/fstab两个文件)。Ubuntu拷贝过程可以采用整块硬盘复制(注意:如果硬盘上安装的是Windows+Ubuntu双系统,则两个系统都会拷贝过去)或者只复制硬盘中安装了Ubuntu系统的分区(本人是采取这种方式,只将Ubuntu拷贝到我的新固态硬盘上)。
要复制硬盘分区或者调整分区大小,系统内必须要有两块硬盘一个是系统分区所在的硬盘,一块是另外的硬盘,因为软件无法在运行系统的磁盘里面直接复制和调整分区大小。
在进行拷贝之前,我们首先制作Ubuntu系统启动U盘,即使用Live USB,其实就是先前用U盘做的Ubuntu 16.04LTS系统镜像。至于制作U盘启动盘的教程,请参照博文链接:Windows下安装Ubuntu 16.04双系统。
Ubuntu直接拷贝步骤:
A.首先,在新硬盘上分区---分出来一个磁盘,用于安装Ubuntu。当然,如果你打算在新硬盘上只安装Ubuntu,则可以将整个新硬盘转化成可用空间(本人120G的新固态硬盘就只打算安装Ubuntu,所以就把整个盘都弄成120G可用空间了)。首先在新硬盘上切下来一块120G的磁盘,可以利用Windows 自带的磁盘管理工具或者在Linux下用gparted工具都可以,具体方法自行百度.这个分区我是通过Windows下电脑属性,进入磁盘管理来进行设置的。至于制作硬盘分区的教程,请参照博文链接:Windows下安装Ubuntu 16.04双系统。
B.然后在要备份的系统的电脑上,插入用来备份Ubuntu系统的新硬盘,用来存储备份Ubuntu系统
C.使用U盘启动,进入Live USB界面,点击试用Ubuntu。
D.进入试用Ubuntu后,先获取root权限。进入命令行终端,输入:
sudo passwd
su root
注意:以下操作都是在root模式下,如果是在用户模式下,则操作命令时需要加sudo。
E.通过终端输入gparted(如果没有则需要apt-get install gparted来安装)查看硬盘号,确认那个是原始需要备份系统硬盘,那个新插入的还原系统的硬盘。
F.注意,在使用gparted复制Ubuntu系统之前,请确保新硬盘分配的可用空间是大于待备份的系统分区大小的,不然是会复制失败的,因此如果不是,则需要使用gparted先将待拷贝Ubuntu系统分区进行缩减,待拷贝完后再恢复回来。我新硬盘分配的可用空间大小为120G,而我待备份的Ubuntu系统包括主分区150G+交换分区8G,故不满足前述要求。于是,我需要先将待备份的Ubuntu系统主分区缩减至112G,这样主分区112G+交换分区8G=120G,刚好是我新硬盘可用空间大小(即120G)。
G.终于可以开始拷贝工作了。在gparted界面上,鼠标右击待备份的Ubuntu系统主分区112G选择复制,然后转到新硬盘可用空间上鼠标右击选择粘贴(弹出对话框选择文件系统ext4),然后点击界面√号确认开始复制,这个过程可能需要一段时间,取决于你Ubuntu系统大小。主分区拷贝完后,接着同样方式将交换分区8G拷贝到新硬盘剩下的8G可用空间下(注意文件系统选择linux-swap),然后等待交换分区拷贝完成。
H.拷贝工作完成后,需要修复grub,即需要修改新硬盘上备份系统的配置文件/boot/grub/grub.cfg和/etc/fstab文件,修改其中的UUID值和磁盘分区,其中磁盘分区的格式大概为(hd0, msdos5),其中hd0表示第0块硬盘,msdos5表示硬盘上的第5块分区。grub下的磁盘分区的表示方式,具体请自行百度。在修改这两个文件读写权限后(chmod 666 +新硬盘/etc/fstab的路径),打开/etc/fstab将其中的UUID全部替换成新硬盘的UUID(使用blkid查看新硬盘Ubuntu主分区和交换分区的UUID),同样地将新硬盘上/boot/grub/grub.cfg里将UUID和磁盘分区号改成新硬盘的UUID和磁盘分区号。
J.重启系统,BIOS从新硬盘上启动,在新硬盘系统中,执行sudo update-grub,以便再次更新硬盘上/boot/grub/grub.cfg,自此整个系统克隆过程就算完成了。