0

私は、Play で利用できない商用市場向けのアプリケーションを開発しています。また、カスタム ビルドされた特定のターゲット デバイスがありますが、私が作成したものではありません。特定のサードパーティ SDK リソースを SDCard ディレクトリにインストールする必要があります。たったこれだけで、やることは簡単です。

私が直面している問題は、どういうわけか sdcard ディレクトリが読み取り専用でマウントされていることです。実際には SD カードではなく、内蔵ドライブのパーティションであることに注意してください。それは実際にはその時点で rw をマウントしていましたが、何かが変更され、現在は読み取り専用の sdcard ディレクトリで立ち往生しています。

私がこれまでに試したこと:

  1. SDカードのマウントポイントを再マウントしようとしました。機能していません。ルートとしてログインしている場合でも。エラーはありません。

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

  2. /proc/mounts を確認しました。/proc/mounts を見ると、sdcard がマウントされていることがわかります。私が知らないのは、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 カードに書き込めないことを示す多くのエラーがありました。

この時点で私は非常に混乱しています。これを修正する確実な方法を知っている人はいますか?

編集:

今回はさまざまなマウントオプションを試しました

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

これはしばらくの間機能し、いくつかのファイル操作を実行できますが、最終的にはほとんど数分以内に RO に戻ります。

4

2 に答える 2

1

問題を解決することができました。ファイル システムが破損していたため、システムは強制的に読み取り専用に再マウントしました。簡単な修正は、ファイル システムを再作成することでした。

于 2012-06-13T17:09:36.427 に答える
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
于 2012-06-12T21:29:15.810 に答える