Windowsインストールし直したり、他のディストリビューションインストールし直すと、GRUB のOS選択画面が表示されなくなることがあります。これは、各インストーラがGURBのデータが書き込まれている、マスターブートレコード(MBR)と呼ばれる、ディスクにおける先頭セクタのデータを書き換えているためこのような事が起こります。
最近のディストリビューションのインストーラは、自動で他のディストリビューションを検出してGURB のメニューに追加してくれますが、失敗する事もあるのでパーティションを分けて他のディストリビューションをインストールする場合は、事前にMBRのデータを保存しておけばそのような事態を回避できます。
MBR は、ディスクの先頭512バイトに保存されているので、以下のコマンドでMBRのデータを ~/mbr.img に保存する事ができます。
MBR の保存 $ dd if=/dev/sda of=~/mbr.img bs=512 count=1 MBR を復旧 $ dd if=~/mbr.img of=/dev/sda bs=512 count=1
MBRにはパーティション情報も保存されていますが、バイナリデータの為、データを簡単に参照できません。新しくHDDを購入したが、既存のHDDと同じパーティション構成にしたい。
HDDのパーティションを切り直したいが、現在の設定を残しておきたいという場合は、パーティション操作コマンドsfdisk コマンドを使ってパーティションの構成データを保存できます。
/dev/sda の情報を partitioninfo.txt ファイルに保存します。 $ sudo sfdisk -d /dev/sda >partitioninfo.txt partitioninfo.txt ファイルの中身を参照します。 $ cat partitioninfo.txt label: dos label-id: 0xdff77958 device: /dev/sda unit: sectors /dev/sda1 : start= 2048, size= 23068672, type=83, bootable /dev/sda2 : start= 23072766, size= 8382466, type=5 /dev/sda5 : start= 23072768, size= 8382464, type=82
この出力ファイルは、sfdiskコマンドのインプットファイルとして使えるのでパーティション構成を元に戻したい、新しいHDDを同じ構成にしたい場合などに利用できます。
新規のHDD /dev/sdb を /dev/sda と同じ構成にします。 $ sudo sfdisk /dev/sdb <partitioninfo.txt