ubuntu修復grub

1756 ワード

修復grub


多くの場合、特にlinuxがパーティションを調整した後、電源を入れて再起動すると次のような文字が表示されます.システムは入れません.
error : unknow filesystem
grub rescue>

これは一般的にパーティション調整やパーティションUUIDの変更によりgrub 2が正常に起動できなくなり、修復モード(grub rescue)に入り、救援モードとも呼ばれ、救援モードではset,ls,insmod,root,prefixのコマンドしか使用できません.
  • set環境変数を表示します.ここでは、起動パスとパーティションを表示できます.
  • lsビューデバイス
  • insmodロードモジュール
  • rootシステムを起動するためのパーティションを指定し、救援モードでgrub起動パーティション
  • を設定する.
  • prefix grub起動経路
  • を設定する.
    修復手順:
    1、パーティションの表示
    grub rescue> ls
    (hd0) (hd0,msdos9) (hd0,msdos8) (hd0,msdos7) (hd0,msdos6) (hd0,msdos5) (hd0,msdos2) (hd0,msdos1)
    

    以上の結果は人によって異なるかもしれません
    2、ubuntuがあるパーティションを探す
    grub rescue> ls (hd0,msdos1)/
    

    unknown filesystemという文字が表示されたら、次を試してみてください.ubuntuのメインフォルダの下にあるフォルダとファイルの名前が表示されたら、それは探しているパーティションです.
    3、起動パーティションの変更
    起動パーティションがhd0,msdos8なら
    grub rescue>root=(hd0,msdos8)
    grub rescue>prefix=/boot/grub                         //grub 
    grub rescue>set root=(hd0,msdos8)
    grub rescue>set prefix=(hd0,msdos8)/boot/grub
    grub rescue>insmod normal                            // normal 
    grub rescue>normal
    

    4、コマンドラインに入ってubuntuを起動する
    システム起動オプションインタフェースに入っても入れません.まだgrubを本当に修正していないので、ubuntuでシステム起動項目インタフェースに入った後、Cを押してコマンドラインモードに入ります.
    grub >set root=hd0,msdos8
    grub >set prefix=(hd0,msdos8)/boot/grub
    grub >linux /vmlinuz-xxx-xxx root=/dev/sda8 //  xxxx   Tab  ,  acpi  ,  acpi=off
    grub >initrd /initrd.img-xxx-xxx
    grub >boot
    

    5、ubuntu修復grubに入る
    sudo update-grub
    sudo grub-install /dev/sda
    

    6、再起動