LoginSignup
4
2

More than 3 years have passed since last update.

HDDのMBR領域を削除する

Posted at

はじめに

 HDDのクローンを作成し、古い方のHDDを外付けHDDをとして再利用しようとしたら、GRUBが生きていて困った話

①概要

 HDDからSSDへ換装した際、残ったHDDを外付けHDDとして再利用しようと試みた。
 SSDのWin10からexFATでHDDフォーマットしてWin10とubuntuで共有できるようにした。
 共有外付けHDDの作成自体は成功したかに見えた。が、外付けを接続したままPCを再起動すると、[Grub Rescue]が起動してOSが起動出来ない。
 調べてみると、フォーマットだけではHDDに残っているGRUBが削除されずに残っている。そのためBIOS起動順で優先の高いUSBにから起動に行くが、ブートローダーに記載されている領域にはOSの入ったパーティションが存在しないためこのような事態になる。
 そこで、GRUBを削除しようと試みた。

②手順

 結論から言うと、HDDの先頭をゼロ埋めしてMBRを消す。
 MBRはHDDの先頭セクタなので、バイトサイズは512 カウントは1 (以下ウィキ参照)
 https://ja.wikipedia.org/wiki/マスターブートレコード
 消した後に再度Win10でフォーマット。

 で、消すコマンドがこれ↓

dd if=/dev/zero of=/dev/● bs=512 count=1

 ●は消去したいデバイス名

 HDDのデバイス名を調べるには、以下のコマンドかUbuntuのユーティリティから[ディスク]を選択。
 (ディスクユーティリティから調べたほうが分かりやすかった)

:~$ sudo fdisk -l

ディスク /dev/loop0: 42.8 MiB, 44879872 バイト, 87656 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
〜
〜
ディスク /dev/sda: 894.3 GiB, 960197124096 バイト, 1875385008 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0xed928d4c

デバイス   起動  開始位置   最後から    セクタ サイズ Id タイプ
/dev/sda1  *         2048   18661374  18659327   8.9G  7 HPFS/NTFS/exFAT
/dev/sda2        18661376  264234943 245573568 117.1G  7 HPFS/NTFS/exFAT
/dev/sda3       264234945  878634943 614399999   293G  7 HPFS/NTFS/exFAT
/dev/sda4       878636993 1113010175 234373183 111.8G  f W95 拡張領域 (LBA)
/dev/sda5       878637056 1113010175 234373120 111.8G 83 Linux
〜
〜
ディスク /dev/sdb: 931.5 GiB, 1000204886016 バイト, 1953525168 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 4096 バイト
I/O サイズ (最小 / 推奨): 4096 バイト / 4096 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0x60daf3ec

デバイス   起動 開始位置   最後から     セクタ サイズ Id タイプ
/dev/sdb1           2048 1953521663 1953519616 931.5G  7 HPFS/NTFS/exFAT

③おまけ

 はじめはHDD全体をゼロ埋めしようかとも思った。(そういった記事が多かったから。)
 でも、以下のページではじめのセクタだけゼロ埋めしてブートローダーを無効化していたので試してみたらいけた。
 http://t07mk2.blog66.fc2.com/blog-entry-101.html
 手順にも書いたがMBRはサイズ512バイトって規定されてるからそこだけゼロ埋めすればいいってこと。

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2