作者: javacomhk 時間: 2022-3-18 20:29 標題: 製作 USB Bootable Linux 手指並可以 Persistence 有儲存功能
本帖最後由 javacomhk 於 2022-4-15 12:21 編輯
Ventoy 教學可以製作多個 ISO USB Multi Bootable 手指如下,但這教學沒有提供方法如何製作可儲存 Linux ISO Persistence 內容儲存功能的 USB 手指。Ventoy 支持 Boot 起 Linux 的 ISO / Windows 的 ISO 並同時可以支持 Boot 起 Windows 的 VHD/VHDX files 去實現 Windows 儲存功能,但請注意 Boot 起 Windows 的 ISO 是沒有儲存功能的。
https://www.gdaily.org/23174/ventoy-iso
(1) Linux 的 ISO 除了可以用 USB 手指 Multi-boot 起,還可以有 Persistence (儲存內容)功能。即 USB 可以從多個 ISO 中選擇 boot 起個 Linux ISO 並可以在某些支持的 Linux ISO 在該 USB 手指儲存修改後的設定內容,例如時區,輸入法,wifi 設定及保留安裝一些常用 packages 或例如 Google Chrome Browser。此方法可以不用將 Dual Boot / grub 菜單及 Linux partition 安裝在固定 Windows 電腦內,並可使用此 USB 手指在其他 Intel/AMD 電腦上,同時具備儲存內容功能在 USB 內。具體可以安裝多少個 ISO 或多少 persistence 內容就視乎你的 USB 手指容量,一般 8GB 的 USB 手指或以上就可以安裝一 個 Ubuntu ISO 加 4GB 左右 的 persistence 內容。但 persistence 功能亦有限制就是不能更新 kernel 或安裝 driver。
(2) 要實現 Linux ISO 的 Persistence 功能,可參考官方的文檔 Ventoy Persistence Plugin。
(3) 以下教學,提供其中 Ubuntu 20.04 ISO 在 USB 手指實現 Persistence 的方法作例子:
(4) 安裝 ventoy 前要查看你的電腦是否有 Secure Boot enabled 及是否用 GPT 啟動方式,並選擇相應的設定安裝,否則該 USB 手指是啟動不了的。比較舊式的電腦是沒有 Secure Boot 及使用 MBR 啟動方式的,ventoy 的默認安裝也是這樣設定。新 一點的電腦是用GPT 啟動方式但可能沒有啟動 Secure Boot,詳情要在啟動電腦時進入 BIOS (例如按著 F2) 查看相關設定。安裝好 ventoy 在 USB 手指後(例如 ventoy 是在 E Drive),在 USB 手指創建以下 Folders,"E:\iso", "E:\persistence", "E:\ventoy"後,並將已下載的 Ubuntu ISO 抄到USB 手指內為 "E:\iso\ubuntu-20.04.4-desktop-amd64.iso"。
如果 Mac 機要裝 ventoy 就要用佢個 Live CD ISO 裝落 USB 手指,然後 boot 起隻 USB 手指後安裝落另一隻 USB 手指。
(5) 下載 persistence image, 從 https://github.com/ventoy/backend/releases 下載 images.zip,解壓後再解壓其中的一個檔案 persistence_ext4_4GB_casper-rw.dat.7z (可以用 pkunzip或winzip或winrar 解壓 7z檔案) 後抄到USB 手指內為 "E:\persistence\persistence_ext4_4GB_casper-rw.dat"
(6) 用 notepad 創建 "E:\ventoy\ventoy.json",內容如下, "persistence" 的內容主要是第一個菜單可以支持多個 ISO 的 images 及對應的 persistence 儲存文檔, "conf_replace" 的內容是當選擇了第一個 ISO 菜單後進入第二個 Grub 菜單時替換原裝 ubuntu iso 的 grub menu 的 boot option, 替換後令到 Ubuntu 開始時不需要花時間去 checking disk 及去除 "Try Ubuntu" 的重覆提示。請留意字母的大細寫與上面的目錄及檔案名稱要一致,所以最好全部都是 lowercase, Windows 的 \ 就是 Linux 的 / 。
- {
- "persistence": [
- {
- "image": "/iso/ubuntu-20.04.4-desktop-amd64.iso",
- "backend": [
- "/persistence/persistence_ext4_4GB_casper-rw.dat"
- ],
- "autosel": 1,
- "timeout": 5
- }
- ],
- "conf_replace": [
- {
- "iso": "/iso/ubuntu-20.04.4-desktop-amd64.iso",
- "org": "/boot/grub/grub.cfg",
- "new": "/ventoy/ubuntu.cfg"
- }
- ]
- }
"Ubuntu 20.04"
以下為修改後的第一段 menuentry 內容
- menuentry "Ubuntu 20.04" {
- set gfxpayload=keep
- linux /casper/vmlinuz file=/cdrom/preseed/ubuntu.seed fsck.mode=skip quiet splash ---
- initrd /casper/initrd
- }
(7) 如果 persistence_ext4_4GB_casper-rw.dat 有 4GB不夠用,而你的 USB手指仍有空位,可參考 官方文檔的第 5 點 Extend persistent dat file 去擴大容量。例如在 Windows WSL2 或 Linux 系統中的指令是
- # 下載 ExtendPersistentImg.sh
- wget https://www.ventoy.net/download/ExtendPersistentImg.sh
- # 擴大 2GB persistence image 容量
- sudo ./ExtendPersistentImg.sh persistence_ext4_4GB_casper-rw.dat 2048
- # 下載 CreatePersistentImg.sh
- wget https://www.ventoy.net/download/CreatePersistentImg.sh
- # 製作 8GB Kali Linux 的 ext3 persistence image
- sudo ./CreatePersistentImg.sh -t ext3 -l persistence -c persistence.conf -s 8192 -o persistence_ext3_8GB_kali.dat
作者: javacomhk 時間: 2022-3-19 09:10
本帖最後由 javacomhk 於 2022-4-7 11:25 編輯
如果要加隻例如 Debian ISO,就要去下載 nonfree 嘅 ISO, 一般都有較多 driver 。
例如 : debian-live-11.2.0-amd64-kde+nonfree.iso
(1) 將 debian-live-11.2.0-amd64-kde+nonfree.iso 放入去 "E:\iso"
(2) 將 "persistence_ext4_4GB_persistence.dat.7z" 解壓為"persistence_ext4_4GB_persistence.dat" 放入去 ""E:\persistence""
(3) 修改 ""E:\ventoy\ventoy.json"" 為
- {
- "persistence": [
- {
- "image": "/iso/ubuntu-20.04.4-desktop-amd64.iso",
- "backend": [
- "/persistence/persistence_ext4_4GB_casper-rw.dat"
- ],
- "autosel": 1,
- "timeout": 5
- },
- {
- "image": "/iso/debian-live-11.2.0-amd64-kde+nonfree.iso",
- "backend": [
- "/persistence/persistence_ext4_4GB_persistence.dat"
- ],
- "autosel": 1,
- "timeout": 5
- }
- ],
- "conf_replace": [
- {
- "iso": "/iso/ubuntu-20.04.4-desktop-amd64.iso",
- "org": "/boot/grub/grub.cfg",
- "new": "/ventoy/ubuntu.cfg"
- },
- {
- "iso": "/iso/debian-live-11.2.0-amd64-kde+nonfree.iso",
- "org": "/boot/grub/grub.cfg"",
- "new": "/ventoy/debian-kde.cfg"
- }
- ]
- }
(5) 修改 "E:\ventoy\debian-kde.cfg" 並增加以下 2 項 menuentry
- menuentry 'Run with persistence' {
- linux /live/vmlinuz-5.10.0-10-amd64 boot=live components persistence splash quiet "${loopback}"
- initrd /live/initrd.img-5.10.0-10-amd64
- }
- menuentry 'Run and reset persistence' {
- linux /live/vmlinuz-5.10.0-10-amd64 boot=live components persistence persistence-reset splash quiet "${loopback}"
- initrd /live/initrd.img-5.10.0-10-amd64
- }
作者: fakeman 時間: 2022-3-24 03:26
得閒搵隻舊 USB HDD 試試先, thx
作者: bongbong3481 時間: 2022-3-24 13:25
留名學野
