centos安装所出现U盘启动的错误+esp分区的引导详细
目录:1、安装centos7用U盘启动进不去安装界面 2、esp分区的解释和安装双系统的理解 3、macos系统的esp分区+esp分区的挂载
安装centos7用U盘启动进不去安装界面:
转自:https://blog.csdn.net/weixin_45853533/article/details/111562461 服务器安装 Centos7 时引导错误以及解决方案
使用U盘刻录方式安装CentOS7.1,但是发现安装初始化时候发生错误,本以为是U盘刻录或者是镜像的问题,但是反复刻录多遍仍然出错。后来在CentOS中文社区,发现使用UltraISO刻录安装时就可能出现初始化引导错误1.一般情况下
vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet
文字不会出现在屏幕下方。当我们在安装选择界面,也就是选择U盘启动的第一个界面,该界面上有三个选项:
1、Install CentOS 7
2、Test this media & install CentOS7
3、Troubleshooting
此时,按一下Tab键,将会出现在屏幕下方出现这一串文字
vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet
然后将这行文字修改为
vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdb4 quiet
其中sdb4指是我的电脑设备上的U盘,sda指第一个挂载盘,sdb指第二个挂载盘,sdc指第三个挂载盘,依此类推。每台电脑上的USB挂载名称不一样,要视情况而定选择挂载盘。通常情况下,我们不知道U盘挂载名称,这时候,可以将文字改为
vmlinuz initrd=initrd.img linux dd quiet
回车后,屏幕会出现挂载盘选择的的界面,该界面会显示,挂载盘名称(DEVICE)、类型(TYPE)、标识(LABEL)等信息,通常情况下选择标识为CentOS的就OK,也可以一个一个试。这时候记下挂载盘名称,重启电脑,启动进入U盘,出现系统安装选择界面,按Tab键,修改
vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet
为
vmlinuz initrd=initrd.img inst.stage2=hd:/dev/挂载盘名称 quiet
最后按Enter就能进入CentOS安装界面了
esp分区的解释和安装双系统的理解
https://blog.csdn.net/weixin_39614561/article/details/111983362 关于esp分区的使用
EFI系统分区,即 EFI system partition,简写为 ESP。ESP 是一个 FAT16 或 FAT32 格式的物理分区,但是其分区标识是 EF (十六进制) 而非常规的 0E 或 0C,因此,该分区在 Windows 操作系统下一般是不可见的。支持 EFI 模式的电脑需要从 ESP 启动系统,EFI 固件可从 ESP 加载 EFI 启动程序或者应用。
一般情况下,大家仅仅是为了应和 EFI 规范而不得不划分这样一个分区,而且也只把它当作一个 EFI 启动程序和 EFI 应用程序的存储空间。因此,许多资料都推荐只划分一百多M空间给 ESP,这也使得该分区除了遵循 EFI 规范以及存储 EFI 启动文件之外没有太大用处。然而,我认为 ESP 可以有更多更好的用法。既然 ESP 是必要的,何不物尽其用?
首先,看下 ESP 本身的特点,以及由此带来的好处。
ESP的特点和好处
FAT分区与通用性
EFI 规范规定 ESP 使用 FAT 格式。尽管这种老旧的格式有很多局限性,但也不算一无是处。尤其对我来说,系统中有个 FAT32 分区是很好的,因为我经常使用多个系统,包括 Windows、Linux、FreeBSD,而这些系统都能安全地访问 FAT 分区,因此,我可以把各个系统的启动相关的文件包括启动管理程序等放到 ESP 里,而且,这也方便我可以在一个系统中去修改另一个系统的启动文件,至少我可以把 ESP 当作各个系统的公共交换空间吧。
独立于操作系统
ESP是一个独立于操作系统之外的分区,操作系统被引导之后,就不再依赖它。这使得 ESP 非常适合用来存储那些系统级的维护性的工具和数据,比如:引导管理程序、驱动程序、系统维护工具、系统备份等,甚至可以在 ESP 里安装一个特殊的操作系统(SlaTaz Linux? PuppyLinux? Win PE?)。
ESP分区标识与安全、隐藏
尽管 ESP 分区是一个 FAT 格式的分区,但它的分区标识却是一个特别的标识(EF),EFI 规范的这一规定使得 ESP 在 Windows 下一般是不可见的,起码,对一般的 Windows 用户来说,这是一块“无法访问”的隐藏起来的区域。这意味什么?我们可以利用这个特点做什么?
我们不妨先回顾下其它煞费苦心地划分特殊分区以达到特殊目的的一些技术或方案。许多品牌机会在硬盘里划分一个特殊的隐藏的分区,用以存放系统恢复镜像等文件,可利用该分区“一键”恢复系统。无忧论坛上提到了UD隐藏分区,在磁盘上划分一块未使用的空白区域,用于存储引导文件甚至PE系统。除了这些,应该还有一些类似的东西,它们的目标其实都是为了维护或恢复系统,一般来说,木马和病毒不会破坏这些分区里的文件,普通用户也不会触及它们,使得它们相对来说是安全的。但是,它们的用户其实只是普通的 Windows 使用者,其它操作系统的用户,以及稍懂点技术的 Windows 用户,非常不愿意见到那些“多余”的分区,相信许多人都会把那些分区删除了吧?不过,ESP 呢?与提及的那些技术相比,ESP 也可以看作是一个特殊的分区,它有何特别?
首先,EFI 规范要求有 ESP,既然是强制的,那我们不妨拿它多做点事,而不是去删除它。其次,与上面提及的那些技术相比,ESP 也可以看做是一个安全的隐藏的分区,这使得我们完全可以使用 ESP 来替代那些技术,我们可以把引导管理程序、系统维护工具、系统恢复工具及镜像等放到 ESP,可以自己打造“一键恢复系统”,等等。而且,不仅可以自己进行 DIY,还要更方便、更通用。再者,ESP 是个标准的 FAT 分区,因此与上面提及的那些技术不同,ESP 在“隐藏”的同时并没有失去可访问性,不管你用什么操作系统,都是可以安全地访问它的(后面讲),所以,ESP 绝不会是“多余”的,相反,它很有用。
精心打造后的 ESP 可以成为你系统中的“救命稻草”,因它的特性使得它可能会是所有分区中最为“安全”的,当你的系统受损时,你还能依靠这个 ESP 进入维护系统对系统进行修复,或是“一键恢复”,或是进入 ESP 里的 某个 Linux 系统,或者,进入预先安装好的某个 Win PE,甚或一个 RamXP?你想怎么打造你的 ESP 呢?
善用ESP
大容量的 ESP
与常识相反,我使用大容量的 ESP。我一般会划分一个 20G 或 32G 的 ESP,并且,不管系统是否支持 EFI(事实上我现在用的这台机器根本不支持 EFI),我都会在主硬盘上划分这么一个 ESP。
访问 ESP
在 Linux 等系统下,ESP 和普通的 FAT 分区没什么两样,可以使用相同的方式进行挂载(使用 vfat 分区类型)。可以把 ESP 的挂载写到 /etc/fstab 里。我一般把 ESP 挂载为 /boot。
在 Windows 下,ESP 一般是不可见的,使用 Windows 自己的磁盘管理器无法为 ESP 分配盘符,因此需要借助一些工具或方法。如果是 PE 系统,或是 Win 7 以下版本的 Windows,可以使用 BOOTICE 的分区管理功能,给 ESP 分配一个盘符。另外,无忧论坛上有人写了一个 MountESP 程序,可以用来挂载 ESP 并为之分配盘符。然而,在 Win 7 以上版本的 Windows 中,那些工具虽然可以成功给 ESP 分配盘符,但在资源管理器中看不到。
其实,不借助其它工具,使用 MKLINK 命令就可以挂载 ESP。假设 ESP 位于第一块硬盘的第一个分区,以管理员身份打开 CMD,运行以下命令:
MKLINK /J C:\ESP \\?\GLOBALROOT\Device\Harddisk0\Partition1\
运行成功之后,C:\ESP 就是指向 ESP 的一个符号链接,欲访问 ESP,访问 C:\ESP 即可。这个方法在 Windows 上其实是通用的,Win 7 以下版本也可以用,只是在 Win 7 以下版本并没有 MKLINK 命令,需要自行下载 junction 这个程序来代替 mklink。
引导管理程序
对于 EFI 系统来说,系统的引导文件会安装到 ESP。Windows 会在 ESP 建立 EFI 目录并把引导文件复制到这里。Linux 则有多种选择方案,我一般选择 Grub2,也使用过 rEFIt。
而对于非 EFI 系统,主引导记录(MBR)我一般会使用 GRUB4DOS 或 NT6.X MBR,并把 GRUB4DOS (包括 grub.mbr, grub.exe, grldr, menu.lst)安装到 ESP,并且,附加上 SISO 模块(可以在无忧论坛里找到它)。还可以从 Win 8.1 复制 bootmgr 及 boot 目录到 ESP,并使用 BOOTICE 来管理 MBR 和 BCD。
不管系统是否是 EFI 的,我一般都会在 ESP 里安装 GRUB4DOS。GRUB4DOS 并不支持 EFI,但没关系,我们可以借用 GRUB 2 EFI 来引导 GRUB4DOS,给 GRUB 2 加个菜单就可以了,类似这样:
menuentry "GRUB4DOS" {undefined
insmod part_msdos
insmod fat
set root=(hd0,1)
linux /grub.exe
}
以后我打算尝试下Clover,这样,不管是否是 EFI 系统,我都可以用同样一个引导管理程序。
在 ESP 里安装非日常用操作系统
当然,你不会想在 ESP 里安装日常所用的操作系统,我们可以挑选那些小巧便携的一些操作系统放到 ESP 里以备不时之需。许多系统可以借助某些引导管理程序以 ISO 镜像的方式直接启动,比如,SliTaz Linux, Ubuntu 等,很多 Win PE 系统也可借由 GRUB4DOS 从 ISO 直接启动。
GRUB 2 可以使用 loopback 模块启动一些 ISO 镜像,假设 ESP 是第一块硬盘的第一个分区,下面是一些 Grub 2 的菜单例子:
### GRUB 2 菜单文件: /boot/grub/grub.cfg
menuentry "Ubuntu Live" {undefined
set ISO=/OS/Ubuntu/ubuntu.iso
loopback loop (hd0,1)$ISO
### 如果是32位的Ubuntu,应将下面的 vmlinuz.efi 改为 vmlinuz
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$ISO noprompt noeject
initrd (loop)/casper/initrd.lz
}
menuentry "SliTaz" {undefined
set ISO=/OS/SliTaz/slitaz-cooking.iso
loopback loop (hd0,1)$ISO
linux (loop)/boot/bzImage root=/dev/null
initrd (loop)/boot/rootfs.gz
}
menuentry "Fedora Live" {undefined
set ISO=/OS/Fedora/fedora.iso
loopback loop (hd0,1)$ISO
linux (loop)/EFI/boot/vmlinuz0 root=live:$ISO rootfstype=auto ro liveimg quiet rhgb rd.luks=0 rd.md=0
initrd (loop)/EFI/boot/initrd0.img
}
menuentry "Knoppix Live ISO" {undefined
set ISO=/OS/Knoppix/knoppix.iso
loopback loop (hd0,1)$ISO
linux (loop)/boot/isolinux/linux bootfrom=/dev/sda1$ISO acpi=off keyboard=us language-us
initrd (loop)/boot/isolinux/minirt.gz
}
相对来说,我对 GRUB4DOS 更熟悉一些,而且 GRUB4DOS 可以启动更多种类的镜像文件。如果你的系统是 EFI 启动的,你可以安装 GRUB 2 EFI 并借由它来引导 GRUB4DOS,前面已经说过。GRUB4DOS 的菜单文件是 menu.lst,以下是一些例子:
iftitle [find --set-root --devices=h /bootmgr && call set R=%@root^%] BOOTMGR of Windows VISTA/WIN7/WIN2008 on %R%
chainloader %bootmgr%/bootmgr
iftitle [find --set-root --devices=h /OS/Ubuntu/ubuntu.iso && call set R=%@root^%] Ubuntu LiveCD
set F=/OS/Ubuntu/ubuntu.iso
map %F% (0xff) || map --mem-top %F% (0xff)
map --hook
kernel (0xff)/casper/vmlinuz boot=casper iso-scan/filename=%F% ro quiet splash
initrd (0xff)/casper/initrd.lz
title SliTaz ISO
set F=/OS/SliTaz/slitaz.iso
find --set-root --ignore-floppies --ignore-cd %F%
map %F% (0xff) || map --mem-top %F% (0xff)
map --hook
chainloader (0xff)
title Win8.1 RamOS
set F=/OS/Win8/usm8.1ramos.iso
find --set-root --ignore-floppies --ignore-cd %F%
map %F% (0xff) || map --mem-top %F% (0xff)
map --hook
chainloader (0xff)
title 0PE LiveISO
set F=/OS/0PE/0PE.iso
find --set-root --ignore-floppies --ignore-cd %F%
map %F% (0xff) || map --mem-top %F% (0xff)
map --hook
chainloader (0xff)
更高级点,还可以利用 Win7 以上版本的差分 VHD 及 GRUB4DOS 的 dd 命令做一键恢复。
系统维护工具、PETOOLS、脚本文件
上面所述的操作系统本身只能提供有限的工具,为便于系统维护,我把各种系统维护工具、PETOOLS等都放在了 ESP 里,这样,从 ESP 启动 PE 系统后就可以调用它们。这些工具包括:磁盘工具、分区工具、镜像/备份工具、辅助安装工具、硬件检测工具、系统清理、恢复工具,等等。
还有,我把自己写的一些维护用的脚本也放在了这里。
操作系统镜像、备份及驱动
我很过分,我把这些东西也都塞到 ESP 里。如果日常使用的系统坏了,没关系,从 ESP 启动一个系统,或安装新系统,或进行恢复,都可以,对其它分区进行调整也可以,只要 ESP 没坏,其它系统都坏了也没关系。
后记
现在,你应该可以理解我为什么弄那么大容量的 ESP 了吧?
请不要把 ESP 与微软的 MSR 分区混淆,那个 MSR 分区并没有存在的必要。
你准备怎样使用 ESP 呢?
macos系统的esp分区+esp分区的挂载
https://blog.csdn.net/weixin_39533361/article/details/110359335?share_token=5b45eaed-3f93-44b4-a1a2-fa0bef3a789d esp分区盘符指定方式,可以方便编辑
所谓挂载ESP分区,其实就是给ESP分区分配一个盘符,使其可以读写。
如果我们仅安装单MAC系统的话,那么我们的磁盘最少只用分2个分区。即:ESP分区+主分区
此时,由于刚刚完成分区格式化操作,DISKGENIUS会自动为ESP分区分配盘符,在这个时候,ESP分区是可以直接读写操作的。
我们打开电脑,就会看到这个我们分好的容量为400M的ESP分区,格式一般为FAT16。我们只需将前面配好的CLOVER 安装EFI文件夹复制到该分区根目录下就完成了CLOVER的安装工作。
是不是感觉太简单了?嘿嘿,确实如此,我们再重新启动电脑,就可以从硬盘启动加载CLOVER了。
那就会有朋友提问了,既然如此简单,那你为何还要单独写一篇教程来呢?
因为在以后,我们经常会修改CLOVER的EFI文件。所以必须要可以挂载ESP分区。
尽管 ESP 分区是一个 FAT16 格式的分区,但它的分区标识却是一个特别的标识(EF),EFI 规范的这一规定使得 ESP分区在一般情况下是不可见的,起码,对于普通用户来说,这是一块“无法访问”的隐藏区域。
在正常WINDOWS下我们是看不到ESP分区的,即便是给它正确的分配了盘符,因权限问题,也无法读写,所以我们一般是在MAC环境或者是WIN PE环境下挂载它。
在MAC环境,我们一般是用Clover Configurator来挂载ESP分区,或者是在终端下用命令行挂载,这个我们在将来使用时会加以说明。
在WIN PE环境,一般是用DISKGENIUS来给它指派一个新的盘符,但有时可能会失败,大多数情况只需关闭DISKGENIUS后重新打开后再重新指派就可以了。实在不行,还可以使用BOOTICEX64来分配盘符。
挂载过程如下:
方法1、PE环境下使用DISKGENIUS:

