"디스크 'hd0'외부에서 읽기 또는 쓰기 시도"오류가 발생하여 부팅 복구로 문제가 해결되지 않으면 어떻게해야합니까?


35

구형 컴퓨터에 Xubuntu 13.10 을 설치하려고했습니다 . 설치 중에 문제와 관련이있을 수있는 몇 가지 어려움을 발견했습니다. 특히 :

  1. 화면 해상도가 매우 낮습니다. 창문은 화면보다 훨씬 더 커서 "다음"버튼으로 이동하기 위해 창을 움직여야했습니다.

  2. 마우스 커서는 항상 깜박 거리는 색상의 흐림이었습니다.

설치가 완료되었고 컴퓨터를 재부팅하려고했습니다. 즉시 나는 얻었다 :

error: attempt to read or write outside of disk 'hd0'. 
Entering rescue mode... 
grub rescue>

내가 만든 부팅 복구 , USB 디스크를 부팅 및 기본 수리를 선택했다. 응용 프로그램은 문제가 복구되었다고 말했지만 이것이 문제를 해결하지 못하면 저를 도울 수있는 사람 에게이 링크 를 보여줘야한다고 말했습니다.

다음에 어떻게해야합니까? 나는 이미 우분투와 Xubuntu를 성공적으로 설치하려고 시도했다.

편집하다:

해결 방법을 찾았습니다.

  1. Xubuntu 라이브 USB 삽입
  2. "Xubuntu 시도"를 선택하십시오
  3. 설정 메뉴에서 "Xubuntu 설치"를 선택하십시오

이것은 나를 위해 문제를 해결했습니다. 해결되었으므로 답을 테스트 할 수 없습니다.


답변:


36

다음 기술의 도움으로 리눅스가 존재하는 파티션을 찾으십시오.

grub rescue > ls
(hd0) (hd0, msdos9)
grub rescue > ls (hd0,msdos9)/
grub rescue > ls (hd0,msdos8)/
grub rescue > ls (hd0,msdos5)/ # suppose this is root and bootloader of linux
grub rescue > ls (hd0,msdos5)/
grub rescue > set root=(hd0,msdos5)
grub rescue > set prefix=(hd0,msdos5)/boot/grub
grub rescue > insmod normal
grub rescue > normal

이제 시스템의 부팅 메뉴가 나타납니다. 리눅스로 부팅하십시오.

sudo update-grub
sudo grub-install  /dev/sda # If the drive is hd0 the equivalent is sda, if it's hd1 then use sdb

이것은 부트 로더를 수정합니다.


