似乎我对在 Banana Pi 等设备上启动 SD 卡映像的工作方式缺乏了解。情况如下。
我有一个 Banana Pi 和一个 Banana Pro。每个设备在插入设备的 SD 卡上都有一些发行版的映像(Banana Pro -> Arch Linux,Banana Pi -> Bananian)。图像可以从这里和这里下载。这工作正常。
但是由于 Banana Pi / Pro 有一个 SATA 端口,如果根系统可以从连接的硬盘驱动器启动,那就太好了。正如可以在此处阅读的那样,这可以非常简单地完成。
但现在到了我挣扎的部分。使用发行版映像刷新整个 4GB SD 卡(甚至更大的 SD 卡)并仅使用 50MB 分区似乎有点浪费。所以我尝试使用较小的 SD 卡。
我创建了一个fdisk
(50MB 大小)的分区,并用于mkfs.vfat -F 16 /dev/sdXX
在分区上创建文件系统。由于parted
检查图像文件时的输出,我将其设为 FAT 16 。
.
在那之后,我登上从图像中partion到/tmp/boot
与sudo mount -o loop,offset=1048576 ArchLinux_For_BananaPro_v1412.img /tmp/boot
。偏移值是分割输出中的起始值。
将文件(script.bin、uEnv.txt、uImage)复制到我的SD卡分区,更改uEnv.txt中的根路径。进行了同步并卸下了 SD 卡。
一切似乎都很好。即使将带有整个映像的 SD 卡上的引导分区与仅带有引导分区的 SD 卡上的引导分区进行比较,它们也是相同的(根据 …
有没有办法在我的文件系统中的任何挂载点上挂载和访问单个分区,或者我必须使用磁盘映像并使用偏移量挂载?
我制作了一个分区图像,dd bs=4M if=/dev/sdb1 of=~/part.img
并尝试将其安装在 /mnt 上mount -t vfat ~/part.img /mnt
。
mount 的输出是一个未知错误 -1