使用 SD 卡作为 Beaglebone Black 的外部存储

Using SD card as external storage for Beaglebone Black

按照此处的说明进行操作后:

http://elinux.org/Beagleboard:MicroSD_As_Extra_Storage

这里:

http://electronicsembedded.blogspot.com/2014/10/beaglebone-black-using-sd-card-as-extra.html?showComment=1434418179676#c2761158033046523777

我还有问题。我使用它说要使用的代码并按照说明进行操作,在插入 SD 的情况下加载时我在板上得到 3 个稳定的 LED,并且 Windows 7 根本没有检测到它。

板子在没有插入 SD 的情况下工作正常,我可以通过 SSH 启动和登录并且被 Windows 检测到。

我的uEnv.txt代码如下:

mmcdev=1
bootpart=1:2
mmcroot=/dev/mmcblk1p2 ro
optargs=quiet

而且我还添加到 fstab 文件中:

/dev/mmcblk0p1    /media/card     auto     auto,rw,async,user,nofail  0  0

检查文件系统的一些结果,我的驱动器名为 'BBB_Ext'。这是在没有SD的情况下启动后,然后在启动后将其放入:

root@beaglebone:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          3.5G  1.8G  1.5G  55% /
/dev/root       3.5G  1.8G  1.5G  55% /
devtmpfs        250M     0  250M   0% /dev
tmpfs           250M  4.0K  250M   1% /dev/shm
tmpfs           250M  248K  250M   1% /run
tmpfs           250M     0  250M   0% /sys/fs/cgroup
tmpfs           250M  4.0K  250M   1% /tmp
/dev/mmcblk0p1   70M   54M   16M  78% /media/card
/dev/mmcblk1p1   15G   16K   15G   1% /media/BBB_Ext_

这里是关于 fdisk 的更多细节:

root@beaglebone:~# fdisk -l

Disk /dev/mmcblk0: 3867 MB, 3867148288 bytes, 7553024 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x00000000

        Device Boot      Start         End      Blocks   Id  System
/dev/mmcblk0p1   *          63      144584       72261    c  W95 FAT32 (LBA)
/dev/mmcblk0p2          144585     7550549     3702982+  83  Linux

Disk /dev/mmcblk0boot1: 2 MB, 2097152 bytes, 4096 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mmcblk0boot0: 2 MB, 2097152 bytes, 4096 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mmcblk1: 15.9 GB, 15931539456 bytes, 31116288 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x00000000

        Device Boot      Start         End      Blocks   Id  System
/dev/mmcblk1p1            2048    31115263    15556608    c  W95 FAT32 (LBA)

如有任何帮助,我们将不胜感激。我想因为这是 Linux 相关的,所以这个问题适用于 SO,如果在 SE 中更好,请告诉我。

好的,我相信我已经解决了这个问题(对于关心的人)

查看 fdisk 日志后,我意识到我需要将 fstab 行更改为:

/dev/mmcblk1p1       /media/card          auto       rw     0  0

然后我也将 uEnv.txt 更改为:

mmcdev=1
bootpart=1:2
mmcroot=/dev/mmcblk0p2 ro
optargs=quiet

据我了解,它试图从不存在的磁盘启动,这导致了问题。此外,我没有将 fstab 修复为驱动器的正确端口,这可以在 fdisk 检查的底部看到:

        Device Boot      Start         End      Blocks   Id  System
/dev/mmcblk1p1            2048    31115263    15556608    c  W95 FAT32 (LBA)

对于我得到的,uEnv.txt 应该是(保存在您的 SD 卡上):

mmcdev=1
bootpart=1:2
mmcroot=/dev/mmcblk1p2 ro 
optargs=quiet

并在 /etc/fstab

中添加下行
/dev/mmcblk0p1    /media/data      auto   rw   0 0