页次: 1
我实在弄不清楚到底需不需要这个分区了。
我安装的 Windows 和 Arch 双系统,这是我的磁盘的分区结构:
Number Start (sector) End (sector) Size Code Name
1 2048 2050047 1000.0 MiB 2700 (这个的 label 是 "WINRE_DRV")
2 2050048 2582527 260.0 MiB EF00 EFI system partition
3 2582528 2844671 128.0 MiB 0C01 Microsoft reserved partition
4 2844672 275490815 130.0 GiB 0700 Basic data partition (Windows 的 C 盘)
5 945625088 976773119 14.9 GiB 2700 (联想的恢复分区)
6 275490816 527136767 120.0 GiB 8300 Linux filesystem (根目录)
7 527136768 736851967 100.0 GiB 8300 Linux filesystem (home)
8 736851968 945625087 99.6 GiB 0700 Microsoft basic data (普通的放数据的分区)
今天我调整了根目录所在分区(sda6)的大小,分了点空间给 Windows。我先在 Linux 下缩小了 sda6,再到 Windows 下扩大了 sd4 。前一步没有任何问题,能正常重启进入 Linux,可是后一步重启到 Linux 就有问题了,提示读不了 sda2(依然能启动 Windows)。
我不太看得懂,是不是 sda2 损坏了?这时 Linux 只能进入 emergency 模式。
sda2 (就是 EFI 分区)我是挂载在 /boot/efi 下的:
UUID=B06B-30C2 /boot/efi vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2
我尝试把这一行从 fstab 注释掉之后系统就能正常启动了!(不过照片里的错误还在)。
我已经记不清为什么把 EFI 分区挂载到 /boot/efi,应该是当时安装时跟着 wiki 做的。
问题来了,既然 sda2 损坏了,而不挂载它系统也能启动,我可不可以删掉它呢?会不会影响 Windows?(可是 sda2 现在损坏了 Windows 还是能启动,说明 Windows 不需要它?)。
我重新翻了 wiki 里的相关文章,实在理解不了 UEFI 分区和 GRUB (我现在系统是通过 GRUB 启动的)的关系。UEFI 跟 boot loader/boot manager 是什么关系?
按照 Multibooting_in_UEFI说的,
Since each OS or vendor can maintain its own files within the EFI System Partition without affecting the other, multi-booting using UEFI is just a matter of launching a different UEFI application corresponding to the particular OS's bootloader.
不同的系统把它们各自的 UEFI application 都安装到 efi 分区,然后 UEFI firmware 读取它们启动不同的系统。所以 GRUB 是一种 UEFI application,还是可以替代 UEFI 的东西?
离线
GRUB 是 UEFI application。
报错是因为 I/O 错误。
EFI 分区不能删,但是不需要挂载。不挂载的话,记得更新 grub 时挂一下。
离线
GRUB 是 UEFI application。
报错是因为 I/O 错误。
EFI 分区不能删,但是不需要挂载。不挂载的话,记得更新 grub 时挂一下。
感谢回答,差一点就冲动把它删除了。。。。。原来平时不用挂载的呀
I/O 错误是什么意思,是磁盘损坏了么?为什么我不挂载 sda2 才能正常启动系统?
离线
依云 说:GRUB 是 UEFI application。
报错是因为 I/O 错误。
EFI 分区不能删,但是不需要挂载。不挂载的话,记得更新 grub 时挂一下。感谢回答,差一点就冲动把它删除了。。。。。原来平时不用挂载的呀
I/O 错误是什么意思,是磁盘损坏了么?为什么我不挂载 sda2 才能正常启动系统?
因为你让它挂又挂不上所以进不了系统吧。
你这个 I/O 错误有可能是坏道之类的(因为它只在 sda2 上出现)。
离线
因为你让它挂又挂不上所以进不了系统吧。
你这个 I/O 错误有可能是坏道之类的(因为它只在 sda2 上出现)。
刚在 Windows 下用磁盘精灵检测,EFI 分区开头的 sector 有问题:
(Linux 下说 2050048 是 sector,不是扇区的意思么,上面却叫它 LBA(查了一下是 Logical Block Adressing),而扇区号是 1
最近编辑记录 尹良灿 (2016-03-07 10:04:30)
离线
刚在 Windows 下用磁盘精灵检测,EFI 分区开头的 sector 有问题:
http://dimg.vim-cn.com/9c/9b8da006f00c7 … 13cd00.png(Linux 下说 2050048 是 sector,不是扇区的意思么,上面却叫它 LBA(查了一下是 Logical Block Adressing),而扇区号是 1
是扇区啊。柱面、磁头、扇区,三个值算在一起就是 LBA 了。挺复杂并且原始的。
离线
页次: 1