grub-install:エラー:efiディレクトリが見つかりません

grub-install:エラー:efiディレクトリが見つかりません

最近デュアルブートしました。カリー-Linux-2016.2-amd64Windows 10を使用してください。しばらくしてWindows 10を更新したため、Windowsが起動メニューからgrubを削除した可能性があります。起動メニューにkali-linuxが表示されなくなったため、起動できません。

そのため、USB(永久)でLive-kaliを起動してgrubを再インストールすることにしました。端末に次のコマンドを入力しました。

fdisk -l
sudo mount /dev/sda* /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
grub-install /dev/sda

CTRL+D

sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt

7番目のコマンドラインの後、次のエラーが発生します。 ここに画像の説明を入力してください。

答え1

基本的な命令を知らずにお手伝いするのは大変ですが…一度やってみますよね?

  • fdisk -lイメージと同様に、現在のパーティションをリストします。
  • イメージでは、/dev/sda1はEFIシステム、/dev/sda10はLinuxファイルシステム、/dev/sda11はLinuxスワップ領域として表示されます。この情報を保管してください。
  • ライブCDから起動するときにシステムにアクセスするには、次の手順を実行する必要がありますchroot。つまり、これは現在実行中のプロセスとその子プロセスの明白なルートディレクトリを変更します。行きましょう:

  • /mnt にシステムをマウントします。覚えてる? Linuxファイルシステム?はい。 /dev/sda10 です。したがって、次のコマンドを実行します

             sudo mount /dev/sda10 /mnt

    sudoこれを行うには管理者権限が必要なため、使用しています。

  • したがって、プログラムが動作するために必要な一時ファイルシステムをマウントするには、次のコマンドを使用します。

             sudo mount --bind /dev /mnt/dev
             sudo mount --bind /dev/pts /mnt/dev/pts
             sudo mount --bind /proc /mnt/proc
             sudo mount --bind /sys /mnt/sys

  • ブートを変更しているため、/boot パーティションも必要です。一部のシステムでは、/bootディレクトリとシステムルート(/)に同じパーティションを使用します。現在の状況がわからない場合は、この時点で/mnt/boot/フォルダ内のファイルを確認してください(カーネルイメージ、設定などを見つけることができます)。

       -/mnt/bootフォルダが空の場合は、/bootパーティションをマウントする必要があります。あなたのボックスで利用可能な唯一のパーティションは/ dev / sda1なので、そうなります。 /mnt/boot にマウントされます。

       -これらのファイルを見つけたら、/ dev / sda1の他のパーティションは実際にはEFIファイルシステムでなければならず、/ mnt / boot / EFIにマウントする必要があります。

  • すべてがインストールされたら、次のコマンドを使用してルートディレクトリを変更します。

             sudo chroot /mnt /bin/bash

  • これでchrootからgrubをインストールできます。

    sudo grub-install /dev/sda

関連情報