Androidでe2fsckを実行するには、マウントされていないパーティションで「adbシェル」を取得できませんか?[複製]

Nov 30 2020

Win10でHuaweiP9にアクセスしadb、シェルを使用できますが、それは電話をOSで起動した場合です。ファイルシステムスキャン(e2fsck)を実行したいのですが、そのためにマウントされていないパーティションが必要です。

誰かがをe2fsck使用して彼の電話で回復から実行されていたスレッドを読みましたadb shell

私が使用して回復に電話を起動する場合はadb、私が取得/再起動します/工場出荷時設定へのリセットをキャッシュをワイプメニューではなく、携帯電話はPC(上で、アクセス不能ですadbfastboot)。電話を介して、adbまたは電話で直接ブートローダーに電話を起動します。adbまたはを介してアクセスすることもできませんfastboot。シェルはAndroidの起動時にのみアクセスできるようです。

何か案は?

回答

1 IrfanLatif Dec 02 2020 at 13:43

通常、ファイルシステムチェックを手動で実行する必要はありません。Androidは、ファイルシステムをマウントする前に、起動のたびにこれを実行します(ref)。外部ストレージの場合も同様です(この回答を参照)。ただし、例外が存在する場合があります。

「一部のシステムイメージには、ライセンス上の理由でe2fsckがありません(最近のSDKシステムイメージなど)。これらを検出して、チェックをスキップしてください。」

したがって、デバイスに存在する/system/bin/e2fsckかどうか(または/system/bin/fsck.f2fs該当するものは何でも)を確認できます。または、logcat再起動を繰り返した後、ファイルシステムチェックが実行されたかどうかを確認します(通常はログインvoldまたはfs_mgrログ)。

を使用して電話をリカバリで起動すると、adbメニューに[再起動]、[出荷時設定へのリセット]、[キャッシュのワイプ]が表示されますが、PCでは電話にアクセスできません(adbまたはを介してfastboot)。

OEMが提供する在庫回復を開始します。ただし、ターミナルエミュレータでコマンド(を含むfsck)を実行adb shellするには、カスタムリカバリ(TWRPなど)が必要です。カスタムリカバリをフラッシュするには、多くのデバイス(最近のHuaweiデバイスのすべてを含む)でサポートされていないブートローダーのロックを解除する必要があることに注意してください。
fastbootプロトコルはブートローダーモード(サポートされているデバイス上)でのみ使用できるため、ここでは関係ありません。

デバイスでファイルシステムチェックが実行されていないことが確実であるが、それが必要な場合(ファイルシステムエラーのため)、/dataファイルシステムを再作成する出荷時設定へのリセットを実行できます。