お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2013-06-29 12:01:56

bigx
メンバ
登録日: 2011-03-27

CD-ROM起動からのupdate-grubについて

現在WIndows8とUbuntu12.04をgrub2にてデユアルブートしております。

PCの調子が悪く電源をONにした時に普段であればgrub2のメニュー画面が表示されるところ、表示されなくなりハードディスクからのPCの起動ができなくなりました。

色々調べ、今の段階ではハードウェア的な不調の原因は取り除き、CD-ROMからの起動はできるようになりました。現在のネットへの接続はそのPCから行っております。

上記の症状を修復するためにupdate-grubを行えば改善されるのでは?と素人ながら考えておりますが、ubuntuのmountの概念が正しく理解できていないのと、grub2について知識不足な点があることから、CD-ROM起動の場合でHDD上のgrubファイル(grub.cfg)を修復するための「update-grub」はどのようにすれば良いか分かりません。どなたか大変お手数ですがご教示いただきたいと思います。

現在のハードディスクのパーテションは下記の通りです。(CD-ROMから起動しております)

ubuntu@ubuntu:~$ sudo fdisk -l /dev/sda

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
ヘッド 255, セクタ 63, シリンダ 121601, 合計 1953525168 セクタ
Units = セクタ数 of 1 * 512 = 512 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク識別子: 0x00041d13

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sda1   *          63   102398309    51199123+   7  HPFS/NTFS/exFAT
/dev/sda2       102398310   102607154      104422+  83  Linux
/dev/sda3       102607155   200250224    48821535   83  Linux
/dev/sda4       200253499  1953520064   876633283    5  拡張領域
/dev/sda5       200253501   220733099    10239799+  82  Linux スワップ / Solaris
/dev/sda6       220733163   323131409    51199123+  83  Linux
/dev/sda7       323131473  1039935644   358402086    7  HPFS/NTFS/exFAT
/dev/sda8      1039935708  1953520064   456792178+   7  HPFS/NTFS/exFAT

CD-ROMから起動時のデフォルトのマウント状態は下記の通りです。
ubuntu@ubuntu:~$ mount
/cow on / type overlayfs (rw)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
/dev/sr0 on /cdrom type iso9660 (ro,noatime)
/dev/loop0 on /rofs type squashfs (ro,noatime)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
gvfs-fuse-daemon on /home/ubuntu/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=ubuntu)


HDD内の/boot/grub/grub.cfg は下記の通りです。(CD-ROMから起動中し、GUIのNautilusにて/bootをマウントして内容を確認しました)

コード:

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  set have_grubenv=true
  load_env
fi
set default="Windows 8 (loader) (on /dev/sda1)"
if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function recordfail {
  set recordfail=1
  if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
}

function load_video {
  insmod vbe
  insmod vga
  insmod video_bochs
  insmod video_cirrus
}

insmod part_msdos
insmod ext2
set root='(hd0,msdos3)'
search --no-floppy --fs-uuid --set=root f0c7925a-4f10-4ed0-8d7e-b2761cfeae1a
if loadfont /usr/share/grub/unicode.pf2 ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  insmod part_msdos
  insmod ext2
  set root='(hd0,msdos2)'
  search --no-floppy --fs-uuid --set=root 2f622df7-f5ad-45be-98bb-cbb14be67953
  set locale_dir=($root)/grub/locale
  set lang=ja_JP
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ]; then
  set timeout=-1
else
  set timeout=5
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
if background_color 44,0,30; then
  clear
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
    set gfxpayload="${1}"
    if [ "${1}" = "keep" ]; then
        set vt_handoff=vt.handoff=7
    else
        set vt_handoff=
    fi
}
if [ "${recordfail}" != 1 ]; then
  if [ -e ${prefix}/gfxblacklist.txt ]; then
    if hwmatch ${prefix}/gfxblacklist.txt 3; then
      if [ ${match} = 0 ]; then
        set linux_gfx_mode=keep
      else
        set linux_gfx_mode=text
      fi
    else
      set linux_gfx_mode=text
    fi
  else
    set linux_gfx_mode=keep
  fi
else
  set linux_gfx_mode=text
