将Linux装进口袋: Ubuntu to Go 制作
目录
- 前言
- 材料准确
- 基础知识准备
- 物料准备
- 制作Ubuntu To Go !!!
- 1. 硬盘空间预留
- 2. 主板设置更改
- 3. 系统安装与分区
- 4. UTG安装验证
- 常见问题
前言
前面向大家介绍了如何在一台主机上安装Windows + Ubuntu的双系统(这篇博客),接下来就教学如何将Ubuntu操作系统安装到 U盘或移动硬盘里面,这样就可以随时将专属于自己的整套系统(含应用、配置和个人数据)可存储在移动设备中,并且在其它的主机上即插即用。
其实写这篇博客之前我也看了C站上的一些文章,感觉有些写的含糊其辞可能作者自己都不明白这样做的原因是什么,有的完全就是AI创写没有任何深度,其意义不亚于“将大象塞进冰箱”的三步总结。这篇博客基于我自身的实践,我为此尝试了两个版本的Ubuntu(22.04与24.04),踩了很多坑,希望能帮助到有需要的人。
材料准确
基础知识准备
我还是建议大家去看一下我之前写的有关系统引导的博客以及关于双系统安装配置的博客,理解会更加全面。总的来说我们需要知道:
- 磁盘的分类:按文件系统可以分为(NTFS和Ext4还有FAT32等类型)按照分区方案可以分为(MBR与GPT)。前面两者定义了文件的存储方式,后面两者定义了空间划分的方法。随着时代的进步MBR由于其支持的硬盘空间小(最大2T),分区数量不足(仅允许4个主分区)最重要的还是不兼容UEFI启动模式 ,也是逐步被弃用。文件系统和分区方案二者不是冲突的,一般磁盘的分类都是文件系统+分区方案。
- 操作系统引导的方式:传统模式(Legacy,也就是常说的BIOS)、UEFI模式。并且Legacy启动模式磁盘的分区必须为MBR,UEFI启动模式磁盘分区必须为GPT
- 一个完整的操作系统至少应该包含两部分(UEFI引导方式):EFI系统分区(ESP,用来引导操作系统启动),操作系统本体(Linux的表现形式为根目录,而Windows的表现形式为C盘)。另外在实际使用中可能还有有数据分区(D,E,F盘)、恢复分区(windows)、交换分区(Linux)等。
物料准备
网上有些方法安装使用的是虚拟机,为什么用虚拟机呢?因为想减少一个U盘的使用:直接把Ubuntu的系统.iso
安装到虚拟机上,然后在Windows上运行这个镜像往硬盘里安装操作系统,这样就可以节省一个系统镜像盘的使用。因为比较麻烦,这里不用这种办法,直接使用rufus制作的系统启动U盘进行安装因此需要你至少准备两个U盘:
- U盘(至少8GB,用于制作系统启动盘)
- 准备安装Ubuntu的移动硬盘或者U盘(建议容量不小于128GB,并且最好是USB3.0接口,Ubuntu将被安装到这上面)
- DiskGenius1 (硬盘分区软件,免费)
- Rufus2或者UltraISO(用于制作启动盘,这里使用Rufus)
准备好上面的材料以后,请参考下面的内容,用第一个U盘制作启动盘:
首先、访问Ubuntu下载页面,点击下载按钮下载.iso后缀
的系统镜像文件。这里强烈建议安装Ubuntu24.04LTS版,因为Ubuntu22.04LTS可能会出现与主机ESP分区合并的问题,造成主机拔下U盘后无法启动,U盘脱离主机无法在另一台主机上使用当然这个问题也能解决,后面会给出解决方法。
下载完成后,打开rufus。设备选择为自己的U盘,引导类型选择刚刚下载的系统镜像文件。唯一需要特别设置的是分区类型,这里选择GPT,目标系统类型选择UEFI其余默认即可。配置完成如下图所示:
完成后你就得到了一个装有Ubuntu镜像的启动盘,可以通过U盘启动的方式进入这个系统镜像。当然了,你如果只有一个U盘的话也可以使用虚拟机的安装方法,具体请自行去搜索步骤。
制作Ubuntu To Go !!!
1. 硬盘空间预留
这个步骤会清空你移动硬盘或者U盘内的数据,请在开始前进行数据备份。完成后正式开始空间预留,这步可以在DIskGenius中完成,但是为了简便介绍如何使用自带的分区工具。
在Windows搜索框内搜索:创建并格式化硬盘分区
,打开Windows自带的分区工具(此工具无法删除ESP分区,功能相比DiskGenius有限)。找到准备安装UTG的存储设备:
我这里是用一个128GB的移动硬盘来演示,右键硬盘的分区,选择删除卷
,然后你就能得到一块未分配空间,接下来我们的任务就是在这块空间内安装Ubuntu操作系统。
2. 主板设置更改
首先更改主板的启动方式。 现在基本上只有十几年前的电脑还在使用传统模式启动了,基本上的启动方式都是UEFI的引导方式。
重启电脑,并且不停地按动F2键进入BIOS设置(不同主板按键可能不同,并且请不要犯蠢用蓝牙键盘),进入启动选项,确保启动模式为UEFI。
其次,禁用安全启动模式,在安全启动模式下,无法进入启动盘的程序,会出现verification failed 0x1a
的错误。
最后如果设置有USB Boot也要设置为Enable。贴一张联想笔记本的设置:
3. 系统安装与分区
首先将启动盘和待安装系统的硬盘/U盘插到主机上:
关机并重新启动电脑,在启动时狂按F11(因主机而异)进入Boot Menu,并选择启动盘进行启动:
加载出界面后,选择try or install ubuntu
:
下面应该就会打开Ubuntu操作系统的界面了,选择语言为简体中文后就可以开始安装了:
当然你也可以试用这个系统,你现在所操作的系统就是被rufus烧录进U盘的Ubuntu live操作系统,这个系统不会存储信息。下面一路前进,选择交互式安装,就可以进入分区的设置了:
下面选择手动分区设置:
你可以看到之间释放的128GB的空闲空间,并且被识别为了sda(不唯一,要根据实际情况)。
手动分区第一步,先选择安装引导程序的设备在右下角的安装引导程序的设备选项里选择待安装系统的U盘(也就是sda):
根据我在两台机子上的测试显示,有可能此时会直接在你待安装的存储器上划分EFI分区(特点是挂载在/boot/efi下),如果自动生成的是一个1M左右的分区说明你主板的启动方式不是UEFI,而是Legacy。如下:
正常情况下是生成这样的引导分区的:
如果没有自动生成要手动进行分区划分:选中剩余空间,并点击左下角的+号,按照如下进行划分:
下面如法炮制,划分交换空间与根目录空间:
这个两个空间大小的划分,大家还是参考我前一篇博客,简单来说交换分区的大小要大于等于电脑运存,根目录挂载剩下所有的空间划分完成后如下:
最后的确认环节磁盘的划分如下:
确认无误后即可开始安装!
4. UTG安装验证
重启之后,按动F11进入boot menu。如果能识别出你的移动硬盘名称,并且选择移动硬盘启动后能进入Ubuntu系统,那么安装就成功了!
常见问题
- 主机拔掉U盘后原本的系统无法启动?(常见于WIndows与Ubuntu双系统中,且无法启动的是Ubuntu)
- 装好系统的U盘拔出后无法在除了主机以外的设备启动?
上面两个问题一般是由于Ubuntu的引导程序被安装到了其它磁盘上导致的。具体验证可以进入UTG系统的磁盘空间里,查看引导分区是否被挂载在了/boot/efi
下:
上面这张图里,明显引导分区没有被挂载到/boot/efi下,并且查看U盘引导区可以发现,里面是空的:
你如果再看一下其它的盘的ESP分区就可以找到ubuntu被挂载到了它们的分区下面。
这样就可以解释,为什么U盘在其它主机上无法启动:因为系统引导文件被装到了其它盘上,U盘上的是空的,没有引导程序自然无法启动OS,并且安装的主机拔掉U盘以后会无法启动:因为安装Ubuntu后会默认进入Ubuntu引导程序Grub2而不是Windows boot manager,现在U盘拔掉了就没办法找到Grub2了
那么该如何解决这个问题呢?
首先,主机上插上U盘,并且也要插上前面制作的启动盘进入启动盘的系统(也就是之前安装UTG用的Ubuntu live操纵系统),点击try ubuntu 进入live系统
,我们要做的是,在live系统内修复U盘空缺的EFI系统分区即执行boot repair。
打开终端(ctrl + alt + T)执行下面的命令
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update #添加boot repair 软件源sudo apt-get install -y boot-repair && boot-repair #安装并打开boot repair
出现下面的界面后选择recommended repair
执行结束之后再打开boot menu 你应该就能看到U盘的ESP分区被识别了:
但是另一块硬盘上的ubuntu启动项没有被删除,这样如果拔掉U盘后,原来主机会默认执行第一项引导(也就是U盘上的OS的引导程序),由于U盘已经拔出从而会造成错误。解决办法很简单:打开DiskGenius 删除冗余的ubuntu引导程序
3. 在启动UTG系统引导时,发现原本主机上的Windows启动项仍然存在:
这是因为grub2可以引导Ubuntu与windows,Windows 引导项通常由 /etc/grub.d/30_os-prober 脚本检测生成。解决办法就是禁用它。
进入UTG的ubuntu系统,执行以下命令:
1、编辑 GRUB 配置
sudo nano /etc/default/grub
2、 添加或修改以下行:
GRUB_DISABLE_OS_PROBER=true
3、更新GRUB
sudo update-grub
至此一个Ubuntu To Go的系统安装就完成啦!以后你就可以随时随地带着自己的操作系统进行移动办公了!实测下来,由于USB3.0接口的特性,这个系统使用起来与原生的基本上速度没有差异。主要还是因为在操作系统启动的阶段,内核被装载到内存当中了,因此UTG仅仅只是启动的时候转载内核的速度比较慢,使用时的速度还是可以的
有任何问题欢迎在评论区和我讨论!
https://www.diskgenius.cn/ ↩︎
http://rufus.ie/zh/ ↩︎