This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM8148EVM板SD卡丢失,Virtual Box 虚拟机Ubuntu不识别SD卡



TI 工程师 您好!

我在用DM8148EVM时,SD卡丢失了,想重新做一个SD卡启动。在Virtual Box虚拟机下的Ubuntu不识别 SD卡。用 Sudo fdisk -l命令  或者是 sudo  df -Th命令  都没有找到SD卡的信息。

我已经安装TI在Wiki上提供的教程操作,设置了USB设备。在VM Ware 上面 做同样的事情也是没发现SD卡信息。

SD卡丢失了怎样重新创建一个:http://processors.wiki.ti.com/index.php/DM814x_EZ_5.03_Software_Developers_Guide#How_to_create_an_SD_card

在VirtureBox下Ubuntu怎么读取SD卡:http://processors.wiki.ti.com/index.php/How_to_Build_a_Ubuntu_Linux_host_under_VirtualBox#How_to_Read_a_USB.C2.A0SD.C2.A0Card_Reader_in_VirtualBox

Virtual Box在Win7下面要把Oracle_VM_VirtualBox_Extension_Pack-4.2.10-84104 装上,才能操作USB。

以上我都已经做了相应操作。

另外我尝试了用共享文件的方式把SD卡挂载到Ubuntu里面,结果运行./mksdboot.sh时提示,它不是一个块文件。

root@thomas-pc:/usr/local/ezsdk/bin# ./mksdboot.sh --device /dev/sda2 --sdk /usr/local/ezsdk

************************************************************

*         THIS WILL DELETE ALL THE DATA ON /dev/sda2        *

*                                                          *

*         WARNING! Make sure your computer does not go     *

*                  in to idle mode while this script is    *

*                  running. The script will complete,      *

*                  but your SD card may be corrupted.      *

*                                                          *

*         Press <ENTER> to confirm....                     *

************************************************************

ls: cannot access /dev/sda2?: No such file or directory

dd: writing `/dev/sda2': No space left on device

2+0 records in

1+0 records out

root@thomas-pc:/usr/local/ezsdk/bin# ./mksdboot.sh --device /dev/sda2 --sdk /usr/local/ezsdk

root@thomas-pc:/usr/local/ezsdk/bin# ./mksdboot.sh --device /dev/sda2 --sdk /usr/local/ezsdk

************************************************************

*         THIS WILL DELETE ALL THE DATA ON /dev/sda2        *

*                                                          *

*         WARNING! Make sure your computer does not go     *

*                  in to idle mode while this script is    *

*                  running. The script will complete,      *

*                  but your SD card may be corrupted.      *

*                                                          *

*         Press <ENTER> to confirm....                     *

************************************************************

ls: cannot access /dev/sda2?: No such file or directory

dd: writing `/dev/sda2': No space left on device

2+0 records in

