誤って/ bootフォルダーを削除して再起動した


16

ファイルシステムから/ bootフォルダーを誤って削除し、再起動したところ、次のようになりました。

error: file '/boot/grub/i368-pc/linux.mod' not found.

grub rescue>


異なります。この場合、/ bootフォルダーは完全に削除されました。それからいくつかのファイルだけでなく、ありがとう。
イマドノウアリ

他の質問の答えがこれを修正するのに十分なものではないこと
グレアム

結構、すべての答えを読んだわけではありません。不足しているものを解決しようとするのをいじるのではなく、全体を再構築することを常にお勧めします。半分の時間がかかります。
クトゥルフ触手

7
削除に比べてはるかに大きな間違い /bootは、もちろん、これが修正される前にシステムを再起動することです。
アントン

回答:


36

おっとっと!

対処方法は次のとおりです。

  1. ライブディストリビューションを起動します。これは、UbuntuインストールディスクまたはKnoppixなどの別のディスクです。

  2. ルートファイルシステムをインストールしたドライブ/パーティションを見つけます。これを行うには、ターミナルを開いてsudo parted -lまたはを実行しますsudo fdisk -l。わからない場合は 、質問を編集して出力を追加してください。

  3. 最後の手順で見つけたルートパーティションが/dev/sdxyx別の文字yで、数字である必要がある)と仮定して、ターミナルで次のコマンドを実行します。

    mkdir mnt
    sudo mount /dev/sdxy mnt
    sudo mount --bind /dev /mnt/dev
    sudo mount --bind /proc /mnt/proc
    sudo mount --bind /sys /mnt/sys
    sudo chroot mnt
    
  4. これで、chroot環境内にいることになります。つまり、ここでコマンドを実行することは、インストールされたシステムでコマンドを実行することと同じです。最初に行うことは、デバイスにGRUB2を再インストールして、正しいファイルを/bootフォルダーにコピーすることです。これを行うには、ルートパーティションが存在するドライブで(つまり/dev/sdxy、番号(y)を削除して)以下を実行します。

    grub-install /dev/sdx
    
  5. ここで、ブートディレクトリにファイルがあるインストール済みパッケージを見つけて、それらを再インストールします。これにより、特に削除されたカーネルイメージが置き換えられます。パッケージを見つけるコマンドは次のとおりです。

    dpkg -S /boot
    

    そしてそれらを再インストールするには:

    apt-get --reinstall install ...
    

    where ...は、最初のコマンドからのパッケージの名前に置き換えられます。コンマを含めずに、パッケージ名にスペースを入れてください。

    この手順では、おそらくインターネットアクセスが必要になります(パッケージが既にキャッシュ内にない場合)ので、問題がある場合は必ず接続してください。

  6. カーネルを削除して再インストールするため、これによりGRUB2の更新が自動的にトリガーされるはずです。しかし、念のため、実行できません:

    update-grub
    
  7. 再起動すると問題が修正されるはずです。似たようなことを最後に行ったときに抱えていた問題の1つは、Windows が、のバグによりupdate-grub実行されたときに見つからない場所にインストールされることでしchrootos-prober。これが問題になる場合はsudo update-grub、修復したシステムで再度実行してください。


@Olivier、元々/dev/sdaxどこにいてもそれをに変更したおかげで/dev/sdxy
グレアム

素晴らしい情報に感謝します-それは私を救った、1つの追加で。私は、ソフトウェアRAIDを持っているので、私もここの指示に従ってくださいする必要がありました:help.ubuntu.com/community/Grub2/Installingのmdadmを開始し、RAIDメンバーを組み立て、それに応じてマウントを行うためのchrootメソッドを使用して再インストールの下で。次に、chrootの後、この回答で説明されているようにパッケージを再インストールします。すべて順調です!
-bitfiddler
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.