页次: 1
安装操作系统时,EFI分区只有100m,arch更新后面没有多余空间,前几天win10自动更新提示更新失败然后直接重启,重启提示 error: file '/EFI/Microsoft/Boot/bootmgfw.efi' not found. 我猜测是EFI分区满了导致win10更新写入失败,还能进入Arch,问一下现在有什么方法能修复win10的引导吗,还有把efi分区扩容一下?
离线
补充一下,系统是win10和Arch双系统,当时同一天装的,21年七月份。
硬盘一块固态,安装的时候先安装win10,100m的EFI和16m的分区是安装win10自动创建的,然后安装Arch,启动引导也是选择100m的分区,其他三个分区都是300G左右,一个win10,一个Arch,一个存数据的分区。
Arch每次更新内核EFI分区慢慢在减少,sudo pacman每次更新提示了空间不足的错误或者警告,两天前win10一次更新就出现上述错误。
离线
大概拿 gparted 扩一扩就好?另一个办法就是不把内核放到 EFI 分区上,比如你用 grub 引导的话,就可以把 /boot 放到任何 grub 能读取的分区上。
至于修复 Windows 引导,这个我不会。
离线
用 Win PE 可以修复引导,你可以试试优启通或微 PE 工具箱。具体方法在我这篇博客的末尾:https://cyrusyip.org/post/2021/09/28/install-archlinux/#%E4%BF%AE%E5%A4%8D-windows-%E5%BC%95%E5%AF%BC 。
我之前扩大过 EFI 分区,具体步骤不记得了,大概是这样:备份 EFI 分区的文件、缩小 EFI 分区隔壁的分区、把多出的空间加到 EFI 分区。
建议先扩大分区再修复引导。
最近编辑记录 Cyrus Yip (2022-01-15 20:26:00)
离线
在windows分区内: /path_to_windows10/Windows/Boot/EFI 内有efi引导的备份文件,扩容efi分区后可以手动复制过去
离线
感谢几位大佬的方法,当前在我用了4楼的方法,用Gparted扩展EFI分区,最后一步提示
扩大文件系统至整个分区
使用libparted
libparted 3.4
GNU Parted 无法调整这个分区为这样的大小。我们正为此努力!
然后EFI分区有1.1G,但是有1G没有分配,请问一下这个应该怎么解决啊
离线
图片信息大概这样
最近编辑记录 zevelLong (2022-01-15 23:02:47)
离线
好奇怪啊,你试试备份 EFI 分区文件、删除分区、重建分区、把文件放回去。
离线
面临同样的问题,期待楼主的结果。
离线
感谢几位大佬的方法,当前在我用了4楼的方法,用Gparted扩展EFI分区,最后一步提示
扩大文件系统至整个分区
使用libparted
libparted 3.4
GNU Parted 无法调整这个分区为这样的大小。我们正为此努力!然后EFI分区有1.1G,但是有1G没有分配,请问一下这个应该怎么解决啊
我今天已经试过了,将EFI分区的文件全部备份出来,直接把这个分区卸载后格式化成 fat32的格式。然后执行以下几步:
--4.将扩容的EFI分区挂载到/boot 直接在终端 mount /dev/sda1 /boot(假设你的EFI分区是/dev/sda1)
--5.将原先备份的boot文件下的内容复制到扩容后的/boot文件里
--6.修改/etc/fstab文件,将扩容后的EFI分区UID修改一下(格式化后貌似分区UID变了,我一开始没有修改UID,结果导致ARCHLINUX引导时出错)
--7.重新配置grub文件 sudo grub-mkconfig -o /boot/grub/grub.cfg
--8.修改完毕,重启后试试看。
最近编辑记录 lessonj (2022-01-18 22:06:53)
离线
感谢楼上的回复,我是刚刚才修好的,一开始我也是按这么做的做了,直接格式化然后复制文件,然后忘记重建grub了,电脑直接就打不开了。最后还是重装了win10,安装的时候在EFI分区前留了1G未分配空间,然后在win10上用DiskGenius将EFI扩容。
后面在用U盘做一个arch安装盘,重新生成一下 /etc/fstab文件,然后重建grub,不用重新安装Arch
5楼的方法是最快修复windows,直接把那个文件复制过去能用的
最近编辑记录 zevelLong (2022-01-19 14:39:33)
离线
页次: 1