web-dev-qa-db-ja.com

Linuxでフラッシュメモリを低レベルフォーマットするにはどうすればよいですか?

友人がUSBフラッシュドライブに問題を抱えていたので、低レベルのフォーマットをするように勧めました。それから、私はLinuxでそれを行う方法すら知りません。 Linuxでフラッシュメモリを低レベルフォーマットするにはどうすればよいですか?私の友人はWindowsのドライブで「フルフォーマット」を試しましたが、失敗しました。

13
bmaupin

「低レベルのフォーマット」はフロッピーで行われ、トラックとセクターを別々に編成することを選択することにより、さまざまな密度で書き込むことができました。しかし、これはほとんどの現代のメディアには意味がありません。デバイスでデータを整理する方法の概念は固定されており、変更できません。磁区ではなく、離散ビットを持つフラッシュにはまったく意味がありません。より高いレベルのフォーマットが可能です。これはUNIXランドではmkfsです。

12
wnoise

低レベルの書式設定は、人や状況によってさまざまなことを意味します。

元の意味は、ディスクのフォーマットに必要な手順でした。ディスクドライブは、データを保存する前に、メディアに書き込まれたヘッダー、同期、その他のパタ​​ーンを必要とします。このようにして、ヘッドはA)トラック上とB)トラック上のどこにあるかを検出できます。フロッピーを低レベルでフォーマットすると、ディスクがブロックを読み書きできるようになります。初期のMFMおよびRLL PCハードドライブは、ハードドライブコントローラーの(ISAカード)ROMに組み込まれたユーティリティを使用することが多いです。最新のIDE =およびSATAハードドライブも低レベルでフォーマットされていますが、出荷時のみです。

その他のさまざまな意味には、すべてのブロックにゼロを書き込む、HPAやDCOなどの「非表示」領域を無効にするようにドライブを構成してから、すべてのブロックをゼロにする、またはフォーマットよりパーティションに関連するその他のものが含まれます。

Rawフラッシュは、工場で異なる初期準備ステップが必要です。各フラッシュの「eraseblock」(ディスク上の「ブロック」のアナログ)をテストし、本当に悪い場合は不良としてマークする必要があります。各「eraseblock」には、エラー修正情報を保持する追加の小さな「OOB」ブロックがあり、これが不良としてマークされています。不良ブロックに書き込む動作により、そのブロックを不良として識別する特定のビットを再度設定できなくなる可能性があるため、この手順を繰り返すことは望ましくありません。

しかし、あなたは生のフラッシュを扱っていません。あなたはUSBフラッシュドライブを扱っています。すべてのフラッシュドライブには、ホストからのUSBコマンドを受け入れ、ホストに代わって内部のrawフラッシュと通信するコントローラーチップがあります。これらのコントローラチップの一部は、フラッシュの一部を別個のCD-ROMパーティションとして報告するように構成したり、2つの別個のUSBストレージデバイスのように機能したりできます。 コントローラーチップの製造元とモデルによっては、このコントローラーチップをリセットできる回復または構成ユーティリティ(おそらくWindowsのみ)を見つけることができる場合があります。まず、フラッシュドライブを開いて、小さなPCBにある(可能性が高い)2つのチップのうち小さい方を探し、グーグルを実行します。ケースの外側に印刷されたメーカーとモデルは、誰がその中にコントローラーを作ったのかを見つけるのに役立つとは思えません。

8
LawrenceC

