没有U盘,我也装上了Linux
前几天帮人装系统,手边愣是找不出一根U盘——原来那根不知道扔哪了,新的还没到。又不想干等着,就琢磨了一下怎么不靠U盘直接从硬盘引导装Linux,最后还真装成了。写下来给同样手边没U盘的朋友,顺手把踩过的坑也记一下。
先说清楚,这个方法有个前提:你的电脑得是UEFI启动的,传统BIOS那种老机器别试,后面会解释为什么。另外我全程是在Windows下操作。
核心思路其实一句话:在硬盘上硬分出一个FAT32分区,把它当成一个「虚拟U盘」,把Linux镜像解压进去,再用引导工具给它加个启动项,开机就能像插了U盘一样进到安装界面。
动手之前,几句丑话说前面,这步真出事是大麻烦:
- 动磁盘分区、改引导,都有把Windows搞到开不了机的风险。重要数据先备份,别嫌麻烦。
- 尽量用固态硬盘,机械盘会慢到你想骂人。
- 装的时候看清楚分区,别把C盘或者那个放镜像的分区给格式化掉。
需要准备的东西
就三样:分区工具、引导工具、一个Linux镜像。
DiskGenius(分区用):
- 中文官网:https://www.diskgenius.cn/ ,下载页 https://www.diskgenius.cn/download.php
- 下绿色版,解压就能用。安装包里免费/标准/专业版都有,咱分个区免费版足够,不用去激活。
- 它也有英文站:https://www.diskgenius.com/
EasyUEFI(加引导项用):
- 中文主页:https://www.easyuefi.com/index-cn.html
- 直接下安装包:https://www.easyuefi.com/downloads/EasyUEFI_Trial.exe
- 现在是V6.4。加引导、看启动菜单这些基础功能免费,不用管它那个专业版授权,我们只用到免费的部分。
Linux镜像:去你要装的发行版官网下(Ubuntu、Debian这些),下完顺手校验下哈希,别下了个坏镜像白折腾。
提醒一句:这类磁盘、引导工具别图省事去第三方下载站,基本都捆绑广告甚至木马,官网下最稳。
操作步骤
第一步:分出一个FAT32分区
打开DiskGenius,选好目标硬盘。找块有空闲空间的地方,右键「拆分分区」分出至少7G,然后对这块空闲空间右键「建立新分区」:
- 文件系统选 FAT32,这是关键,NTFS或exFAT引导器不认。
- 标签随便起,我写的是 LINUX-ISO。
保存更改,等它格式化完。这个分区就是我们的「虚拟U盘」。
注意别碰那些系统保留分区(ESP、MSR,还有C盘),不认识的一概不动。
第二步:解压镜像进去
把Linux的ISO直接解压到这个FAT32分区的根目录。
这儿有个特别容易翻车的点:很多解压软件会自动套一层文件夹,比如 ubuntu-22.04/efi/...,结果引导的时候找不到文件。一定要让 efi、boot 这些文件夹直接落在分区根目录下,别套着。
第三步:加引导项
用管理员身份打开EasyUEFI,左边选「管理EFI启动项」,点「新建」:
- 类型选Linux(或者其他系统)
- 描述随便起,比如
Install Linux,这个名字会出现在开机菜单里 - 分区选刚才放镜像的那个FAT32分区
- EFI文件选分区里的引导文件,具体路径往下看Ubuntu/Debian那节
保存,引导列表里就多了一项。
第四步:重启进安装界面
重启,开机猛按主板的启动菜单快捷键(F12、F11、Del,不同品牌不一样),选中 Install Linux 回车,就会进到Linux的安装界面。
第五步:装系统(最容易翻车的一步)
进安装向导到分区那步,一定瞪大眼睛核对磁盘。别把放镜像的FAT32分区格了,更别碰Windows的C盘。正常分个根分区和swap就行。装完重启,系统引导一般会自动认出来。
装好进系统之后,那个放镜像的FAT32分区就没用了,回Windows用DiskGenius删掉、把空间合并回去就行。
Ubuntu 和 Debian,引导路径到底差在哪
这俩解压后引导入口其实一模一样,都是 efi\boot\bootx64.efi——这是UEFI规范默认找的引导文件,EasyUEFI里EFI文件选它就行。真正不一样的是它加载的内核放在哪。
Ubuntu解压后大概是这么个结构:
/efi/boot/bootx64.efi ← 引导入口,EasyUEFI选它
/efi/boot/grubx64.efi ← GRUB本体
/boot/grub/grub.cfg ← 启动菜单配置
/casper/vmlinuz ← 内核
/casper/initrd ← initrd
/casper/filesystem.squashfs ← 整个live系统Debian解压后:
/efi/boot/bootx64.efi ← 引导入口,还是它
/efi/boot/grubx64.efi
/boot/grub/grub.cfg
/install.amd/vmlinuz ← 内核(注意是install.amd)
/install.amd/initrd.gz
/dists/ /pool/ ← 软件仓库对个表看得更清楚:
| 对比项 | Ubuntu | Debian |
|---|---|---|
| EasyUEFI选哪个efi文件 | \efi\boot\bootx64.efi | \efi\boot\bootx64.efi |
| GRUB配置 | /boot/grub/grub.cfg | /boot/grub/grub.cfg |
| 内核位置 | /casper/vmlinuz | /install.amd/vmlinuz |
| initrd | /casper/initrd | /install.amd/initrd.gz |
| 装的时候进的是 | 图形「试用/安装」界面 | 文本安装器 |
| Secure Boot | shim签名,兼容好 | 老镜像可能要关Secure Boot |
几个小提醒:
- 选文件先找
efi\boot\bootx64.efi,找不到再看grubx64.efi。 - 如果解压完发现压根没有
efi这个目录,八成又是上面说的套文件夹问题,把那一层剥掉再选。 - Debian那个网络安装镜像(netinst)体积小,解压后没有完整软件仓库,靠
install.amd联网装,一样能用这套方法。
踩坑记录
- 启动菜单里找不到那个引导项:先查分区是不是FAT32、efi路径对不对、EasyUEFI有没有用管理员跑,还有主板是不是UEFI模式、安全启动(Secure Boot)关没关——很多发行版不认这个。
- 引导直接黑屏进不去:多半是镜像没解压对(嵌套文件夹)、安全启动没关、或者主板根本是Legacy BIOS。
- Windows引导没了、开机直接进Linux:回EasyUEFI把Windows Boot Manager调回第一位就行。
评论 (0)