将一个顽固的SD卡目录重新安装回读写

时间:2012-06-12 20:45:09

标签: android

我正在开发一个商业市场的应用程序,在Play上无法使用,我有一个特定的目标设备是定制的,但不是我。需要在SDCard目录中安装某些第三方SDK资源。仅此一点很容易。

我面临的问题是sdcard目录以某种方式挂载为只读。注意,实际上没有SD卡,它是内部驱动器上的分区。它实际上是挂载rw,有些东西改变了,现在我被只读的sdcard目录所困扰。

到目前为止我尝试过:

  1. 尝试重新安装sdcard挂载点。没工作。即使我以root身份登录。没有提供错误。

    mount -o remount,rw / dev / block / mmcblk1p4 / mnt / sdcard

  2. 检查/ proc / mounts。我可以在/ proc / mounts中看到sdcard已经安装了ro。我不知道的是,如果在Android中有一个fstab等价物,那么我更改选项。我被告知vold.fstab是我应该去的地方但是......

    / dev / block / mmcblk1p4 / mnt / sdcard vfat ro,relatime,uid = 1000,gid = 1015,fmask = 0202,dmask = 0202,allow_utime = 0020,codepage = cp437,iocharset = iso8859-1,shortname = mixed,utf8,errors = remount-ro 0 0

  3. 选中vold.fstab。这与/ proc / mount中显示的设备不同。

    dev_mount sdcard / mnt / sdcard 4 /devices/platform/mmci-omap-hs.1/mmc_host/mmc1 dev_mount usbdisk / mnt / sdcard / usbdisk auto /devices/platform/ehci-omap.0 dev_mount extsd / mnt / sdcard / extsd auto /devices/platform/mmci-omap-hs.0/mmc_host/mmc0

  4. 检查启动时的logcat输出。没有任何迹象表明安装有错误,但是我甚至不确定mount / vold是否会向logcat报告。然而,有许多错误表明启动应用程序无法写入SD卡。

  5. 我现在非常困惑。有没有人知道解决这个问题的确定方法?

    修改

    这次我尝试了不同的挂载选项

    mount -w -o remount /dev/block/mmcblk1p4 /mnt/sdcard

    这可以工作一段时间,我可以做一些文件操作,但它最终会在几分钟内恢复到RO。

2 个答案:

答案 0 :(得分:1)

管理解决问题。文件系统已损坏,因此系统强制重新装入只读。简单的解决方法是重新创建文件系统。

答案 1 :(得分:0)

不可否认,这不是在Android上,但我必须安装ntfs-3g并配置fstab因此:

/dev/sda1 /media/mycard ntfs-3g  rw,umask=0000,defaults 0 0 

或使用

安装
mount -t cifs -o uid=1000 /dev/sda1 /media/mycard