您尚未登录。

#1 2021-05-09 13:07:20

zw963
会员
注册时间: 2018-09-18
帖子: 8

[测试报告] 使用 Ventoy 制作 `可持久化' 的 Arch Linux 启动 ISO 媒介.

很多发行版本(比如 Ubuntu、MX、LinuxMint 等)都提供了数据持久化的支持。这样你就可以在Live环境中保存一些数据,比如用户密码、IP参数等等。这些数据在你下次启动的时候就可以直接使用了,无需再重新配置。正常情况下,我们一般是单独创建一个分区来保存持久化数据,不是非常灵活。

现在 Ventoy 提供了一个新的功能。你无需再单独创建分区、也无需添加 persistent 启动参数,只需要在第一个分区里面放一个数据文件,然后通过json配置和对应ISO关联上就可以了。对于第1个分区的格式没有要求,NTFS/exFAT等都可以。

你可以同时放很多个不同的数据文件,分别关联到不同的ISO文件上。你也可以同一个数据文件关联到不同的ISO文件上,只要ISO内的系统支持就行。甚至你还可以为一个ISO文件同时指定多个数据文件,在启动时 Ventoy会提供一个菜单,你可以选择本次启动是否使用数据文件以及使用哪一个数据文件。

如果你不知道 Ventoy 是什么东西, 请先前往 这里, 学习如何使用 Ventoy 制作启动 U 盘.

有关 persistent 的有关内容, 看 这里

启动 U 盘创建好之后, 我们需要三个步骤来实现:

1. 拷贝 Arch linux ISO 文件到 ISO 目录下.
2. 创建一个适用于当前发布版的 persistent 的映像文件, 我们使用以下命令来创建适合于 arch linux ISO 的持久化映像. (2048 表示容量 2G)
   

sudo ./CreatePersistentImg.sh -l vtoycow -s 2048

你可以在 这里 下载上面的 CreatePersistentImg 脚本.

3. 需要一个配置文件, 来告诉 Ventory, 那个 ISO 使用那个 persistent 文件, 例如:

{
    "persistence": [
        {
            "image": "/ISO/archlinux-2021.05.01-x86_64.iso",
            "backend": "/persistence/arch.dat"
        }
    ]
}

所有以上步骤完成后,  Ventoy 分区内容大概是这个样子.

.
└── Ventoy
    ├── ISO
    │   ├── archlinux-2021.05.01-x86_64.iso
    │   ├── CentOS-7-x86_64-Minimal-1810.iso
    │   ├── clonezilla-live-20210127-groovy-amd64.iso
    │   └── LaoMaoTao.iso
    ├── persistence
    │   └── arch.dat
    └── ventoy
        └── ventoy.json

4 directories, 6 files

配置完之后就可以重启了, 下面是效果图.

15761373730602.jpg

1724649678791.jpg


在进入一次 Arch 启动盘, 并且配置好 WIFI 信息之后, 再次重启进入启动盘, 可以看到仍旧正确读取保存的 WIFI 信息,  立即可以上网, 见截图.

179811443511976.jpg


具体实现原理我不太清楚, 群里有网友说:

leedagee: archiso启动默认是sfs上面挂tmpfs overlay,这个持久化就是你自己给一个块设备或者loop文件,取代那个tmpfs。是整个 / 都持久化了

zw963: 啊?  那是不是还是需要像安装 arch 一样, 全部包都再装一遍?
leedagee: 不需要,archiso默认有的全都有,除非你删了

zw963: 难道我还可以安装个新的 package, 下次还有?
farseerfc:  嗯還有


我们可以稍后专门 mount 上面的那个 persistence/arch.dat, 看看 persistent 的过程, 到底创建了什么.

└── x86_64
    ├── upperdir
    │   ├── etc
    │   │   ├── iwd
    │   │   ├── ld.so.cache
    │   │   ├── machine-id
    │   │   ├── pacman.d
    │   │   │   └── gnupg
    │   │   └── ssh
    │   │       ├── ssh_host_dsa_key
    │   │       ├── ssh_host_dsa_key.pub
    │   │       ├── ssh_host_ecdsa_key
    │   │       ├── ssh_host_ecdsa_key.pub
    │   │       ├── ssh_host_ed25519_key
    │   │       ├── ssh_host_ed25519_key.pub
    │   │       ├── ssh_host_rsa_key
    │   │       └── ssh_host_rsa_key.pub
    │   ├── root
    │   └── var
    │       ├── cache
    │       │   ├── ldconfig
    │       │   │   └── aux-cache
    │       │   └── reflector
    │       ├── lib
    │       │   ├── iwd
    │       │   │   ├── AC5300_5G-2.psk
    │       │   │   └── hotspot
    │       │   ├── pacman
    │       │   │   └── sync
    │       │   │       └── extra.db.part
    │       │   └── systemd
    │       │       ├── backlight
    │       │       │   ├── pci-0000:00:02.0:backlight:intel_backlight
    │       │       │   └── platform-lg-laptop:leds:kbd_backlight
    │       │       ├── catalog
    │       │       │   └── database
    │       │       ├── linger
    │       │       ├── random-seed
    │       │       ├── rfkill
    │       │       │   ├── pci-0000:00:14.0-usb-0:10:1.0:bluetooth
    │       │       │   └── pci-0000:00:14.3:wlan
    │       │       └── timers
    │       │           ├── stamp-man-db.timer
    │       │           └── stamp-shadow.timer
    │       ├── log
    │       │   ├── btmp
    │       │   ├── lastlog
    │       │   ├── pacman.log
    │       │   └── wtmp
    │       └── tmp
    └── workdir
        ├── index
        └── work

28 directories, 25 files

这个功能最大的好处是, 如果做一些简单的工作, 任意一台电脑, 可以直接 U 盘搞定.

是不是可以直接装一个 Xorg + Gnome 进去呢? 还没试过,  欢迎指正.

最近编辑记录 zw963 (2021-05-09 13:29:21)

离线

#2 2021-05-09 13:09:11

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,368
个人网站

Re: [测试报告] 使用 Ventoy 制作 `可持久化' 的 Arch Linux 启动 ISO 媒介.

