最近 win10更新老是失败,提示“我们无法更新系统保留的分区”
原因是EFI分区空间不够了。
之前买电脑的时候商家给硬盘分的EFI分区是100MB,后来虽然我重装过很多次系统,但是这个分区一直没动过,后面装macos双系统,也没有去调整EFI分区的大小。
知道原因了就想办法解决问题。
重新分区再重装系统是不可能的,毕竟双系统装起来又要费不少时间。
我的解决思路如下
第一步先压缩一块空闲空间出来
使用win10自带的磁盘管理工具,选一个剩余容量较大的分区,压缩卷,使用大小500MB(其实200MB应该就足够了)
第二步备份EFI分区文件
使用diskgenius工具将EFI分区的文件全部复制出来备份
删除原有的EFI分区
同样使用diskgenius工具,将原有的EFI分区删除
新建EFI分区,并备份的EFI文件复制到新的EFI分区下
使用diskgenius工具,选中我们刚才压缩出来的那500MB空闲空间,再点击菜单栏的分区》建立ESP/MSR分区选项,新建一个ESP分区(就是我们要的EFI分区),格式化为FAT32格式,保存更改。
将备份的EFI分区文件复制到新的EFI分区上
windows下可以仍然使用diskgenius工具复制文件到EFI分区上,或者你可以查询下别的方法。
如果你只是安装了win10单系统,到这一步就可以了, 后面的不用看了。
因为我之前装macos还有个u盘引导,所以我用u盘里的clover引导进我之前装的macos操作的
mac下复制文件到EFI分区也很简单
sudo diskutil list
//查询下当前磁盘的分区信息
sudo diskutil mount disk1s1
//挂载硬盘上的EFI分区,注意这里的disk后面的数字根据实际的来写,根据你刚才查询到的分区信息显示的你的硬盘上EFI分区是哪个,就写对应的磁盘分区,不一定是disk1s1
sudo diskutil mount disk3s2
//挂载u盘的EFI分区,这一步同样的,磁盘具体是哪一个,以刚才查询到的信息为准
这个时候直接就可以在mac中打开EFI分区了,将我们备份的EFI分区文件复制新的EFI分区上
//注意,如果你开始备份的EFI分区里包含有clover的启动文件,其实就没必要挂载u盘的EFI分区了,我是因为备份的EFI分区有点问题,所以只好再从之前制作的mac安装盘再复制一份clover出来
还有一点想说明下,EFI分区最外面是一个EFI文件夹,再里面才是各个系统启动目录,我一开始把Clover啊,Microsoft啊这些文件夹都放到根目录下了, 启动的时候老是引导不了mac,后来发现新建一个EFI文件夹,把其他文件夹都放入到EFI文件夹中,这才解决问题。
新建Clover引导项
win10单系统的不用看此处内容。
重启电脑启动到win10下,使用bootice工具,新建UEFI引导。
有些时候EFI分区是隐藏的且没有分配盘符的,我们先使用bootice的分区管理选项,给EFI分区分配一个盘符,这样我们后续才好继续操作。
新建UEFI引导时,点击新建,浏览EFI分区,找到clover目录下的cloverx64.efi文件,引导名字可以随便取,调整启动项的顺序,将我们新建的引导项上移到最上面,然后保存当前的启动设置,重启系统,就可以从clover引导启动啦,熟悉的win10和mac双系统引导回来了。
文章写的有些啰嗦,总结一句话,EFI分区不够了,删除原有EFI分区,重新分个大点儿EFI分区,200MB以上,将原来EFI分区文件全部复制到新的EFI分区上即可。