あるディレクトリを別のディレクトリにバインドする
On 2月 17, 2021 by admin最初のディレクトリのストレージ容量を拡張するために、あるディレクトリを別のディレクトリにバインドしたい。
Linuxでは、次のコマンドを実行できます。
mount --bind /path/to/directory1 /path/to/directory2
ただし、Androidシェルは「–bind」および「-B」パラメータを理解しません。 fstabでも実行できますが、構文がわかりません。
Samsung Galaxy S(SGS)には/ data / dataが/ datadataにシンボリックリンクされているため、この操作を実行する必要があります。後者は/ datadata 115 MBしかないパーティションに常駐し、その結果、常にいっぱいになります。どこか別の場所からディレクトリをバインドしてスペースを拡張したいのですが。
よろしくお願いします。2日間、いくつかのアイデアを探していました。
コメント
回答
@eldarerathisから-
ありますかbusyboxがインストールされていますか? mount -o bind / path / to / dir1 / path / to / dir2を試しましたか(busyboxバージョンはAndroidでそれをサポートしていると思います)?
回答
フォルダへのシンボリックリンクを試しましたか?これはRootExplorerアプリで実行できますが、費用がかかります。申し訳ありません。
コメント
- シンボリックリンクが勝ちました'ディレクトリを拡張するために機能しません。'あなたがそれを置き換えたいとは思わない' -AFAIKパーツシステムの一部は、実際のパーティションであることに依存しています。
- @MatthewReadシンボリックリンクは、ここでのバインドマウントと同様に機能します。バインドマウントはここでは不必要な複雑さのようです。
- @Gillesバインドマウントについては何も知りませんが、'どのようにを
datadata
パーティション以外の場所に移動すると、問題が発生するのを防ぐことができます。その中の個々のフォルダを外側にリンクすることは機能するかもしれませんが(たとえば、/data/data/com.rovio.angrybirds/
を/sdcard/dataext/com.rovio.angrybirds/
へのシンボリックリンクにする)、それを行うのは面倒です。
回答
コマンドが間違っています。そうではありません:
mount --bind
代わりにこれを試してください:
mount -o bind
完全なコマンドは次のとおりです。
mount -o bind /path/to/directory1 /path/to/directory2
回答
これは直接的な答えではありませんが、目標を達成するのに役立ちます。
アプリ link2sd は、アプリのapk、dex、libファイルをSDカードのパーティションにリンクすることで、内部ストレージを拡張(実際には保存)します。
アプリはルート化された電話で使用するか、連絡することができます開発者に質問してください。彼はとてもフレンドリーです。
アプリ全体がSDカードにインストールされているdata2sdを確認することもできます。
コメント
- I '問題の核心にあるように見えるので、ソリューションに興味があります。ただし、I ' apk、dex、libファイルを移動すると/ datadataの空き容量に影響があるかどうか疑問に思っていますか?
- はい。
ve HTC Desire、内部スペースはわずか147MB、link2sd I 'は300%多くのアプリケーションをインストールできました。唯一の欠点は、アプリケーションのデータがリンクされないことです。これは、場合によっては巨大になる可能性があります。データもリンクしたい場合は、data2sdを試してください。
mount -o bind /path/to/dir1 /path/to/dir2
を試しましたか(busyboxバージョンはAndroidでそれをサポートしていると思います)? 'これに4.0ICSのタグを付けました-ICSの非公式ビルドを実行していますか?mount --bind /directory1 /directory2
に注意してください現在/directory2
にあるファイルを非表示にします。/directory2
が空の場合にのみ使用してください。/directory2
の下にさらにスペースが必要な場合は、最初に/directory1
の下にあるファイルを最初に移動します。