好耶~

离线

#3 2021-05-09 13:22:20

SamLukeYes
会员
所在地: Canton, China
注册时间: 2020-07-19
帖子: 320
个人网站

Re: [测试报告] 使用 Ventoy 制作 `可持久化' 的 Arch Linux 启动 ISO 媒介.

是 Ventoy,不是 Ventory

另外,archiso 里面有 clonezilla

离线

#4 2021-05-09 13:30:24

zw963
会员
注册时间: 2018-09-18
帖子: 8

Re: [测试报告] 使用 Ventoy 制作 `可持久化' 的 Arch Linux 启动 ISO 媒介.

SamLukeYes 说:

是 Ventoy,不是 Ventory

另外,archiso 里面有 clonezilla

哦, 改了,  竟然有 clonezilla? 不知道, 哈哈

离线

#5 2021-05-10 13:39:46

千玄子
会员
所在地: 中国上海
注册时间: 2019-05-28
帖子: 84
个人网站

Re: [测试报告] 使用 Ventoy 制作 `可持久化' 的 Arch Linux 启动 ISO 媒介.

可以,但会很卡,因为 U 盘 IO 瓶颈限制,我目前是装了个 wm,可以勉强运行 firefox

zw963 说:

是不是可以直接装一个 Xorg + Gnome 进去呢? 还没试过,  欢迎指正.


探索未知使人迷醉

离线

#6 2021-05-16 23:37:28

zw963
会员
注册时间: 2018-09-18
帖子: 8

Re: [测试报告] 使用 Ventoy 制作 `可持久化' 的 Arch Linux 启动 ISO 媒介.

千玄子 说:

可以,但会很卡,因为 U 盘 IO 瓶颈限制,我目前是装了个 wm,可以勉强运行 firefox

zw963 说:

是不是可以直接装一个 Xorg + Gnome 进去呢? 还没试过,  欢迎指正.

哈哈, 多谢

离线

页脚