fi
export linux_gfx_mode
if [ "${linux_gfx_mode}" != "text" ]; then load_video; fi
menuentry 'Ubuntu, with Linux 3.2.0-48-generic' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    gfxmode $linux_gfx_mode
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='(hd0,msdos2)'
    search --no-floppy --fs-uuid --set=root 2f622df7-f5ad-45be-98bb-cbb14be67953
    linux    /vmlinuz-3.2.0-48-generic root=UUID=f0c7925a-4f10-4ed0-8d7e-b2761cfeae1a ro   quiet splash $vt_handoff
    initrd    /initrd.img-3.2.0-48-generic
}
menuentry 'Ubuntu, with Linux 3.2.0-48-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='(hd0,msdos2)'
    search --no-floppy --fs-uuid --set=root 2f622df7-f5ad-45be-98bb-cbb14be67953
    echo    'Linux 3.2.0-48-generic をロード中...'
    linux    /vmlinuz-3.2.0-48-generic root=UUID=f0c7925a-4f10-4ed0-8d7e-b2761cfeae1a ro recovery nomodeset 
    echo    '初期 RAM ディスクをロード中...'
    initrd    /initrd.img-3.2.0-48-generic
}
submenu "Previous Linux versions" {
menuentry 'Ubuntu, with Linux 3.2.0-45-generic' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    gfxmode $linux_gfx_mode
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='(hd0,msdos2)'
    search --no-floppy --fs-uuid --set=root 2f622df7-f5ad-45be-98bb-cbb14be67953
    linux    /vmlinuz-3.2.0-45-generic root=UUID=f0c7925a-4f10-4ed0-8d7e-b2761cfeae1a ro   quiet splash $vt_handoff
    initrd    /initrd.img-3.2.0-45-generic
}
menuentry 'Ubuntu, with Linux 3.2.0-45-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='(hd0,msdos2)'
    search --no-floppy --fs-uuid --set=root 2f622df7-f5ad-45be-98bb-cbb14be67953
    echo    'Linux 3.2.0-45-generic をロード中...'
    linux    /vmlinuz-3.2.0-45-generic root=UUID=f0c7925a-4f10-4ed0-8d7e-b2761cfeae1a ro recovery nomodeset 
    echo    '初期 RAM ディスクをロード中...'
    initrd    /initrd.img-3.2.0-45-generic
}
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
    insmod part_msdos
    insmod ext2
    set root='(hd0,msdos2)'
    search --no-floppy --fs-uuid --set=root 2f622df7-f5ad-45be-98bb-cbb14be67953
    linux16    /memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
    insmod part_msdos
    insmod ext2
    set root='(hd0,msdos2)'
    search --no-floppy --fs-uuid --set=root 2f622df7-f5ad-45be-98bb-cbb14be67953
    linux16    /memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows 8 (loader) (on /dev/sda1)" --class windows --class os {
    insmod part_msdos
    insmod ntfs
    set root='(hd0,msdos1)'
    search --no-floppy --fs-uuid --set=root 3078248078244746
    drivemap -s (hd0) ${root}
    chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

素人考えでupdate-grubを行えば起動できるのではないかと考えておりますが、本来の目的はHDDから起動できなくなったことであり、原因が他のところにあるのでは??と考えられる場合には、その点についても何かヒントになるような内容をご教示いただければ幸です。

以上、宜しくお願い致します。

オフライン

 

#2 2013-06-29 15:18:09

uotora
メンバ
登録日: 2008-06-18

Re: CD-ROM起動からのupdate-grubについて

次のコマンドの結果を提示して下さい。

コード:

sudo parted -l

コード:

sudo blkid

オフライン

 

#3 2013-06-30 14:01:56

bigx
メンバ
登録日: 2011-03-27

Re: CD-ROM起動からのupdate-grubについて

uotora 様

早速のお返事ありがとうございました。

投稿後、自分なりに色々と内容を確認してみましたところ、原因はハードディスク内のubuntuのシステムドライブ、Windows8のシステムドライブともに各所に破損のファイル(ディスクの不具合)が確認されました。

従いまして、修復を諦めて再度新規にクリアインストールしようと作業を始めました。

今まではデュアルブートで運用を行っていましたが、これを機会に仮想化の運用にチャレンジしようと考えています。

お返事を頂きましたが、勝手に変更作業に取り掛かってしまい大変申し訳ありませんでした。

以上、先ずはご報告と御礼まで。

オフライン

 

Board footer

Powered by FluxBB