ddを台無しにした後にパーティションテーブルを消去できない

ddを台無しにした後にパーティションテーブルを消去できない

背景:
今日、私は書き込み可能なファイルシステムを備えたNixOSライブUSBをインストールする方法を見つけようとしました(dd-ing isoの結果は読み取り専用iso9660 fsです)。

USBを2つのパーティションに分けました。 1つは空で、もう1つはext4としてフォーマットされています。私は似たようなものを走ったdd if=(nixos image).iso of=/dev/sdb1。それからうまくいかないかもしれないことに気づいたので、gpartedを開いてすべてを削除し、他のものを試しました。

ここで何か奇妙なことが起こっていることを発見しました。 gpartedは、私の32GBペンドライブは約1.4GB(最初のパーティションのサイズ)にすぎないと言いました。/dev/sdb今でも同じようです/dev/sdb1ここに画像の説明を入力してください。

ディスクユーティリティは2番目のパーティションを確認しますが、それを削除したりドライブ全体をフォーマットしたりすることはできません。ここに画像の説明を入力してください。 ここに画像の説明を入力してください。

私のWindowsコンピュータにUSBドライブがまったく表示されません。

私も試しましたwipefs /dev/sdb

USBフラッシュドライブを使用可能な状態に復元するにはどうすればよいですか?

修正する:

再起動後、問題は消えました。 (もう早く試していないのは恥ずかしいです。)再現する方法が見つかりません。私が言及していないことの1つは、isoをループデバイスとしてマウントしましたが、後で削除したことです。スクリーンショットに示すように、gnome-disksループデバイスはまだ存在しますが、それがisoを指しているのか、ペンドライブの最初のパーティションを指しているのかはわかりません。それでは、屋根の設置が何らかの方法でアクセスを妨げる可能性がありますか/dev/sdb

明確にするために、ドライブ全体と最初のメガバイトをゼロに設定してみました。これは機能しません/dev/sdb。なぜならいいえそれが何をすべきかを指摘してください(少なくともそれは私の解釈です)。

答え1

説明した問題は、低レベルのデバイスツール(ddなど)が誤ったサイズのブロックをデバイスに直接書き込むために発生します。

この問題を解決するには、デバイスブロックを適切なサイズに再構築する必要があります。これはddを使用して行うことができます。コマンドを実行する前に、出力デバイスを再確認してください。

sudo dd if=/dev/zero of=/dev/sdb bs=2048 count=32

ddコマンドを完了すると、gpartedを介してデバイスにアクセスできます。

そうでなければ次のコマンドを試してください

wipefs -a /dev/your-device

ディスク上のすべてのパーティションが消去されます。

関連情報