拿到一个8GB的ubuntu 18.04 DD档, 写入到Sandisk 8GB eMMC后,不引导, 原因为eMMC实际容量只有7.28G左右,导致分区异常,不能引导。由于分区表原因,BIOS不加载eMMC引导项。
- 使用parted的resizepart先将emmc分区2(/dev/mmcblk0p2)调整到正确范围,如7815MB。此分区在parted显示为Partition Table:dos, 而BIOS为只有UEFI模式,因此需要修改为gpt分区.
- 在windows下使用diskgen将emmc转换为gpt分区。
- 现在BIOS能加载eMMC做为引导项,但还不能正确引导eMMC中的ubuntu.因为eMMC大小和文件系统大小不符:The filesystem size(according to the superblock) is 1892608 blocks. The physical size of the device is 1844471 blocks.
- e2fsck -f /dev/mmcblk0p2 忽略错误强制检测
- resize2fs /dev/mmcblk0p2 调整大小后一切正常,提示:Resizing the filesystem on /dev/mmcblk0p2 to 1844471 (4k) blocks. The filesystem on /dev/mmcblk0p2 is now 1844471 (4k) blocks long.
- 重开机,正常引导Ubuntu 18.04