업데이트 후 "오류 : 파일을 찾을 수 없습니다."와 "grub rescue> _"가 표시됩니다.


23

방금 12.10 업데이트를 많이 설치하고 재부팅하라는 메시지가 표시되고 부팅 할 수 없음을 발견했습니다.


저의 명성 때문에 아직 코멘트를 추가 할 수 없기 때문에 나는 이런 식으로 코멘트를 추가합니다 ... 8128 s 답변 wit Boot-repair를 사용했지만 apt-get update sudo sed s / s trust 전에이 줄을 추가해야했습니다 / saucy / g '-i /etc/apt/sources.list.d/yannubuntu-boot-repair-trusty.list 그가 답변에 추가 한 링크에서 본 것처럼
Dominik

답변:


28

부트 복구를 사용하여 부트 로더를 수정하십시오.

  1. LiveCD 또는 Live USB에서 우분투 부팅
  2. 인터넷에 연결하다
  3. 터미널을 열고 Boot Repair PPA를 추가하십시오

    sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update

  4. 부팅 복구 설치

    sudo apt-get install -y boot-repair && boot-repair

  5. 시작 및 사용 ( 자세한 내용 은 https://help.ubuntu.com/community/Boot-Repair#Using_Boot-Repair 참조)


난 그냥 sudoing 대신 루트 (sudo su)로 3.를 실행해야했습니다
David Brossard

1
고맙습니다!! 정전 후 서버를 저장했습니다. UPS를 구입할 시간입니다!
Domenic D.

쿠분투 13.10과 함께 사용되었습니다. 감사.
David

9
  1. ls파티션 목록을 얻으려면 입력하십시오.
  2. 입력 set prefix=(hd0,msdos6)/boot/grub이 거의 확실 괄호 안에 다른 드라이브 / 파티션을 입력해야합니다 [, 당신은 단지에 의해 나열된 모든 시도 할 수 있습니다 ls당신은 작품 그 하나를 찾을 때까지합니다.
  3. 유형 insmod normal
  4. 입력 normal하면 부팅 프롬프트가 다시 나타납니다!

참조 : 내가 찾은 유용한 장소. 이 오류가 발생하는 모든 사람에게 이것이 효과가 있을지는 의문이지만, 누군가에게 도움이되기를 바랍니다.

Ubuntu를로드 한 sudo grub-install /dev/sdasudo update-grub최대한 빨리 실행 하십시오. 즉, 컴퓨터를 부팅 할 때마다 지루한 프로세스를 수행하지 않아도됩니다.


9
insmod normal을 실행하면 다시 파일을 찾을 수 없다고 표시됩니다
tovmeod

1
이 명령 ls (hd0,msdos1)/을 사용하여 파티션의 내용을 확인할 수도 있습니다 . 파티션이 많을 경우 더 빠릅니다.
Jonathan

별도의 부트 파티션이 있다는 점을 제외하고는 나에게 효과적이었습니다. 따라서 형식은이었습니다 . 정상 작동 중에 마운트 지점이 아닌 드라이브의 파티션 set prefix=(hd0)/grub을 기준으로 grub디렉토리 를 참조해야하기 때문 입니다.
Nick Coons

4

- 나는 똑같은 문제를 가지고 normal.mod not found, ls부팅 파티션의 빈 줄을 생성 할 것이다. 시스템을 올바르게 부팅하기위한 일주일의 문제 해결 후 여기에 내가 수행 한 단계가 있습니다.

  1. SuperGrub 의 복사본을 가지고 부팅 CD를 만들었습니다. 이제 시스템에 다시 로그온 할 수있었습니다. BootRepair 사본을 얻었고 하드 디스크에서 시스템을 직접 부팅하는 것을 좋아하지 않았으며 CD를 계속 사용해야했습니다 . Grub 위치 및 Grub 옵션이 회색으로 표시되어 BootRepair가 약간 이상하게 작동했습니다. 성공적인 설치를보고했습니다.

  2. 하드 드라이브는 원래 설정되었습니다 :
    sda1 ext4 root with boot
    sda2 linux swap
    sda3 ext4 used as a spare drive(가상 상자의 VM을 유지합니다).

  3. 우분투 10.10 라이브 CD의 사본을 사용했습니다. Ran 은 파티션 을 축소하고 드라이브 전면에 ext4 부팅 파티션을 생성 하고 에서 부팅 디렉토리를 삭제 한 후 마운트 지점을 설정 하도록 gpartedgparted 설치 했습니다 . BootRepair에는 이제 사용 가능한 옵션이 있습니다. 부팅 파티션에 설치되었으며 이제 하드 드라이브에서 부팅 할 수 있습니다.sda1sda4/boot/

  4. 궁금해서 더 조사하기로 결정했습니다. 부팅 복구 로그에는 내 sda1ext4 파티션에 고유 한 항목 DOS이 있었으며 blkid에서보고 한 UUID 대신 짧은 8 자 UUID로보고되었습니다. grub-probe파일 시스템을 vfat로보고했습니다.

  5. 다른 많은 시도 후에 나는 440 바이트의 sda1파티션 레코드를 지웠다 . Grub-probe이제 파일 시스템을 ext2로보고합니다. Ran update-grubsda1파티션에 대한 올바른 UUID 가 나타납니다.

문제는 두 가지로 보인다 :
1. 파티션 레코드가 msdos를 참조하는 설치에 영향을주는 것 같다.
2. grub-probefs 유형과 파티션 레코드 내용의 불일치 문제를 해결하지 않습니다.


1

확인해야 할 또 다른 사항은 BIOS의 부팅 순서입니다. 분명히 모든 디스크에 grub이 설치되어 있었을 것입니다 (아마 8128의 답변을 따랐을 때).하지만 Linux 배포판 (Debian)을 업데이트 할 때 고장났습니다. Linux OS에서 수정 한 첫 번째 부팅 디스크 변경


0

Kubuntu 13.10으로 업그레이드하는 동안이 오류가 발생했습니다. dist 업그레이드 중에 USB 포트에 메모리 스틱이 꽂혀있었습니다. 재부팅 후 Grub Rescue로 바로갔습니다. USB 드라이브를 분리하고 재부팅하면 문제가 해결되었습니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.