실수로 / boot 폴더를 삭제하고 재부팅


16

실수로 파일 시스템에서 / boot 폴더를 삭제하고 다시 부팅했는데 지금 얻는 것은 다음과 같습니다.

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

grub rescue>


이 경우 / boot 폴더가 완전히 삭제되었습니다. 일부 파일뿐만 아니라 감사합니다.
Imad Nouari

나는 다른 질문에 대한 어떤 대답도 이것을 고치기에 충분하지 않습니다 ..
Graeme

충분히 공정하고 실제로 모든 답변을 읽지는 못했습니다. 나는 항상 누락 된 것을 해결하려고 노력하는 대신 모든 것을 재구성하는 것이 좋습니다. 반 시간이 걸립니다.
크 툴후 촉수

7
/boot물론 삭제와 비교하여 훨씬 더 큰 실수 는이 문제가 해결되기 전에 시스템을 재부팅하는 것입니다.
Anthon

답변:


36

죄송합니다!

수행 할 작업은 다음과 같습니다.

  1. 라이브 배포판을 부팅하십시오. 이것은 Ubuntu 설치 디스크이거나 Knoppix 와 같은 다른 디스크 일 수 있습니다 .

  2. 루트 파일 시스템을 설치 한 드라이브 / 파티션을 찾으십시오. 이 작업을 수행하려면 터미널을 열고 중 하나를 실행할 수 있습니다 sudo parted -l또는 sudo fdisk -l. 말할 수 없으면 질문 을 편집 하고 출력을 추가하십시오.

  3. 마지막 단계에서 발견 루트 파티션이라고 가정하면 /dev/sdxy( x다른 편지이어야하며 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. 재부팅 및 상황이 수정되었습니다. 내가 마지막으로 비슷한 일을 한 한 가지 문제는에서 버그로 인해 Windows를 update-grub실행할 때 찾을 수 없다는 것 chroot입니다 os-prober. 이것이 문제 sudo update-grub라면, 수리 된 시스템에서 다시 실행 하십시오.


@Olivier, 원래 /dev/sdax모든 곳 에서 사용하도록 고마워 로 변경했습니다 /dev/sdxy.
Graeme

훌륭한 정보를위한 감사합니다. 한 번의 추가로 저를 구했습니다. 소프트웨어 RAID가 있으므로 여기에서 지침을 따라야합니다. help.ubuntu.com/community/Grub2/ chroot 방법을 사용하여 재설치에서 mdadm을 시작하고 RAID 구성원을 조립하고 그에 따라 마운트를 수행하여 설치. 그런 다음 chroot 후에이 답변에 설명 된대로 패키지를 다시 설치하면 모든 것이 정상입니다!
비트 피들러
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.