1.简介
简单记录使用Systemback工具打包Ubuntu、kali系统得到iso镜像文件,并在物理机上进行还原(安装)的流程。测试结果发现,使用打包的iso文件安装得到的Ubuntu系统继承了我之前的Ubuntu系统,包括并不限于如下内容:Home、Desktop、Documents、Downloads、Pictures、Videos等文件夹下的所有文件,以及ros、PX4、cartographer等一系列的依赖环境!我在实验室的一台主机上面安装好系统之后,可以直接运行一系列的程序,体验和使用备份前的系统相同。只能说太牛了!
Systemback是一个简单的系统备份和恢复应用程序。Ubuntu 16.04和14.04用户可以通过在终端中运行以下命令从PPA安装Systemback:
以下内容看看就好,软件作者已经跑路,详细使用方法见第2节及以后的内容
# Ubuntu 16.04 or 14.04, ubuntu 18及以后不可用
sudo add-apt-repository ppa:nemh/systemback
sudo apt update
sudo apt install systemback
# ubuntu18不小心添加了上面的ppa库,可以使用下面命令删除
sudo add-apt-repository --remove ppa:nemh/systemback
2.安装
准备足够的磁盘空间,空间要足够大!!!!!
准备一个完美环境的虚拟机kali系统(所谓完美环境,就是钓鱼工具包airgeddon、fluxion等等,Anyway!任何你想固化的软件内容都可以!!!),将它提前拍摄快照,方便制作ISO完毕后将其还原到解放前,释放宝贵的磁盘空间~~~

然后开机进入kali虚拟机操作系统

Systemback的作者在2016年停止了开发,因此Ubuntu 18.04及以后版本都不在支持列表中。如果你在Ubuntu 18.04上运行上述命令,将看到报错。Ubuntu 16.04的Systemback二进制文件与Ubuntu 18.04/18.10兼容,因此我们可以使用以下命令进行安装(Ubuntu20及以后版本或许也可以如此安装?甚至安装至kali?也不是不可以~):
# 1)在18.04上添加Ubuntu 16.04 PPA
sudo add-apt-repository "deb http://ppa.launchpad.net/nemh/systemback/ubuntu xenial main"
#在kali上则是这样子,直接编辑源配置文件,添加源
┌──(kali㉿wifi-hack)-[~]
└─$ sudosu
┌──(root㉿wifi-hack)-[/home/kali]
└─# vim /etc/apt/sources.list
deb http://ppa.launchpad.net/nemh/systemback/ubuntu xenial main
# 2)导入此PPA的GPG签名密钥
┌──(root㉿wifi-hack)-[/home/kali]
└─# sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 382003C2C8B7B4AB813E915B14E4942973C62A1B
# 3)更新包列表并安装Systemback:
┌──(root㉿wifi-hack)-[/home/kali]
└─# apt update
┌──(root㉿wifi-hack)-[/home/kali]
└─# apt install systemback
3.使用systemback备份系统
打开systemback

输入当前用户密码

点击创建live系统

点击“Live system create” —> 修改系统名称,勾选“Include the user data files”—>点击“Create new”。该操作将会在/home下面生成一个.sblive文件,如果文件小于4GB,可以借助该软件生成对应的.iso系统镜像文件。

制作中ing..................

制作完毕,查看/home下多了一个kali.sblive文件

4.将备份转化为live版ISO
接下来是激动人心的一步,把kali.sblive文件转化为ISO镜像
如果你的系统备份小于4G,那么可以直接在systemback图形界面点击转换ISO镜像

