0

私の Samsung Note 10.1 では、別のユーザーデータ パーティションをマウントできるようにしたいと考えています。私の目標は、init.rcスクリプトを変更して起動時にこれを実現することです。これは、すべてのファイル システムをセットアップし、ユーザーデータ、システムなどのパーティションをマウントするように見えるためです。たとえばmkdir /data 0771 system system、userdata パーティションのマウント ポイントをセットアップするように聞こえる行があります。userdata パーティションは block device に対応します/dev/block/mmcblk0p12

ここで、 をマウントする代わりに、デバイスに挿入された µSD カードに配置したmmcblk0p12のイメージをマウントしたいと考えています。mmcblk0p12µSD カードは、ブロック デバイス経由でアクセスできます/dev/block/vold/179:17。これは、最初に µSD カードをマウントし、次にイメージを µSD カードにマウントする必要があることを意味します。

しかし、これは私が失敗するところです。後でイメージをマウントする方法は言うまでもなく、μSD カードを にマウントする方法がわかりinit.rcません。この行を何度も追加しましたmount -t ext4 /dev/block/vold/179\:17 /mnt/extSdCardが、ブート ループが発生するだけです。

それで、誰もこれを行う方法を知っていますか?

EDIT1: どうやらパーティションは にマウントされるようなfstab.sdmk4x12ので、行を追加しました/dev/block/vold/179\:17 /mnt/extSdCard ext 4 noatime,nosuid,nodev,discard,noauto_da_alloc,journal_async_commit,erros=panic wait,check。残念ながらこれは機能しませんでしたが、カーネルログからCannot mount filesystem on /dev/block/vold/179\:17 at /mnt/extSdCard.

/dev/block/mmcblk1p1EDIT2: μSDカードのパーティションであるを使用しないのは愚かです。fstab.sdmk4x12このようにして、ファイルを変更して µSD カードをマウントできるようになりました。

EDIT3:μSDカードをマウントできた後、イメージをマウントする方法の問題が残ります。userdata パーティションをマウントする行を変更しました。この行は EDIT1+2 の行と同じですが、イメージ/storage/extSdCard/userdata.imgを使用して にマウントし/dataます。しかし、どうやらイメージのマウントに失敗していると思います。デバイスは起動しますが、ユーザーデータ パーティションが破損していることを示すエラーが表示されます。また、リセットするオプションも提供されますが、もちろんこれはユーザーデータ パーティションにのみ影響し、再起動するとすぐにイメージを再度マウントしようとして失敗し、このエラーが再び表示されます。

4

1 に答える 1

0

回避策を見つけました。イメージをマウントしようとする代わりに、すべてのファイルを から/dataµSD カードのパーティションにコピーし、パーティションを のようにマウントし/dataましたfstab.sdmk4x12(つまり、/dev/block/mmcblk1p1としてマウント/data)。すべてのアプリなどが µSD カードのパーティションに保存されます。

于 2016-03-02T15:03:37.863 に答える