Android自体でSDカードのエラーを確認して修正しますか?


42

SDカードが「破損」する場合があり、これにより多くの読み取り/書き込みエラーが発生します。通常、SDカードをWindows 7に接続して[エラーチェック](ドライブを右クリック> [ツール]> [エラーチェック])オプションを選択すると、破損が検出され、修正されます。

ドライブエラーについてSDカードをチェックし、Android自体から同じものを修正するためのツールやアプリはありますか?

また、busyboxがインストールされたルート化されたfroyoを使用していることにも言及したいと思います。


あなたがやって、ターミナルアプリで試してみましたがsu、実行しますか/system/bin/fsck.exfat
イジー

@Izzyは私を与えるNo such file or directory
イルファン

別の場所をチェックしてください/system/xbin。代わりにあるのでしょうか?試してみてくださいcdディレクトリにINGの、そしてls fsc*利用できるかどうか確認します。どこかにある必要があります:)
イジー

1
まさに。Busyboxは可能な限りスリムにしようとします。「マンマウント」でおばさんGoogleを試してみてください。正常に動作します。不明な点がある場合は、そこにコメントしてください(または、チャットで私に会ってください。今後数時間は利用できませんが、他の知り合いのメンバーがあなたを助けてくれます:)
Izzy

2
あなたが繰り返しあなたのSDカードにエラーがある場合、あなたはそれが本当に使用して述べた容量であることを確認する必要がありH2testw(ドイツ語と英語でリンクドイツ語のみで、ソフトウェアを。私はこれが逆に外見にもかかわらず、公式ホームページであると考えています)。不良SDカードは自動的に破損します。
コードブリン

回答:


17

あなたは、ルートの助けと端末エミュレータ(例えばでこれを修正することができますAndroidのターミナルエミュレータ使用して、その代わりに、(あるいはadb shell)仕事をするためのバイナリと呼ばれfsck、通常のいずれかにあります/system/xbin/system/bin。時々 、あなたはそれの特別なバリエーションを必要とします、たとえば、呼び出されるfsck.exfatなどの可能性があります。まず、正しいバイナリが見つかることを確認しましょう。

cd /system/xbin
ls fsc*

見つからない場合は、で繰り返し/system/binます。ここで最初に見つかったと仮定し、単純に呼び出されますfsck(そうでない場合は、それに応じて以下を調整します)。

fsck「Linuxコア」に由来するように、構文についてはマニュアルページを参照できます。Androidで機能しないオプションもありますが、最も基本的なオプションが必要です。詳細については、リンクされたマニュアルページを参照してください(またはLinux VMを実行して、man fsckそのページが消えた場合に使用してください)-ここでは基本に固執します。

まず、SDカードがバインドされているデバイスを見つける必要があります。それがマウントされています場合は、mountコマンドは、私たちを支援します。

mount

基本的にはこれで終わりです。出力を確認し、SDカードの場所を確認してください。通常、これはを使用するものですvoldが、デバイスによって異なります。出力には次のようなものが含まれる場合があります/dev/block/vold/179:17 on /mnt/storage/sdcard-その場合、私の見積もりの​​最初の部分はデバイスです。「ドライブ」を修復するには、最初にアンマウントする必要があります。これは、設定メニューから行うことができます。または、ターミナルにいるので、

umount /dev/block/vold/179:17

これで、修復作業に進むことができます。基本的な構文は次のとおりです。

fsck [options] [-t fstype] <filesystem> [fsoptions]

そこで、最初に最も簡単なアプローチを試して、fsckすべてを把握することを希望します。

fsck -C -r /dev/block/vold/179:17

基本的にどの手段:ショーの進行状況(-C)、そして常に修理(-r)に上の任意のエラーをユーザーに尋ねます/dev/block/vold/179:17。それでも解決しない場合は、リンクされたマニュアルページで詳細なオプションを確認してください。


4
またcd、必要に応じて、現在の作業ディレクトリを使用してls /system/bin/fsc*ls /system/xbin/fsc*そこからステップを保存することもできます。で2つを1つのコマンドに結合することもできls /system/xbin/fsc* /system/bin/fsc*ます。
eldarerathis

1
いいえ、私は物事を混同しません。私が気付いていなかったのは、この質問は実際にはSDカードに関するものだということです。ええ、私は実際にいくつかのことを混乱させました。厳密に言えば、SDカードをextとしてフォーマットすることもできるので、そうする人に当てはまるかもしれません。
ライライアン

1
要点。「平均的なユーザー」(または「疑わしい」)は、少なくとも相互運用性のために、FATに固執しているかもしれませんが。少なくともExtFSが大部分のOSで簡単、デフォルトで追加のドライバーを必要とせずサポートされるまで(通常はWindowsが落とし穴であると考えられます)。
イジー

1
この答えをありがとう、私はそれが私が必要なものだと思います。でエラーが発生しましたumount。rootになる必要がありますか?
オーガニックマーブル

1
@OrganicMarbleはい、もちろん、上記のすべてのコマンドについては、そうしないとデバイス(すべてで始まる/dev)にアクセスできません。
イジー

3

これに感謝、それは私の日を救います:)

