パーティション非表示/Grub

AOA150にインストールしたDebian6(Squeeze)が無事起動できることを確認した後、デュアルブートのWindwsXPを起動しようとしたところ、”Acer eRecovery Management”が立ち上がり、「どのように復元しますか…システムを初期設定に復元します|終了」と聞いてきました。
初期設定されたんじゃ困りますので、ここでは当然「終了」を選択です。
なお、パソコン起動画面/Grubメニューでは Windows NT/2000/XP になっていました。
(grub-pc(grub2)インストール時にちょっと間違えたかもしれません。)

# os-prober コマンドで確認しました。(次の2行が/boot/grub/grub.cfgに反映されています)
 Windows NT/2000/XP (on /dev/sda1)
 Microsoft Windows XP Home Edition (on /dev/sda2)

この2行目を選択すればWindwsXPが立ち上がります。しかし、うっかり1行目を選択して初期設定に戻すようなことがあっては困ります。

参考にした記事はUbuntu Forums – Grub 2 Title Tweaks Threadです。
Windowsリカバリパーティションを表示しないように /etc/grub.d/30_os-prober に追記します。(/boot/grub/grub.cfg を手動で修正してはいけないようです)

(# Added to 〜 # End Added を追記)

for OS in ${OSPROBED} ; do
  DEVICE="`echo ${OS} | cut -d ':' -f 1`"
  LONGNAME="`echo ${OS} | cut -d ':' -f 2 | tr '^' ' '`"
  LABEL="`echo ${OS} | cut -d ':' -f 3 | tr '^' ' '`"
  BOOT="`echo ${OS} | cut -d ':' -f 4`"

  if [ -z "${LONGNAME}" ] ; then
    LONGNAME="${LABEL}"
  fi

# Added to hide "Acer eRecovery Management" partition
  if [ "$LONGNAME" = "Windows NT/2000/XP" ] && [ "${DEVICE}" = "/dev/sda1" ] ; then
    continue
  fi
# End Added

そして、# update-grub を実行します。

広告