如果不需要加密分区,使用任意能想到的方式刷入iso即可。
我想要直接在u盘安装debian live,而不是通过ventoy加载。先刷入镜像,再使用fdisk进行分区会由于debian live分区奇怪导致无法启动,GParted和parted也没有帮助。因此使用工具 mkusb
1. 在ubuntu安装mkusb (debian操作稍麻烦点)
# 启用 universe 仓库并添加 mkusb 官方源
sudo add-apt-repository universe
sudo add-apt-repository ppa:mkusb/ppa
# 更新并安装
sudo apt update
sudo apt install mkusb mkusb-nox usb-pack-efi -y
我在ventoy启动ubuntu,尝试挂载ventoy u盘中的debian live镜像失败。因此考虑直接通过另一个u盘拷入,或者直接wget下载到本地。
2. 刷入系统并分区
- 启动程序:在终端输入
sudo mkusb。选择d 开始,即dus(Classic, easy to use),这是mkusb最经典、也是功能最完整的向导模式。 - 安全提示:此时会弹出一个警告窗口,问你是否运行(Run mkusb?),点击 Yes。
- 主菜单:选择第一项
Install (make a boot device),点击 OK。 - 模式选择(关键):选择
'Persistent live' - only Debian and Ubuntu,点击 OK。 - 选择镜像:在弹出的文件浏览器中,找到你的
debian-live.iso。 - 选择目标 U 盘:仔细核对,选中你的 U 盘(例如
sdb),点击 OK。 - select method/tool 选择
p(‘dus-Persistent’, classic dus method)。即需要的“Persistent(持久化)” - persistent live drive settings 保持默认都不勾选
- 空间分配:
mkusb会非常贴心地问你:“持久化分区要占可用空间的百分之几?”- 例如,你可以拖动滑块或输入
50%。 - (剩下的 50% 它会帮你做成一个名为
usbdata的 NTFS 分区,你插到 Windows 电脑上也能当普通 U 盘存文件!),不需要此分区,因此直接拉满100%(需要就保留) - select pack 选择默认的
usb-pack-efi-1
- 最终确认:勾选
Go ahead,点击 Go。
3. 加密分区
首先确认 mkusb 把持久化分区分配到了几号
lsblk -f /dev/sdb
找到带有 persistence 标签或者体积最大的那个分区(通常是 /dev/sdb4 或 /dev/sdb5)。
假设你确认了目标分区是 /dev/sdb5(务必替换为自己 lsblk 看到的实际编号):
sudo cryptsetup luksFormat --type luks2 --cipher aes-xts-plain64 --key-size 512 --hash sha512 --iter-time 3000 /dev/sdb5
输入大写的 YES,然后输入你要设置的保险箱密码。
解开刚建好的加密层,并在里面建立 Debian 认识的持久化格式:
sudo cryptsetup open /dev/sdb5 my_vault
sudo mkfs.ext4 -L persistence /dev/mapper/my_vault
答案是:随时可以更改,而且非常简单。 LUKS 加密机制极其高级,它支持所谓的“密钥槽(Key Slots)”,你可以随时修改密码,甚至可以同时设置多个不同的密码来解锁同一个 U 盘。
更改密码不需要格式化,也不会丢失任何数据。操作如下:
1. 找到底层的物理分区编号
在终端输入:
lsblk
找到你的 U 盘,看一下被标记为 crypt 的那个分区叫什么(通常是 /dev/sdb5 或 /dev/sdc5 之类,注意不是 /dev/dm-0,必须找它下面的物理盘符)。
2. 执行修改密码命令
假设你通过 lsblk 确认了加密分区是 /dev/sdb5:
sudo cryptsetup luksChangeKey /dev/sdb5
3. 按照提示输入
终端会依次提示你:
Enter any existing passphrase:(输入你现在的密码,输入时屏幕不会有任何显示,输完按回车)。Enter new passphrase for key slot:(输入你想要的新密码)。Verify passphrase:(再次输入新密码确认)。
只要没报错,密码就瞬间修改完成了!下次开机解锁时,直接使用新密码即可。
4. 在内存中运行
最开始选择运行方式时,直接按e编辑启动参数
在大概第二行 linux 最长的那行末尾添加 空格 toram
在 Debian Live 系统中,你可以通过几种简单的方法来确认系统是直接从 U 盘读取数据,还是已经完全加载到了内存(RAM)中。
通常,这取决于你在启动时的引导参数(Boot Parameters)中是否使用了 toram 选项。
1. 检查启动参数(最直接的方法)
查看内核启动时携带的指令。如果其中包含 toram,说明系统在启动时尝试将整个文件系统镜像加载进 RAM。
运行以下命令:
cat /proc/cmdline
- 如果看到
toram: 说明系统运行在 RAM 中。 - 如果没有
toram: 说明系统按常规模式运行,即实时从 U 盘读取数据。
2. 使用 lsblk 查看挂载点
通过查看设备挂载情况,可以观察“介质”在哪里。
运行命令:
lsblk
- 常规模式: 你会看到你的 U 盘分区(如
/dev/sdb1)被挂载在/run/live/medium。这意味着系统仍在使用 U 盘。 - RAM 模式(toram): 在某些配置下,如果成功加载到内存,
/run/live/medium可能会被卸载,或者你会发现根目录对应的loop设备不再频繁访问 U 盘分区。
3. 检查 df 磁盘占用
查看文件系统的来源:
df -h | grep /run/live
- 如果
/run/live/medium指向一个物理设备(如/dev/sdX),且系统运行缓慢(取决于 U 盘速度),通常是 U 盘运行。 - 如果系统是
toram模式,你会发现系统响应极快,且在拔掉 U 盘后(如果已手动卸载介质),系统依然能正常运行程序。









暂无评论内容