root@android:/ # mount | grep -i sdcard
/dev/block/nandk /mnt/sdcard vfat rw,relatime,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp437,iocharset=ascii,shortname=mixed,errors=remount-ro 0 0

root@android:/ # /system/bin/fsck_msdos -y /dev/block/nandk

この回答を投稿してくれてありがとう、それは私を非常に助けてくれました。受け入れられた回答から、vfatファイルシステムを修正する方法を知りませんでした。賛成。
オーガニックマーブル

2

あなたが繰り返しあなたのSDカードにエラーがある場合、あなたはそれが本当に使用して述べた容量であることを確認する必要がありH2testw(ドイツ語と英語でリンクドイツ語のみで、ソフトウェアを。私はこれが逆に外見にもかかわらず、公式ホームページであると考えています)。不良SDカードは自動的に破損します。


この長く忘れられていた答えに賛成してくれてありがとう。おそらくコメントであるべきですが、その時点で私はおそらくその評判を持っていませんでした。コメントが支持されて見えるようになるまで、今のところここに置いておきます。
コードブリン

あなたのコメントを支持しました。
忘れられない

@unforgettableidありがとう、誰もがこのリスクについて知っていることを確認したいだけです。データを失うのは本当に残念です。
コードブリン

OK、コメントが投票されたので、この回答を削除できます。:)
忘れられない

@unforgettableidは、視認性のために、今の両方を残して
コードブリンブリン


0

私が間違っていない場合、あなたはあなたのROMに応じて次のことを行うことで、リブート時に内部ストレージと外部ストレージの両方をAndroidに強制することができます。

端末アプリを実行して入力

su
touch /forcefsck

次に再起動します。

お使いの携帯電話が根ざしていない場合、これは間違いなく失敗します。

ソース:http : //forum.xda-developers.com/showpost.php?p=57027579&postcount=20


「ROMに依存する」とはどういう意味ですか?
忘れられない

このトリックは、すべての電話で機能するとは限りません。別の電話では何もできない場合があります。また、携帯電話を根絶する必要があります。
トレケウス

再起動したら、fsck実際に実行したかどうかをどのように確認できますか?
忘れられない

1
-1。私はあなたの投稿に投票しました。その理由は次のとおりです。問題の調査にもっと時間を費やしました。推奨されるテクニックは、おそらく100%間違っています。読者をだましてそれが役立つと考えるかもしれませんが、このテクニックは実際には何もしません。
忘れられない

2
touch /forcefsck/forcefsckファイルの存在をチェックするinitスクリプトを備えたデバイスでのみ動作します。このような初期化スクリプトを持つ1つのAndroidデバイスについては知りません。したがって、あなたのテクニックはDebian、Ubuntu、およびMintデバイスで動作する可能性が高いですが、どのAndroidデバイスでも動作することは非常に疑わしいです。誰かがをチェックするinitスクリプトを備えたAndroidデバイスを1台でも見つけた場合は/forcefsck、お知らせください!このコメントに返信してください。
忘れられない
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.