如果生成的.sblive文件大于4GB,可以参考下面的步骤生成对应的.iso系统镜像文件。
#步骤1:解压 .sblive 文件:
┌──(root㉿wifi-hack)-[/home]
└─# cd /home
┌──(root㉿wifi-hack)-[/home]
└─# mkdir sblive
┌──(root㉿wifi-hack)-[/home]
└─# ll
总计 3973928
drwx------ 14 kali kali 40963月24日 12:36 kali
-rw-rw-rw-1 root root 40692838403月24日 13:30 kali.sblive
drwxr-xr-x 2 root root 40963月24日 13:36 sblive
drwxr-xr-x 2 root kali 40963月24日 13:04 Systemback
┌──(root㉿wifi-hack)-[/home]
└─# tar xf kali.sblive -C sblive
=================================================================================
#步骤2:重命名syslinux 至 isolinux:
┌──(root㉿wifi-hack)-[/home]
└─# mv sblive/syslinux/syslinux.cfg sblive/syslinux/isolinux.cfg
┌──(root㉿wifi-hack)-[/home]
└─# mv sblive/syslinux sblive/isolinux
┌──(root㉿wifi-hack)-[/home]
└─# tree sblive
sblive
├── isolinux --更改后名称
│ ├── isolinux.bin
│ ├── isolinux.cfg --更改后名称
│ ├── ldlinux.c32
│ ├── libcom32.c32
│ ├── libutil.c32
│ ├── splash.png
│ └── vesamenu.c32
└── live
├── filesystem.squashfs
├── initrd.gz
└── vmlinuz
3 directories, 10 files
=================================================================================
#步骤3:安装 cdtools:
┌──(root㉿wifi-hack)-[/home]
└─# curl -sL "https://nchc.dl.sourceforge.net/project/cdrtools/alpha/cdrtools-3.02a07.tar.gz" -o cdrtools-3.02a07.tar.gz
┌──(root㉿wifi-hack)-[/home]
└─# ll -h
总计 3.8G
-rw-r--r--1 root root 2.6M 3月24日 13:43 cdrtools-3.02a07.tar.gz
drwx------ 14 kali kali 4.0K 3月24日 12:36 kali
-rw-rw-rw-1 root root 3.8G 3月24日 13:30 kali.sblive
drwxr-xr-x 5 root root 4.0K 3月24日 13:39 sblive
drwxr-xr-x 2 root kali 4.0K 3月24日 13:04 Systemback
┌──(root㉿wifi-hack)-[/home]
└─# tar xf cdrtools-3.02a07.tar.gz
┌──(root㉿wifi-hack)-[/home]
└─# ll -h
总计 3.8G
drwxr-sr-x 46 root bin 4.0K 2016年12月15日 cdrtools-3.02
-rw-r--r--1 root root 2.6M 3月24日 13:43 cdrtools-3.02a07.tar.gz
drwx------ 14 kali kali 4.0K 3月24日 12:36 kali
-rw-rw-rw-1 root root 3.8G 3月24日 13:30 kali.sblive
drwxr-xr-x 5 root root 4.0K 3月24日 13:39 sblive
drwxr-xr-x 2 root kali 4.0K 3月24日 13:04 Systemback
┌──(root㉿wifi-hack)-[/home]
└─# cd cdrtools-3.02
┌──(root㉿wifi-hack)-[/home/cdrtools-3.02]
└─# make
┌──(root㉿wifi-hack)-[/home/cdrtools-3.02]
└─# make install
┌──(root㉿wifi-hack)-[/home/cdrtools-3.02]
└─# ll /opt/schily/
总计 20
drwxr-xr-x 2 root root 40963月24日 13:49 bin
drwxr-xr-x 4 root root 40963月24日 13:49 include
drwxr-xr-x 4 root root 40963月24日 13:49 lib
drwxr-xr-x 2 root root 40963月24日 13:49 sbin
drwxr-xr-x 4 root root 40963月24日 13:49 share
=================================================================================
#步骤4:生成ISO文件:
┌──(root㉿wifi-hack)-[/home/cdrtools-3.02]
└─# cd /home
┌──(root㉿wifi-hack)-[/home]
└─# ll
总计 3976576
drwxr-sr-x 46 root bin 40962016年12月15日 cdrtools-3.02
-rw-r--r--1 root root 27043163月24日 13:43 cdrtools-3.02a07.tar.gz
drwx------ 14 kali kali 40963月24日 12:36 kali
-rw-rw-rw-1 root root 40692838403月24日 13:30 kali.sblive
drwxr-xr-x 5 root root 40963月24日 13:39 sblive
drwxr-xr-x 2 root kali 40963月24日 13:04 Systemback
┌──(root㉿wifi-hack)-[/home]
└─# /opt/schily/bin/mkisofs -iso-level 3 -r -V sblive -cache-inodes -J -l -b isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table -c isolinux/boot.cat -o kali-live-i386.iso sblive
#这一步完成后,将会生成一个iso文件。
┌──(root㉿wifi-hack)-[/home]
└─# ll -h
总计 7.6G
drwxr-sr-x 46 root bin 4.0K 2016年12月15日 cdrtools-3.02
-rw-r--r--1 root root 2.6M 3月24日 13:43 cdrtools-3.02a07.tar.gz
drwx------ 14 kali kali 4.0K 3月24日 12:36 kali
-rw-r--r--1 root root 3.8G 3月24日 13:54 kali-live-i386.iso
-rw-rw-rw-1 root root 3.8G 3月24日 13:30 kali.sblive
drwxr-xr-x 5 root root 4.0K 3月24日 13:39 sblive
drwxr-xr-x 2 root kali 4.0K 3月24日 13:04 Systemback
=================================================================================
#步骤5:是时候把有用的文件拷贝出来了:
┌──(root㉿wifi-hack)-[/home]
└─# scp -r cdrtools-3.02a07.tar.gz klai@192.168.56.1:/tmp
The authenticity of host '192.168.56.1 (192.168.56.1)' can't be established.
ED25519 key fingerprint is SHA256:/J/wIRnNKghak1U5MNi0r6/zyaBdQmr+zf0W5vg4CFg.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.56.1' (ED25519) to the list of known hosts.
klai@192.168.56.1's password:
cdrtools-3.02a07.tar.gz 100% 2641KB 24.9MB/s 00:00
┌──(root㉿wifi-hack)-[/home]
└─# scp -r kali-live-i386.iso klai@192.168.56.1:/tmp
klai@192.168.56.1's password:
kali-live-i386.iso 100% 3881MB 53.6MB/s 01:12
#宿主机操作,把文件放到喜欢的地方保存着
klai@klai-virtual-machine:~/桌面/VM$ pwd
/home/klai/桌面/VM
klai@klai-virtual-machine:~/桌面/VM$ cd /home/klai/桌面/VM/
klai@klai-virtual-machine:~/桌面/VM$ ll
总计 6891432
drwxrwxr-x 5 klai klai 40963月 2412:17 ./
drwxr-xr-x 4 klai klai 40963月 2412:24 ../
drwxrwxr-x 3 klai klai 40963月 2412:21 hh/
drwxrwxr-x 4 klai klai 40963月 2413:22 kali-i386-1/
-rw-rw-r--1 klai klai 33121566723月 2219:27 kali-linux-2023.1-installer-i386.iso
-rw-r--r--1 klai klai 37446410243月 2412:07 kali-linux-rolling-live-gnome-i386.iso
drwxrwxr-x 2 klai klai 40963月 2402:36 kali-live-1-iso/
klai@klai-virtual-machine:~/桌面/VM$ mv /tmp/cdrtools-3.02a07.tar.gz .
klai@klai-virtual-machine:~/桌面/VM$ mv /tmp/kali-live-i386.iso .
klai@klai-virtual-machine:~/桌面/VM$ ll
总计 10868360
drwxrwxr-x 5 klai klai 40963月 2413:59 ./
drwxr-xr-x 4 klai klai 40963月 2412:24 ../
-rw-r--r--1 klai klai 27043163月 2413:56 cdrtools-3.02a07.tar.gz
drwxrwxr-x 3 klai klai 40963月 2412:21 hh/
drwxrwxr-x 4 klai klai 40963月 2413:22 kali-i386-1/
-rw-rw-r--1 klai klai 33121566723月 2219:27 kali-linux-2023.1-installer-i386.iso
-rw-r--r--1 klai klai 37446410243月 2412:07 kali-linux-rolling-live-gnome-i386.iso
drwxrwxr-x 2 klai klai 40963月 2402:36 kali-live-1-iso/
-rw-r--r--1 klai klai 40696627203月 2413:57 kali-live-i386.iso
5.清理虚拟机环境
把虚拟机关机,还原快照到解放前

