写在前面的话:
- 版权声明:本文为博主原创文章,转载请注明出处!
- 博主是一个小菜鸟,并且非常玻璃心!如果文中有什么问题,请友好地指出来,博主查证后会进行更正,啾咪~~
- 每篇文章都是博主现阶段的理解,如果理解的更深入的话,博主会不定时更新文章。
- 本文初次更新时间:2019.6.21,最后更新时间:2020.10.23
前言
在这篇之前写了一篇关于 debian live cd 持久化的文章,那篇已经很旧了,有兴趣也可以点进去看一看:
【LiveCD】Debian live cd 的持久化(persistence)(一)
后来,博主发现 rufus 进行了更新,更新之后的 rufus 可以直接创建持久分区,比这篇方法简单非常多!!详情请戳下文:
【LiveCD】Debian live cd 的持久化(persistence)(三)
正文开始
准备工具
- 一个 U 盘,提前保存 U 盘中的数据,之后会格式化掉
- Debian live cd 的 ISO 文件 debian-live-9.9.0-amd64-xfce.iso
- 一个 Linux 系统,我用的是 debian 9.9, kernel 5.0.13
- Rufus:下载地址
- DiskGenius:下载地址
- Windows 系统(用于下载并使用 Rufus 和 DiskGenius)
操作步骤
-
使用 Rufus 将 ISO 写入 U 盘(以 ISO 镜像模式写入)
写入完成后就拥有了一个可以使用的 live cd,接下来是如何 persistence -
在 U 盘上建立新的分区
打开 DiskGenius,可以看到 U 盘:
右击,选择建立新的分区:
由于 ISO 大概为 1.8G,这里我把放 ISO 的分区调整为 2G,多预留一些空间方便以后升级内核:
选择是:
调整分区容量完成:
-
建立新分区成功之后,需要重新建立 MBR,不然无法识别:
选择是:
-
MBR 成功之后就可以在 Linux 下处理 persistence 了,首先 fdisk -l 查看磁盘信息:
可以看到这里 U 盘为 /dev/sdc,并且刚刚新建的分区为 /dev/sdc2,而 /dev/sdc1 中存放的是 ISO 中的内容。 -
将新建的分区格式化为 ext4 文件系统:
mkfs.ext4 -L persistence /dev/sdc2
卷标必须是 persistence,并且在根目录中要有一个名为persistence.conf的文件,否则它将被忽略。
- 将其挂载到 /mnt 中:
mount -t ext4 /dev/sdc2 /mnt
- 创建 persistence.conf 并向其中写入 “/ union”,然后卸载。
echo "/ union" >> /mnt/persistence.conf
umount /mnt
(要使 / 持久化但仅保存对该目录所做的更改而不保存 / 的所有内容,可以使用 “union” 选项。)
到这里 persistence 已经做完。接下来,可以使用引导参数 “persistence” 重新启动到 live cd 测试一下,也可以直接进行下面的步骤,修改引导文件。
- 挂载 /dev/sdc1(ISO 文件所在的分区),修改其中的 boot/grub/grub.cfg,加上 persistence 参数(图片27行)
mount /dev/sdc1 /mnt
vim /mnt/boot/grub/grub.cfg
umount /mnt
-
接下来便可以重启,进入 boot,选择做好的 U 盘。
可以查看一下是不是已经加上了 “persistence” 参数,这样以后就不用一次一次手动添加了哟。
-
看一下信息:
接下来便可以愉快地使用做好的 live cd 啦。