ubuntu根目录空间太小的数据备份并恢复完整重装【双系统重装必看!!】

本文最后更新于:4 个月前

本文适用解决什么问题?

如果你装了双系统,现在要卸载linux重装,且原linux系统里的软件和配置要完整保留,那么你找对了。当然你也可以借鉴其中某个步骤来解决你某个问题,比如怎么用systemback给当前系统生成iso文件、iso文件大于4G该如何生成、完整备份整个系统为iso文件、完整卸载linux、制作系统启动盘、安装双系统等等操作。

作者遇到问题描述:
之前装了双系统,只给ubuntu分了20G,虽然后面又压缩卷10G挂载,但是挂载的不方便,所以打算把ubuntu重装多分配一些硬盘,但是ubuntu用了小半年了,里面很多软件工具和环境,一一部署很麻烦,所以想把当前的ubuntu做成一个iso镜像文件刻录到U盘,然后卸载ubuntu,再重新压缩卷,多压一些空间,再把U盘来重装ubuntu,以达到原数据不变,只扩大空间的目的。

ubuntu系统完整备份

开始也看过用tar命令来备份自己的整个根目录到U盘,但是tar命令每次打包到4G大小左右就不动了,报错说太大了。
所以准备把自己的ubuntu做成iso文件,直接重装。

systemback的使用

安装systemback

1
2
3
sudo add-apt-repository ppa:nemh/systemback
sudo apt update
sudo apt install systemback

一般就用以上命令安装就好了,但是如果你出错了,说找不到源或者不支持,那么先运行这条命令删除自己系统版本的PPA:

1
sudo add-apt-repository --remove ppa:nemh/systemback

然后再替代成其他版本的PPA:

1
2
sudo add-apt-repository "deb http://ppa.launchpad.net/nemh/systemback/ubuntu xenial main"
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 382003C2C8B7B4AB813E915B14E4942973C62A1B

然后再行安装systemback

1
2
sudo apt update
sudo apt install systemback

使用systemback

在应用列表找到并运行,输入自己系统的用户名和密码进入

单击Live System Create按钮,然后为ISO文件命名,可以选择包含用户数据文件,单击新建按钮以创建实时系统,系统的每个文件都会被纳入,未选中用户数据,则家目录的数据不会。

然后工作目录要选择够大的空间,并且是linux文件系统格式的空间,也就是ext4,相信各位自己的根目录下已经找不到能再容纳一遍自己所有数据的空间了,所以我是选择的U盘的挂载目录,但是U盘是不能直接用的,除非你的U盘是专门用于linux系统的,否则要将其擦写为ext4文件系统格式的,进入ubuntu的磁盘管理,选择自己的U盘,删除卷使其成为未分配,然后将其新建卷,文件系统选择ext4格式,并且要擦写,之后再挂载上来就可以用了。

然后creat new,等完成后,U盘里就会有sblive文件了,如果它小于4G,那么你可以直接在systemback里将它转为iso文件。但是如果大于4G,你就需要看下面这一点了:

sblive文件大于4G该怎么转iso文件?

参考博客: Systemback无法将超过4G的sblive文件转存为镜像文件的解决办法.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
//1. 解压sblive文件

mkdir sblive
tar -xf /home/systemback_live_2016-04-27.sblive -C sblive


//2. 重命名syslinux为isolinux

mv sblive/syslinux/syslinux.cfg sblive/syslinux/isolinux.cfg
mv sblive/syslinux sblive/isolinux

//3. 安装cdtools
//若在安装aria2时,出现E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源临时不可用)
//请执行两条命令:
//sudo rm /var/cache/apt/archives/lock
//sudo rm /var/lib/dpkg/lock

sudo apt-get install aria2
aria2c -s 10 https://nchc.dl.sourceforge.net/project/cdrtools/alpha/cdrtools-3.02a07.tar.gz
tar -xzvf cdrtools-3.02a07.tar.gz
cd cdrtools-3.02
make
sudo make install

// 4.生成iso文件
//此操作前要cd至sblive的上级目录,否则下面命令中的sblive请相应变化,确保能正确访问sblive

/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 sblive.iso sblive

现在你就得到了你自己ubuntu系统的iso镜像文件了,将它来装到一台机器上时,这个系统就和你原来使用的一模一样。

卸载ubuntu

有同学会说了,直接windows进入磁盘管理把linux的磁盘分区给删了格式化了,linux不就删了吗,这样是可以,但是在bios中的启动条目还是原来的ubuntu,这就需要我们清理干净了。下面进入windows界面开始操作:

  • win+x选择(windows PowerShell(管理员))
1
2
3
4
5
6
7
diskpart					# 进入系统dispart组件
list disk # 查看系统所有磁盘,并找到window系统所安装的磁盘,(会出现列表,比如你有两个硬盘,0和1)
select disk $ # 选择磁盘 $ 指window所安装的磁盘(列表,磁盘后的数字)(例如select disk 0)
list partition # 找到类型为系统的分区(列表会显示)
select partition $ # $为类型为系统的分区 (例如select partition 0)
assign letter=p # 将分区分配到磁盘P中,p是直接写得,不和c,d,e等盘冲突就可以了
exit # 退出diskpat
  • 此时我们会多出一个P盘,且没有访问权限,可以右击记事本以管理员身份运行,然后左上角文件打开P盘,找到EFI中的ubuntu文件夹并删除,其余不要动。

    以管理员身份运行记事本

    P盘

    P:EFI

  • 此时再次回到命令行操作,将P盘删掉:

    1
    2
    3
    4
    5
    6
    diskpart 					# 再次进入到diskpart
    select disk $ # $是之前选择的盘符,如果记不住了,用list disk查看
    select partition $ # $是之前选择的分区,如果记不住了,用list partition查看
    remove letter=p # 删除P盘,
    exit # 退出

    然后进入磁盘管理,将linux的盘区清理干净,删除卷,使其成为未分配状态。

此电脑-管理

磁盘管理

重装ubuntu

下面这是我几个月前装的时候的做法,这里不赘述了
如何安装windows和linux双系统: https://blog.csdn.net/qq_43289711/article/details/110312956.
大家进去看的时候一到在压缩卷的时候多压一点,至少50G才够用!!