查看磁盘空间有没有释放

如果觉得释放不给力,是时候给虚拟磁盘瘦身了
再次开启虚拟机,在虚拟机里边执行dd命令,整理磁盘碎片
┌──(kali㉿wifi-hack)-[~]
└─$ sudosu
┌──(root㉿wifi-hack)-[/home/kali]
└─# cd /tmp
┌──(root㉿wifi-hack)-[/tmp]
└─# dd if=/dev/zero of=empty bs=2M
dd: 写入 'empty' 时出错: 设备上没有空间
输入了 42991+0 块记录
输出了 42990+0 块记录
90156838912 字节 (90 GB, 84 GiB) 已复制,151.824 s,594 MB/s
┌──(root㉿wifi-hack)-[/tmp]
└─# rm -f empty
完毕后,关掉虚拟机,宿主机进入虚拟机安装目录,执行virtualbox给力工具将虚拟磁盘瘦身即可
# 需要root权限执行
root@klai-virtual-machine:/home/klai/桌面/VM/kali-i386-1# pwd
/home/klai/桌面/VM/kali-i386-1
root@klai-virtual-machine:/home/klai/桌面/VM/kali-i386-1# ll
总计 16020936
drwxrwxr-x 4 klai klai 40963月 2414:07 ./
drwxrwxr-x 5 klai klai 40963月 2413:59 ../
-rw-------1 klai klai 146413月 2414:07 kali-i386-1.vbox
-rw-------1 klai klai 133183月 2414:06 kali-i386-1.vbox-prev
-rw-------1 klai klai 164070686723月 2412:14 kali-i386-1.vdi
drwx------ 2 klai klai 40963月 2414:05 Logs/
drwx------ 2 klai klai 40963月 2414:03 Snapshots/
root@klai-virtual-machine:/home/klai/桌面/VM/kali-i386-1# vboxmanage modifyhd kali-i386-1.vdi --compact
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
瘦身效果查看

6.测试live镜像ISO
是时候测试我们制作的live镜像了
创建一个新的虚拟机,略,镜像使用我们制作的live镜像,虚拟磁盘不要创建!!!

开机看看

额。语言咋是着吊样,不过不影响,整理贴出英语版对照,我们选择第一个live启动看看
百度了,好像安装systemback的操作系统语言不能是中文,把语言临时改为英语再去制作ISO镜像,就不会启动页面出现乱码了

Whoo~~~令人激动的kali界面出现了,我们登录看看。
可以看到,它原封不动地将我们虚拟机完美kali环境克隆下来了

运行airgeddon钓鱼工具看看,Whoo~~~完美运行

当然,任何,全部,任意的东西都给你保留固化下来了啦。我们看看网卡rtl8812au识别情况
Whoo~~~只能说太强大了,Systemback is good!!!!!
