******************質問の主な内容
数ヶ月前に、adb pushコマンドの実行中に誤ってデバイスを切断し、30GBを超える歪んだファイルを含むフォルダが残りました。
Androidのファイルマネージャ(RootExplorer、Estrongsなど)は間違ったフォルダを削除できません。
私はadb-shell環境からファイルを削除し、Googleが見つけたさまざまな方法、Androidデバイスのbusyboxターミナルプログラムまで何度も試しましたが、何も機能しません。現在の状況は、cdコマンドを使用してフォルダに入ることができるということです。ファイル名パラメーターを指定したrmコマンドは、エラーを報告しません。 inumパラメーターを持つrmコマンドが実行されます(lsコマンドの出力から)。コンテンツやAndroidのスペースステータスはすべて変更されていません。
サンプルコマンドプロンプト(adb)コードスニペットは次のとおりです。
C:\Users\14520>adb shell
c2q:/ $ cd /sdcard/shit
130|c2q:/sdcard/shit $ cd $(find -inum 11939)
c2q:/sdcard/shit/闊 $ ls -il
total 3009874
36369 drwxrwx--- 3 root everybody 3488 2021-09-07 23:27 2001-00-鐣欎綇杩欎竴鍒荤郴鍒?-5[瀛旈泙寤婃繁椋為摱鑺増][WAV]
34351 drwxrwx--- 3 root everybody 3488 2021-09-07 23:29 2001-00-鐣欎綇杩欎竴鍒荤郴鍒?-10[瀛旈泙寤婃繁椋為摱鑺増][WAV]
#...
c2q:/sdcard/shit/闊 $ find -inum 3488 -exec rm -rf {} \;
c2q:/sdcard/shit/闊 $ ls -il
total 3009874
11946 -rw-rw---- 1 root everybody 253384 2020-05-21 20:04 mgsvtpp.[v4.0.6].zip
39450 drwxrwx--- 8 root everybody 3488 2021-09-07 23:36 銆傚師澹板甫
35775 -rw-rw---- 1 root everybody 1089 2020-04-20 21:30 鏃犲嵃鑹搧.lnk
35826 -rw-rw---- 1 root everybody 2277719590 2019-03-11 12:06 缇ゆ槦.-.[鎽囨粴涓浗涔愬娍鍔沒.婕斿敱浼?(DVDRip)_9522f.mkv
#...
c2q:/sdcard/shit/闊 $
このコードスニペットのフルスクリーンショット 説明: inum が 11939 のフォルダーは、無効なフォルダーの最上位レベルです。
電話をリセットするのは費用がかかりすぎて今はやりたくないので悪い考えです。
ここに別の方法がありますか?誰もがこの問題を解決するのに役立ちます(他のデータを失うことなく歪んだフォルダを削除した場合)、彼にコーヒーを買うことができます。
ここにいるすべての友達に感謝します。 (私の英語力があまり良くないかもしれませんので文法問題があればご了承ください)
******************私が忘れた言葉を追加したい場合
・「rm with FOLDER_PATH」と「RM with FOLDER_INODE_NUMBER」を試しましたが、実行後に「見つかりません」を返し、何の効果もありません(質問する前にこれを見つけましたが、サンプルコードに追加するのを忘れました)。
# sample example for the Two usages of command “rm” I used refered above
# rm with folder_name
rm -rR NAME
# rm with inode_number, 11939 is inode_number
cd $(find -inum [11939] )
find -inum 11939 -exec rm -rf {} \;
·私が知っているすべてのAndroidアプリは、ルートなしで間違ったフォルダを削除することはできません。・壊れたフォルダは外部ストレージではなく内部ストレージにあります。・機器モデルはSamsung Note20 Ultra 12+512Gです。ルーティング時にデータと一部の機能が失われる可能性があります。パーティションをフォーマットしたくない理由は、バックアップする必要がある504Gファイルが多すぎるためです。
******************おおよその暫定結論
現在の状況と情報は、root権限なしで間違ったフォルダを削除するために「rm」コンソールコマンド(パスまたはinode-numberを指定するかどうか)を使用することが不可能であることを証明します。パーティション全体(504Gファイルを含む)のみをバックアップしてフォーマットできました。他のデータを失うことなく歪んだフォルダを削除する方法があるかどうかお問い合わせしたいのですが、そのような方法はないようです。
しかし、私は最近stackoverflowにあまり興味を持っていなかったので、私はあなたのメッセージに時々答えなかった。申し訳ありません。
残念ながら、他の方法がない場合は、別の日にパーティション全体(504Gファイルを含む)のみをフォーマットできます。全体的に私を助けようと努力してくれた皆さんに感謝します。
答え1
簡単に走ることができますかrm -rf BAD_FOLDER
?
それでも問題が解決しない場合は、次の2つのオプションがあります。
デバイスをルーティングできる場合いいえデータパーティションを破壊します(多くの最新デバイスデータの削除これを行うときは)ルーティングして実行してください
e2fsck
。フォルダが実際に破損する可能性があります。デバイスをルートできない場合、すべてをバックアップそして、工場初期化を実行すると、ユーザーパーティションがフォーマットされ、問題が解決されます。