USB/ATA/SD /などからの追加の変換層があるため、ほとんどのフラッシュデバイスで低レベルフォーマットを実行する方法はありません。 to [〜#〜] mtd [〜#〜] 低レベルMTDデバイスを覆い隠します(これはできます直接[できません])。

これにはddコマンドを使用しますdd if=/dev/zero of=/dev/hda

これにより、ハードドライブ上のすべてのデータ、すべてのブートセクター情報、およびすべてのパーティション上のすべてのデータが破壊されます。ただし、ディスクが役に立たなくなるわけではなく、パーティションを作成して新しいブートセクターをインストールするだけで十分なクリーンなディスクができます。これは、LinuxまたはWindowsを含むOSをインストールするときに発生します。これは、表示したくない不良パーティション、ウイルス、インストールの失敗、またはデータをクリーンアップするのに適した方法です。

6
harish.venkat

mkfs.vfat /dev/hda1は、MSDOSの「フォーマット」コマンドと同等の機能を果たします。

4
Paul Tomblin

SCSI FORMAT UNITコマンドを実装しているデバイスは(しばらくではありませんが)過去に出会ったことがあります。Linuxから次のデバイスを使用できます。

sg_format --format/dev/sdX

これらのデバイスを工場出荷時の状態にリセットします(USBストレージ仕様は古いSCSI標準から派生しています)。

新しいUSB 3デバイスの中にはATAセキュリティコマンドも実装しているものがあるので、リセットする効果があると思われる https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase を使用できます。フラッシュ変換レイヤーを出荷時の状態に戻します(通常、SSDの場合と同じです)。

2
Tim Small

フラッシュメモリの低レベルフォーマットなどがありますが、ベンダー固有のソフトウェアを使用して工場で行われます。

そのためには、メモリコントローラチップと直接通信する必要があります。 Linuxでそれを実行できるプログラムを見つけることができませんでした。

低レベルのフォーマットを実行し、一部の設定(LED動作、ドライブを読み取り専用にするなど)およびデータ(メーカー名、モデル名、シリアル番号など)をメモリコントローラーチップセットに書き込むことができるメーカーツールがありますが、これらのツールは通常Windows専用であり、多くの場合中国語です。

そのようなツールの1つは「FC MPツール」と呼ばれます。私の知る限り、これらは Alcor Micro によって設計され、FirstChip(FC)によって製造されています。 「MP」は「量産」の略です。

ここで見つけたバージョンを使用しています: http://down.upantool.com/file/software/mass/FristChip/2018/iTe_MpTools_20171130.Zip

フォローできる他のリンク: https://repusb.cubava.cu/?page_id=2052https://www.rmprepusb.com/tutorials/repair-your-usb-flash -drivehttp://reboot.pro/topic/20865-alcor-micro-usb-pen-drive-repair/http://reboot.pro/topic/ 19901-no-alcor-mptool-is-recognizing-my-usb /https://www.elektroda.pl/rtvforum/topic3145335.htmlhttp:// flashboot .ru/files/file/30 /http://www.flashdrive-repair.com/2014/05/download-fc-mptool-v402-for-fixing.html - https://www.cdrinfo.pl/download/356133849

それはWineで実行されますが、ドライブチップセットを検出しません(それを行うには、おそらくUSBコントローラーに直接アクセスする必要があります)。

また、これが機能するためには、サポートされている特定のAlcorチップセットを搭載したフラッシュドライブが必要です。繰り返しになりますが、各ベンダーには、USB経由でコントローラーチップと通信する独自​​のソフトウェアがあります。

私はこれを持っています:

enter image description here

マイクロコントローラーのチップセット部品番号に注意してください:FC1178 BC1FC MPツールプログラムはこれを1178BCチップセット:

enter image description here

そして、私がリンクしたソフトウェアはWindowsで動作しますXP and 10.ただし、プログラムを英語に切り替えるとクラッシュします!設定を英語に設定してから、プログラムを再起動してください。 t言語を変更する-動作するはずですが、新しいバージョンで修正される可能性があります。

とにかく-ベンダーが異なればツールも異なります。それはうさぎの穴です。AFAIKには標準がなく、残念ながら(少なくともこのツールは)Windowsでしか機能しません。

私が知ることができることから、これはメモリチップをテストし、不良セクタマップをコントローラチップに書き込むため、OSに適切なメモリのみを提供できます。このようにして、部分的に損傷したチップでも使用および販売できます。これらはおそらく工場で品質別に分類され、低容量で異なる容量にフォーマットされています。これはビニングと呼ばれます。

たぶん、誰かがこれらのツールをたくさん集めて、リバースエンジニアリングして、Linux向けのユニバーサルオープンソースツールを作ることができれば、私たちがそれを行うことができます。

1
unfa

ハードディスクドライブやフロッピードライブで行われた方法での低レベルのフォーマットはフラッシュドライブには意味がありませんが、「低レベルのフォーマット」のフラッシュドライブに対するメーカー固有のユーティリティが存在します:これは例です Alcor低レベルフォーマットユーティリティ

Linuxで動作するユーティリティを探しているときに、私はこの質問に落ちました。ただし、フラッシュドライブの製造元は、私たちを幸せにすることに関心がないようです。

1
Tarik