ubuntu系统克隆实用教程
参考链接:https://www.jianshu.com/p/03472f8c5316
https://www.jianshu.com/p/72ecd16943d2
虚拟机和实体机的ubuntu系统备份、克隆、恢复均适用!!!
##前提
由于公司需要在linux环境下搭建交叉编译环境,之前一直在虚拟机上运行,大家都知道通过虚拟机和硬件连接都是虚拟的,所以在实体机上安装ubuntu成为必然。我们需要把虚拟机上的系统制作镜像再移植到另外几台电脑上,并且保留里边的所有文件和用户数据,做到一劳永逸!
##准备工作
- U盘
- 一台装好Ubuntu系统的电脑或者虚拟机
- 其他需要装机的电脑(有无系统均可)
- 如果有windows系统需要提前通过磁盘管理工具清理出一块200G(看硬盘大小酌情设置)的自由空间
使用软件:systemback
##步骤
简而言之就是:
制作镜像。刻入U盘,把U盘的镜像安装到硬盘。
##1.Ubuntu下载安装systemback
通过ppa安装
sudo add-apt-repository ppa:nemh/systemback
sudo apt-get update
sudo apt-get install systemback unionfs-fuse
安装完成后在Dash菜单中就能找到这个软件了
##2.制作sblive镜像文件
点击图标,输入管理员密码,打开后界面如下图所示
现在可以创建系统的还原点,还原到某个点,将系统复制到另一个分区,将系统安装到新分区,创建实时系统(可引导ISO映像),修复系统和升级软件系统:点击 Live system create
创建sbLive系统
如果我们需要创建系统备份,点击Create new 就可以了。如果插入了U盘会在左下角显示
working directory
"工作目录"选择工作目录(一般维持默认就好)Name of the Live system
"Live系统名称"填入镜像名称,最好改下,默认是 SB 别问我怎么知道的 -_-!Options
"包含用户数据文件"可酌情勾选,勾选后生成的镜像会大很多,我勾选了。Create new
配置好一切后,点击"创建新的"创建镜像。然后等待创建完成即可。
至此,你会看到右上角显示出制作好的live镜像
在插入U盘的前提下,你可以直接点击write to target
直接将Live镜像写入U盘,也可以多一步点击Convert to ISO
生成一个ISO镜像,方便通过其他U盘制作软件制作启动盘。在home文件夹下可以找到ISO镜像和Live镜像
**注:如果在复制中出现问题可参考链接:**https://blog.csdn.net/bluewhalerobot/article/details/73649426
##3.在目标实体机安装系统
插入U盘,首先进入BIOS(台式机一般是Delete
笔记本为Fx)设置好U盘优先启动,开机进入Live系统可能出现下方两种界面,第一种比较多
可以选择Boot Live system
直接进入Live系统,也可以直接选择Install system
直接安装
如果选择直接进入系统,需要再次启动systemback软件进行安装,点击System Install
之后会看到这个页面,来设置用户名和密码,设置好后点击NEXT
在这里进入了比较关键的环节,还记得最开始设置了200G的空白硬盘分区吧,现在需要进行分区,请按照如下方式分区
一般设置4个区间即可,"/"(ext4), “/home”(ext4), “swap”, “boot/efi”。其中
1.先分配"swap",大小与内存相当即可,我设置的是10G
2.再分配"boot/efi",大小200m即可,我设置的是
3.最后分配"/“和”/home",文件系统都选ext4即可,"/“与”/home"的大小比一般是1:10到3:10,我选择了后者,看个人需求而定
这里解释一下:swap是交换分区,boot/efi是引导也是和windows系统共存的关键,同时grub引导也存放在boot文件夹下,"/"是系统根目录类似windows的C盘,"home"相当于windows下的D、E、F盘,可以用来安装软件存放文档。经验而谈,先把4个区间按大小划分好,再设置区间的挂载点/文件系统。
酌情选择"传递用户配置文件",检查"安装grub2引导程序"选项并非"禁用"。点击下一步。然后就会安装到硬盘了。
等待过后,重启,进入bios界面,把装有ubuntu的硬盘设为首启动项,你就看到一个原封不动的系统了~
###正常到这里就结束了,下面说一下我遇到的问题
第一台电脑安装完重启后,进不去系统,显示 error: unknown filesystem 解决方法如下
1.输入ls
,会列出目前磁盘上可用的所有分区,根据原先磁盘上的分区顺序大概确定Ubuntu所在分区是这几个中的哪一个(无法确定也没关系,一个一个试呗)比如:
ls (hd0,msdos1)
出现内容里边带有boot
就是我们想要的那个。
2.以(hd0,msdos1)为例,分别输入:
set root=hd0,msdos1set
prefix=(hd0,msdos1)/boot/grub
注:这里的格式可能会随grub的版本不同而不同,只要和之前set列出的格式一致就可以了
输入
insmod normal
回车输入
normal
哈哈,我们熟悉的grub菜单又回来了~~
3.选择ubuntu,进入之后启动终端,输入如下命令
sudo update-grub
sudo grub-install /dev/sda
相关图片信息参考:http://www.cnblogs.com/steven-blog/archive/2013/03/21/2974061.html
http://www.linuxidc.com/Linux/2012-06/61983.htm