注意上图中红色圈勾选位置,这里的分区全为ESP分区。现在所有的ESP分区都没有盘符,仅数字标号加以区分。

通过鼠标点击,选中我们要挂载的ESP分区。

点击鼠标右键,在弹出下拉菜单中选择“指派新的驱动器号”选项。

我们可以直接点击“确定”按钮完成挂载分区。也可以通过点击红色圈勾选位置向下小三角图标自由分配新的盘符。

在这里,根据我的喜好,选择了盘符P作为磁盘新的盘符。

点击“确定”按钮完成磁盘的新盘符分配工作。

注意看图中红色圈勾选位置,此时我们的ESP分区已经获取了新的盘符。

打开浏览器,可以看到,ESP分区已经可以正常读写了。
方法2、PE环境下使用BOOTICEX64:
打开BOOTICEX64软件,如下图显示:

点击红色圈勾选位置向下小三角图标

在弹出下拉菜单中选择你要挂载的分区所在硬盘,注意不要选错了。

点击“分区管理”按钮。

选择你要挂载的ESP分区。

点击“分配盘符”按钮。

点击“确定”按钮完成挂载分区。也可以点击向下小三角图标自由分配新的盘符后点击“确定”按钮完成操作。

注意观察红色圈勾选位置,此时我们的ESP分区已经获取到新的盘符。

打开浏览器,可以看到,ESP分区已经可以正常读写了。
打开刚刚新显示出的ESP分区,将我们之前配置好的CLOVER 安装文件EFI文件夹复制到该当前分区的根目录下就完成了CLOVER的安装工作。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理