1+0 records out

  • 你好,

    插上sd卡,不插sd卡时候,分别ls /dev看一下。多出来的设备就是你的sd卡的设备名称,看一下是什么,不一定是sda2。

  • 您好!  SD卡插入和拔出,用 ls /dev命令查看结果一样。

    SD卡在Win7下是好的,我把它格式化成FAT格式。

    但在VMware虚拟环境     Removeable Device里面有 RealTek USB 2.0 Card Reader   并且 点 Disconnect(Connect to the  host ),Win7出现SD卡,  再点 Connect(Disconnect from host)Win7 SD卡消失。 

    不理解是什么原因会出现这种情况,如果用SD卡读卡器,Ubuntu也不识别。

    (您好! 我这边是TI在福建代理商的FAE,在给客户调一个板子,客户把SD卡弄丢了,板子电源也已经弄坏。我已经把硬件修好了。软件这部分我不熟悉花了比较多时间还没处理好。)

    DM8148EVM板平台搭建遇到的问题.pdf
  • 您好!  SD卡插入和拔出,用 ls /dev命令查看结果一样。

    SD卡在Win7下是好的,我把它格式化成FAT格式。

    但在VMware虚拟环境     Removeable Device里面有 RealTek USB 2.0 Card Reader   并且 点 Disconnect(Connect to the  host ),Win7出现SD卡,  再点 Connect(Disconnect from host)Win7 SD卡消失。 

    不理解是什么原因会出现这种情况,如果用SD卡读卡器,Ubuntu也不识别。

    (您好! 我这边是TI在福建代理商的FAE,在给客户调一个板子,客户把SD卡弄丢了,板子电源也已经弄坏。我已经把硬件修好了。软件这部分我不熟悉花了比较多时间还没处理好。)

    DM8148EVM板平台搭建遇到的问题.pdf
  • 虚拟机有时候是不能自动识别USB设备的,你需要做如下操作(以Virtual Box为例)

    设备--》 分配USB设备--》选择SD读卡器

    这样应该就可以在ls /dev下看到该USB设备了。

    你也可以用lsusb指令或者用dmsg指令来查看USB设备的识别状况

  • Dear  Eason,您好!

    会出现以下提示:

    不能分配 USB设备 ChipsBnk USB Reader [0100] 到虚拟电脑 Ubuntu_China.

    USB device 'ChipsBnk USB Reader' with UUID {ac0fea87-2274-43d4-a172-bf5128e8af29} is busy with a previous request. Please try again later.

    返回 代码: E_INVALIDARG (0x80070057)
    组件: HostUSBDevice
    界面: IHostUSBDevice {173b4b44-d268-4334-a00d-b6521c9a740a}
    被召者: IConsole {db7ab4ca-2a3f-4183-9243-c1208da92392}

    不知道是什么原因

  • Hi ,

    你的USB设备能在windows下正常使用吗

    感觉像是被占用这所以不能切到ubuntu虚拟机下使用的样子

  • 最后问题解决了,可能是我电脑的原因,反正用虚拟机不行。直接用U盘 安装了双系统。最后总结一下,丢失SD卡问题解决步骤:

    步骤1:安装DM8148 Linux开发环境,先安装G++交叉编译环境Sourcery_G++, 再安装ezsdk 。

                   另外在ubuntu环境下, 默认的shell要改为 dash,  命令:  sudo dpkg-reconfigure  dash 弹出对话框选择“NO”

                   详情参考:http://www.fedevel.com/welldoneblog/2011/09/c6a816x-installation-host-machine-linux-kernel-compilation/

    步骤2:进入ezsdk安装的目录 /home/thomas/ti-ezsdk_dm814x-evm_5_05_02_00/bin,(我把EZSDK安装在: /home/thomas/ti-ezsdk_dm814x-evm_5_05_02_00 )你会看到一个脚本文件mksdboot.sh。这样其实运行这个脚本就可以产生SD卡镜像了。运行命令如下:

    sudo ./mksdboot.sh --device /dev/sdb --sdk /home/thomas/ti-ezsdk_dm814x-evm_5_05_02_00/

    这样接下去,终端会显示一系列执行过程的字符,注意如果有卡住的,也会提示你用什么命令操作,知道出现 “completed!”,就成功了。

    终端提示内容:

    Disk /dev/sdb: 490 cylinders, 255 heads, 63 sectors/track
    sfdisk: ERROR: sector 0 does not have an msdos signature
    /dev/sdb: unrecognized partition table type
    Old situation:
    No partitions found
    New situation:
    Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
    Device Boot Start End #cyls #blocks Id System
    /dev/sdb1 * 0+ 4 5- 40131 c W95 FAT32 (LBA)
    /dev/sdb2 5 489 485 3895762+ 83 Linux
    /dev/sdb3 0 - 0 0 0 Empty
    /dev/sdb4 0 - 0 0 0 Empty
    Successfully wrote the new partition table
    Re-reading the partition table ...
    If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
    to zero the first 512 bytes: dd if=/dev/zero of=/dev/foo7 bs=512 count=1
    (See fdisk(8).)
    Formating /dev/sdb1 ...
    Formating /dev/sdb2 ...
    mke2fs 1.41.11 (14-Mar-2010)
    Image Name: Execute uImage.bin
    Created: Mon Apr 22 17:10:19 2013
    Image Type: ARM Linux Script (uncompressed)
    Data Size: 290 Bytes = 0.28 kB = 0.00 MB
    Load Address: 0x00000000
    Entry Point: 0x00000000
    Contents:
    Image 0: 282 Bytes = 0 kB = 0 MB
    Copying u-boot/mlo/uImage on /dev/sdb1
    unmounting /dev/sdb1
    Extracting filesystem on /dev/sdb2 ..
    Creating matrix-gui symbolic link...unmounting /dev/sdb2
    completed!