Jak*_*ski 66 live-usb persistence
我想制作一个具有超过 4GB 存储空间的持久实时 Ubuntu USB 驱动器。
我知道有一个直接安装在驱动器上的选项,但我不想这样做,因为它会限制驱动器在不同的计算机上工作。
一种选择是创建一个具有额外空间的附加分区,但如果我这样做,我如何才能将新安装的软件存储在该分区上?
小智 37
当前的 Unix USB 安装程序(例如来自 PenDriveLinux.com 的通用 USB 安装程序)在引导分区上与引导所需的其他文件一起创建一个持久文件。此引导分区采用 FAT32 格式,由于 FAT32 的限制,此文件的最大大小为 4GB。为了有更多的持久存储,这个文件可以被一个分区替换。此类分区的大小仅受 USB 驱动器大小的限制。
我使用 GParted 分区管理器来调整 FAT32 分区的大小,并为持久存储的大型 EXT4 分区腾出空间。持久文件可以简单地删除,在下次启动时,Ubuntu 系统将自动使用更大的持久分区。但是,有一个复杂问题:您需要另一个 Ubuntu 系统来执行此操作,因为 Ubuntu 无法修改其自己的活动引导分区。
我在 Ubuntu live 中使用了第二个 USB 驱动器。对于下面的说明,我使用了“32 位 Ubuntu 13.10 桌面”版本。
在 2 个 USB 驱动器上安装 Ubuntu live。为每个 USB 驱动器配置一个大约 100 MB 的小型持久存储。
从 USB 驱动器之一启动 Ubuntu。确保已拔下另一个 USB 驱动器。
从 Ubuntu Dash 启动“GParted Partition Editor”。此分区管理器默认安装在 13.10 中。
插入另一个 USB 驱动器,稍等片刻,然后在 GParted ( Ctrl+ R) 中进行刷新。您会注意到在设备列表底部添加了一个新设备。检查大小是否与目标 USB 驱动器匹配。选择此设备(参见下面的示例图片,设备名称在您的系统上可能不同)。
检查挂载点 ( /media/ubuntu/UUI) 是否与上图相同。
打开终端窗口 ( Ctrl+ Alt+ T) 并使用以下命令删除持久文件(如果安装点与您的情况不同,请调整此命令):
rm -v /media/ubuntu/UUI/casper-rw
Run Code Online (Sandbox Code Playgroud)刷新 GParted ( Ctrl+ R) 并注意“Used”中的更改。
右键单击分区并选择卸载。您会注意到挂载点不再显示。
右键单击分区并选择调整大小/移动。选择新大小:1000。这将留出一些空间来存储额外的或更新的文件。单击“调整大小/移动”。将出现一个“未分配”的分区
现在为持久存储创建一个新分区。选择未分配的分区并右键单击New。
选择文件系统“ext4”和标签casper-rw,然后单击“添加”。
检查一切是否正常,然后单击绿色复选标记以应用所有挂起的操作。
关闭 Ubuntu,移除第一个 USB 驱动器(不再需要此 USB 驱动器)并从第二个 USB 驱动器重新启动。
打开终端(Ctrl+ Alt+ T)和输入以下命令:
df . -h
Run Code Online (Sandbox Code Playgroud)
检查 Avail 大小是否与您创建的持久分区大小匹配。
Har*_*rsh 29
我想扩展V Bota 和 sudodus的答案。
我为另一个问题写了很多,但我认为它在这里会更好。
我之前也尝试过许多不同的指令,但都没有成功,当我找到一种使用非常好的创建mkusb工具的工作方法时,我几乎放弃了。
我假设您已经下载了 .iso 文件(来自 Ubuntu 16.04/任何 *buntu)。如果没有得到。
我曾尝试从已安装的 Ubuntu 系统运行这些说明。
注意:目前存在一个限制,即启用 efi 的操作系统无法在 BIOS 模式下工作。要绕过限制,请从另一个实时系统运行所有这些步骤。
mkusb启动到现有的 Ubuntu 或实时启动辅助 Ubuntu 闪存驱动器。
打开终端(Ctrl+ Alt+ T)并一一运行以下命令:
sudo add-apt-repository universe
sudo add-apt-repository ppa:mkusb/ppa
sudo apt-get update
sudo apt-get install mkusb usb-pack-efi
Run Code Online (Sandbox Code Playgroud)
最后一个命令可能会失败(虽然不太可能),因为mkusb(GUI版本)有一些依赖项在 Ubuntu 的实时版本中没有预安装/激活。
不过不必惊慌,开发人员还创建了纯文本版本。跑:
sudo apt-get install mkusb-nox usb-pack-efi
Run Code Online (Sandbox Code Playgroud)
我将专注于主要的 GUI 版本,因为这是我使用过的版本。因此,如果您安装了默认mkusb(GUI 版本),请运行:
dus
Run Code Online (Sandbox Code Playgroud)
dus是最新更新的新外观的别名mkusb。它是对旧版本的改造,更易于使用。
运行命令后,GUI 将打开。接下来按照以下步骤操作:
i选项Install(make a boot device)p选项Persistent Live并选择 .iso 文件。mkusb决定什么是最好的。(或者选择,但要明智。)Go单选按钮,然后单击 Go。完毕!
现在将新制作的永久性驱动器插入任何系统,并检查它是否真的在重新启动时存储了数据/设置(我的确实如此)。
整个过程应如下所示。
在终端中运行命令:
注意警告并单击“确定”:
双击 i 选项安装(制作引导设备):
双击 p 选项 Persistent Live 并选择 .iso 文件:
单击 USB 驱动器以使其持久化。我想使用我的 32 GB,所以我标记了单选按钮:
单击“使用默认值”以mkusb选择默认值:
输入要为持久性保留的驱动器的百分比。我的是一个大 (32GB) 所以我只分配了 20% ~ 6GB。剩余空间将变成一个空的便携式驱动器:
仔细检查并确认。您不想弄乱另一个驱动器。
如果一切顺利,您将看到一个漂亮的绿色成品屏幕:
现在将新制作的永久性驱动器插入任何系统,并检查它是否真的在重新启动时存储了数据/设置(我的确实如此)。
您可以在此处参考Calvin Bui的精彩教程,以逐步指导您完成 GUI 或阅读详细文档 https://help.ubuntu.com/community/mkusb
再次感谢 V Bota 的回答和andrea-lazzarotto帮助编辑这个。
V B*_*ota 15
在使用 Startup Disk Creator 多次尝试失败后,我终于按照以下说明成功使用了 mkusb:https ://help.ubuntu.com/community/mkusb
或在这里:http : //phillw.net/isos/linux-tools/mkusb/mkUSB-quick-start-manual.pdf
以下几行表示我在同一操作系统上使用 Lubuntu 15.10 尝试并为我工作的步骤。
安装 mkusb:如果您运行标准 Ubuntu,则需要额外的指令来获取存储库 Universe。(Kubuntu、Lubuntu ... Xubuntu 自动激活了存储库 Universe。)
sudo add-apt-repository universe # only for standard Ubuntu
sudo add-apt-repository ppa:mkusb/ppa # and press Enter
sudo apt-get update
sudo apt-get install mkusb mkusb-nox usb-pack-efi
Run Code Online (Sandbox Code Playgroud)
从版本 11 升级到版本 12需要一些特殊命令。看到这个链接,
help.ubuntu.com/community/mkusb/gui#Upgrading_from_mkusb_11_to_12
如果您没有官方的 ubuntu(Lubuntu、Xubuntu、Kubuntu ...)ISO 映像,请下载一个。
从 Dash 或菜单(取决于 Ubuntu 的风格)或使用以下命令行之一在终端窗口中运行 mkusb
mkusb 版本 12 别名 dus:
dus # getting into the main menu 'Install/Restore/Wipe'
dus file.iso # specifying a source file directly
dus /dev/sdx # specifying a source device
Run Code Online (Sandbox Code Playgroud)
mkusb 版本 9-11:
sudo -H mkusb # to get to the main menu
sudo -H mkusb file.iso p # source file and persistence via parameters
Run Code Online (Sandbox Code Playgroud)
当要求输入密码时输入管理员密码
然后在 mkusb 的主菜单中选择您下载的 ISO 映像。
如果您直到现在才检查它,请确保 bios 设置允许在 HDD 之前从 USB 启动。
2017 年 8 月更新 - 持久性文件大于 4GB
Syslinux 从 4.06 版本开始添加对 NTFS 的支持,但直到 6.03 版本才提供完整支持。
UNetbootin - 655 使用 Syslinux 4.03,每个 FAT32 的持久性文件限制为 4GB。
MultiBootUSB - 8.8 使用 Syslinux 4.07 并将安装在 NTFS 上,持久文件不限于 4GB。
Rufus 2.16 使用 Syslinux 6.03,将安装在 NTFS 上,不提供持久性文件,但可以手动添加,且不限于 4GB。
YUMI - 2.0.4.9(MultiBoot USB),使用Syslinux 6.03,将安装在NTFS上,持久文件不限于4GB。与 MBUSB 8.8 一样,它可以为每个安装的发行版提供持久性文件。
如果您使用的是 Windows,您可以只使用Rufus 3.8 或更高版本,以及 Ubuntu 19.10 或更高版本(可以在此处找到 19.10 的每日实时 ISO ),并将持久分区大小设置为您想要的任何大小。Rufus 不限于 4 GB 的持久性,甚至不需要您使用 NTFS(主分区的 FAT32 可以正常工作)。
是的,就是这么简单:
START。然而要注意,因为Ubuntu的/卡斯帕的bug#1489855,您必须使用Ubuntu的版本,其中上述持续性错误已得到修复,其中,目前,意味着只有19.10(特别是18.04 LTS和19.10将不工作)。
这个错误可能也解释了为什么这么多人在让持久分区与 Ubuntu 一起工作时遇到这么多麻烦,因为你应该总是能够简单地在同一媒体上创建一个casper-rw ext3或ext4分区,并获得持久性的认可。然而,遗憾的是,直到最近,bug #1489855 才出现……
(免责声明:我是 Rufus 的主要开发人员,我投入了大量时间确保持久性可以与 Ubuntu 一起使用,首先尝试确保错误 #1489855 得到正确解决)。