17
이것이 무엇을해야하는지 모르겠습니다. 당신은 많은 명령의 지옥을 지정합니다. 좀 더 설명이 필요한 텍스트를 추가하십시오! 왜 msdos9에서 5로 "카운트 다운"합니까? "이것은 리눅스"라는 것을 어떻게 알 수 있습니까? 내 경우에는 (hd0, msdos1)이 표시됩니다! "카운트 다운"할 수 없습니다. 일단 루트와 접두사를 설정하고 "inmod normal"을 수행하면 이전과 정확히 같은 오류 메시지가 나타납니다. 죄송합니다. 이것은 누구와도 협력 할 수있는 대답이 아닙니다. :(
Zordid

13
입력하자마자 insmod normal"오류 : 파티션 외부에서 읽거나 쓰려고 시도합니다."라는 메시지가 다시 나타납니다.
user643722

2
당신은 "이것은 리눅스이다"라고 말하면서 어떤 리눅스가 어떤 것인지 알 수있는 방법을 말하지 않고 말합니다. insmod normal을 입력 할 때마다 "오류 : 알 수없는 파일 시스템"이 다시 표시됩니다. 또한 왜 이런 일이 발생하는지 설명 할 수 있습니까?
msknapp

1
내가 얻은 최고는 또 다른 grub 프롬프트입니다. 메뉴가 나타나지 않습니다.
jbo5112

2
@Zordid에 동의합니다.이 명령의 기능에 대한 설명이없는 암호 명령 목록만으로는 충분하지 않을뿐만 아니라 잠재적으로 위험 할 수 있습니다.
Johsm

27

이 문제가있는 다른 사람 :

이것은 새로운 설치 또는 grub 복구가 작동하고 재부팅되는 위치에서 발생했지만 다음에 재부팅 할 때 이와 동일한 "오류 읽기 시도"가 발생합니다. 대부분의 경우 커널 패닉이 발생하고 컴퓨터를 강제로 다시 시작해야합니다.

몇 가지 조언을 따라 다음 파티션 설정을 사용하여 고급 옵션 ( "디스크 지우기 및 우분투 설치 사용하지 마십시오")을 사용하여 새로 설치했습니다.

  1. 디스크 시작 부분 에 1GB (1024MB) ext4 파티션을 작성하십시오 . "/ boot"에 마운트
  2. 스왑 영역을 빼고 "/"에 마운트 된 ext4에 원하는 설치 공간을 만듭니다.
  3. 스왑을 위해 남은 공간을 사용하십시오. (모든 파티션이 기본이됩니다)
  4. 부팅 설치 드롭 다운 메뉴에서 "/ boot"파티션을 선택하십시오. 기본 드라이브 루트가 아닙니다!

수락 된 답변의 명령에 "파일 시스템이 인식되지 않습니다"라는 메시지가 표시되면 나에게 도움이되었습니다. 나는 동일한 파일 시스템 세트를 사용했지만이 작은 전용 / 부팅 파티션으로 문제가 해결되었습니다. 감사.
GregHNZ

/ boot가 유일한 주 파티션 인 경우에도 작동하는 것 같습니다.
Aaron Mason

이 사이트에 가입하여 이것이 저에게도 효과가 있다고 말했습니다. 작은 부팅 파티션은 외부 HDD에 Ubuntu를 배치 할 때이 기능을 사용하는 데 필요했습니다. 감사!
rayryeng-복원 모니카

그것은 나를 도왔다 : 나는 큰 (> 5TB) / 파티션을 가지고 작은 / boot 파티션을 추가하여 문제를 해결했다
neutrinus

기존 파티션을 삭제하지 않고이 작업을 수행 할 수 있습니까? 디스크 시작 부분부터 모든 데이터가있는 큰 파티션이 있습니다.
pir

6

Grub 복구 프롬프트를 통해 쉽게 해결할 수 있습니다. 첫 번째 답변은 완전히 완료되지 않았으며 처음에는 동일한 오류가 발생했습니다. 작동 방식은 다음과 같습니다.

1 차 파티션을 찾아야합니다. 이것은 리눅스 부팅에 필요한 필수 파일이 위치 할 곳이므로 다음과 같이 입력하십시오 :

Grub> ls

이제 (hd0) (hd0, msdos5) (hd0, msdos1)과 비슷한 목록이 표시됩니다. 여러 드라이브뿐만 아니라 나 자신과 다른 파티션을 가질 수 있지만 프로세스는 동일합니다.

이제 파티션을 검색하여 기본 파티션을 찾으십시오.

Grub> ls (hd0)
Grub> ls (hd0,msdos5)
Grub> ls (hd0,msdos1)

grub이 해당 파티션의 파일 목록을 출력하거나 파일 시스템 유형과 마지막 수정 날짜를 표시 할 때까지.

두 번째로 기본 파티션을 찾았 으면 몇 가지 사항을 설정해야합니다.

Grub> set prefix=(hd0,msdos1)/boot/grub
Grub> set root=(hd0,msdos1)
Grub> set

마지막 set 명령이 실행되면 Grub은 다른 매개 변수 목록을 출력합니다. 이제 올바른 루트와 접두사를 설정했는지 확인하십시오.

Grub> ls /boot

Grub은 / boot에 포함 된 파일 목록을 출력해야합니다.

셋째, 마운트 지점을 설정하고 커널을로드해야합니다.

Grub> linux /vmlinuz root=/dev/sda1
Grub> initrd /initrd.img

마지막으로 시스템을 부팅합니다.

Grub> boot

busybox 쉘로 부팅을 마치면 간단히 입력하십시오 fsck /dev/sda1. 그 후 그냥 들어가면 exit시스템이 정상적으로 부팅됩니다.


내 생명을 구했습니다
Timmah

3

Linux 파티션을 하드 디스크의 시작 부분으로 이동하여이 문제를 해결했습니다. 리눅스 파티션이 내 120Gb HDD (끝에서 40Gb)의 끝에있을 때이 문제가 발생했습니다. 하나의 솔루션이 작동하지 않았습니다. 리눅스 파티션을 40Gb에서 80Gb로 공간으로 옮긴 후 문제가 사라졌습니다.


1
리눅스 파티션을 디스크의 시작 부분으로 옮기는 방법은 무엇입니까?
pir

1

많은 시간을 검색 한 후이 솔루션을 시도하고 커널을 다시 설치하는 것이 좋습니다.

sudo dpkg --configure -a
sudo apt-get install --reinstall linux-image-$(uname -r)

0

virt-manager / QEMU / KVM의 OVA 가상 머신 패키지에서 vmdk 디스크를 사용하면이 문제가 발생 합니다. 이 오류 메시지와 함께 가상 머신이 실패했습니다.

해결책은 vmdk를 qcow2로 변환하는 것입니다.

qemu-img convert -O qcow2 MyAppliance-disk1.vmdk MyAppliance.qcow2

virt-manager에서 변환 된 이미지를 대신 사용하십시오.


0

Dell 서버에 Ubuntu 18 Server 및 Xubuntu 18을 설치하려고 할 때이 문제가 발생했습니다. BIOS 메뉴에서 Legacy 대신 UEFI를 선택하면 문제가 해결되었습니다.

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