Dropbox

前の記事でLG Optimus L9 P769をルート化したのは内蔵ストレージが足りなくなり、解決するためには小細工が必要になったためです。その顛末を書いておきます。

[ Androidの/sdcardはSDカードでは無いかも? ]
メーカー、ファームウェアによって違うようですが、/sdcard, /mnt/sdcardのような如何にもSDカードであろう場所が実は内蔵ストレージだったりします。最初、これが分からず16GBのSDカードを入れているにも係わらず、よく見ると本体カメラで撮影した写真だけが入っていて??な状態でした。

Jelly BeanなOptimus L9を例にすると、/storage/sdcard0 (/sdcardにもリンクされています)は、実際には内蔵ストレージの一部を指しています。本物のSDカードは /storage/external_SD (/storage/sdcard0/external_sdにもリンク)にマウントされています。

おそらく、これはSDカード無しで本体を販売してもSDカードの存在を期待するアプリに問題が出ないようにしているのでしょう。本体付属のカメラ・アプリなどは、事情が良く分かっていてちゃんと本物のSDカードに写真を保存してくれますが、大半の追加アプリケーションでは内蔵ストレージをSDカードのつもりで使ってしまいます。

また、導入したアプリケーションをSDカードに追い出すような仕組みも、この構成のデバイスだと機能しません。

手元のデバイスを調べて見たところドコモ版のサムソン・ノートも同様な仕組みになっていました。ただしノートの場合は内蔵ストレージが潤沢に載っているので全く気づきませんでした。

[ 大きなフォルダーだけ追い出した ]
ルート化後、最初は/sdcardが本物のSDカードに見えるようにしようと思いましたが、面倒なのでとりあえず/sdcard上の大きなフォルダーを/sdcard/exterbal_sdに持っていくことにしました。

調べてみるとEye-Fiフォルダーに800MBほどの写真が溜まっていたのが1.8GBしか無い内蔵ストレージを圧迫していました。このフォルダーをまずは手軽にファイラーアプリケーションのFxで/stroage/sdcard0/から/stroage/external_SD/にコピーしました。次に/storage/sdcard0/Eye-Fiを削除し代わりにスタティック・リンクを/stroage/external_SD/Eye-Fiから張ります。ところがbusybox lnコマンドが/storage/sdcard0/上では機能しません。

/storage/sdcard0/の実体はfuseドライバーというもので、どうもこの上ではlnコマンドが効かないようです。実は/storage/sdcard0/のデータは別のところにあります。Jelly BeanなLG Optimus L9の場合は/data/media/というフォルダーです。ここにスタティック・リンクを貼ってやります。ln -s /storage/external_SD/Eye-Fi /data/media/Eye-Fi という感じでOKです。

他にもEvernoteやらFoursquare、地図やら辞書など大きなデータがりますが当面の問題は回避されたので、これで良しとします。

Trackback

only 1 comment untill now

  1. RT @nkozawa: LG Optimus L9 P769の内蔵ストレージが足りない: 前の記事でLG Optimus L9 P769をルート化したのは内蔵ストレージが足りなくなり、解決するためには小細工が必要になったため… http://t.co/WCH61O61kr

Add your comment now