u盘修复ubuntu引导文件 (ubuntu启动盘修复ubuntu) 需求

有时我们在一台机上装了ubuntu,并进行了许多配置,现在我们需要把它移植到另外几台机上,并且保留所有安装的软件和用户数据。

准备工作u盘ubuntu电脑裸机

使用软件:systemback

步骤

简而言之就是:
制作镜像,刻入u盘,把u盘的镜像安装到硬盘。

下文按照此步骤讲述

下载安装systemback 电脑制作sblive镜像文件 把镜像文件写入u盘,制作为启动盘 在裸机插入启动盘,进入live系统 在live系统里安装镜像

1. 下载安装systemback

安装

sudo add-apt-repository ppa:nemh/systembacksudo apt-get update && sudo apt-get install systemback unionfs-fuse

安装完成后在Dash菜单中就能找到这个软件了


2. 制作sblive镜像文件

点击图标,输入管理员密码,打开后界面如下图所示



点击"创建live系统"


电脑

"工作目录"选择工作目录(一般维持默认就好)"Live模式系统名称"填入镜像名称"包含用户数据文件"可酌情勾选,勾选后生成的镜像会大很多。配置好一切后,点击"创建新的"创建镜像。
然后等待创建完成即可。把镜像文件写入u盘,制作为启动盘

上图是创建完镜像的图例(只不过此处借用了别人的图,系统语言是英语),我们看到第二项只是创建了sblive文件,还没转为iso文件。但是有sblive就够了,我们选择sblive文件,再在窗口左下方选择写入设备,点击"向目标设备写入"即可
写入完成后,u盘就是有着镜像的启动盘了。4. 在裸机插入启动盘,进入live系统

把u盘插入裸机,进入bios系统,选择优先启动u盘(要用uefi模式, 如果无法用u盘启动可能是用了legacy模式,可到bios系统设置)
启动后应该会有如下界面



选择第一项,即可进入该镜像的系统。

如果是乱码,依旧选择第一项即可,选项的顺序是不会变的。我当时就是遇到乱码,直接选第一项就ok。

此时电脑你还是在u盘的系统里,镜像还没安装到硬盘上。

5. 在live系统里安装镜像

在这最后一步,你要把镜像安装到硬盘上。

进入u盘镜像系统后,再次打开systemback,选择"系统安装"



填写完成后点击"下一步",进入下图:



在此,你需要为系统切割区间。
一般设置4个区间即可,"/"(ext4), "/home"(ext4), "swap", "boot/efi"。其中

先分配"swap",大小与内存相当即可再分配"boot/efi",大小200m即可最后分配"/"和"/home",文件系统都选ext4即可,"/"与"/home"的大小比一般是1:10到3:10,看个人需求而定。

经验而谈,先把4个区间按大小划分好,再设置区间的挂载点/文件系统。因为我当时是一个一个地划分大小并设置文件系统,当做到第二个时,第一个分区的文件系统就会恢复成"无"了(不知道为什么)。

酌情选择"传递用户配置文件",检查"安装grub2引导程序"选项并非"禁用"。点击下一步。然后就会安装到硬盘了。
等待过后,回电脑到bios界面,把装有ubuntu的硬盘设为首启动项,你就看到一个原封不动的系统了~

异常:向目标设备写入镜像时失败

在备份过程中可能提示

The restore point creation is aborted!There has been critical changes in the file system during this operation

这并不一定是由于系统发生了严重的更改,只要是在复制文件的过程中出现错误都会出现这个信息。
详细的错误信息可以通过

systemback-sustart

这个指令去调试,看看具体哪一个文件复制出了问题。极有可能的是权限问题。
也可以通过这个指令去调试

DBGLEV=3 systemback-sustart

当错误出现后会在/tmp文件夹下创建一个systemback的错误信息文件。可以方便的通过这个文件去找到错误的原因。

如果依旧不能解决问题,可以考虑两个措施

将u盘格式化为fat,重试。
运行 sudo fdisk -l 找到u盘的盘符,一般是(/dev/sdx),(其中"sdx"可以是"sdb"或"sdc"等)
假设我们查到盘符是/dev/sdb,那么运行: sudo mkfs.vfat /dev/sdb -I u盘即可被格式化。 格式化后依旧不行,就尝试重启电脑。



电脑