갑자기 Linux를 실행하는 노트북에서 DRDY ERR이 발생하기 시작했습니다. 일부 메시지는 다음과 같습니다..
ata1:00: status: { DRDY ERR }
ata1.00: error {UNC }
ata1:00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata1:00: BMDMA stat 0x25
ata1:00: failed command: READ DMA
마침내 실행 수준을 입력하라는 명령 프롬프트가 표시되고 그 후에는
INIT: no more processes left in this runlevel
HDD 충돌이 의심되어 꺼내서 다른 PC에서 외장 USB HDD 드라이브로 사용했는데, 그 안의 모든 파티션과 파일을 마운트하고 볼 수 있었습니다. 그래서 저는 디스크가 괜찮다고 생각합니다.
[편집/업데이트]
또한 Linux가 설치된 USB 펜 드라이브에서 노트북으로 부팅할 수 있으며 디스크의 모든 파티션을 보고 액세스할 수도 있습니다.
또한 HDD를 꺼내 외부 케이스에 넣고 동일한 노트북으로 부팅을 시도했지만 다른 오류가 발생했습니다.
end_request: critical target error, dev sda, sector 32839936
EXT4_fs error: (device sda5): ext4_find_entry:935: inode #393217: comm init: reading directory lblock 0
INIT: No inittab file found
Enter runlevel:
그래서 HDD는 저장장치로 사용할 수는 있지만 부팅할 수는 없는 것 같아요. 해당 HDD의 파티션 구성표는 다음과 같습니다. 도움이 될 것 같습니다. (GPT 구성표)
partition FileSystem size flags
--------- ----------- ---- -----
/dev/sda1 unknown 2.00MB bios_grub
/dev/sda2 ext2 128MB # was supposed to be common boot partition for chain loading
/dev/sda3 swap 1.5GB
/dev/sda4 ext4 8GB # Linux 1 (somehow, Grub does not show this in the menu, cannot boot into)
/dev/sda5 ext4 8GB # Linux 2 (I could only boot into this one from Grub.)
/dev/sda6 ext4 94GB # DATA
unallocated _ 1MB
나는 Linux를 하나씩 설치했고 실제로 Grub을 /dev/sda2에 설치하고 Linux 1 & 2를 체인로드하고 싶었지만 그렇게 하기 전에 이 문제에 부딪혔습니다!
어떤 아이디어가 있나요? 솔루션?
[업데이트 2]
- 문제 제목이 더 이상 적용되지 않습니다 *
USB로 부팅하고 모든 파티션에 대해 'fsck'를 수행했습니다. /sda5를 제외한 모든 항목이 깨끗한 것으로 보고되었습니다. /dev/sda5에서 많은 오류(아마도 약 200개)를 보고했는데 모든 프롬프트에 계속 'y'만 입력했습니다. 그 사이에 ''lost+found' 연결....'과 같은 메시지가 있었습니다. 모든 파티션에서 실행 2를 통과한 후 HDD에서 재부팅했을 때 최신 오류는 다음과 같습니다.
INIT: verision 2.88 booting
INIT: No inittab file file found
Enter runlevel:
OS 인스턴스를 다시 가져와서 부팅할 수 있을 것 같나요?
답변1
보고한 첫 번째 오류:
ata1:00: status: { DRDY ERR }
ata1.00: error {UNC }
ata1:00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata1:00: BMDMA stat 0x25
ata1:00: failed command: READ DMA
READ DMA
ATA 포트 1의 디스크에 대한 ATA 명령이 실패했음을 나타냅니다 (상태 ERR
에는오류). 해당 포트는 하드 디스크일 가능성이 높으며 오류는 문제가 있는 드라이브를 가리킵니다. 해당 DMA
부분은 무시될 수 있습니다. DMA는직접 메모리 액세스요즘 가장 많이 사용되는 전송 모드입니다. RAM이나 RAM 버스에 문제가 있어서 그런 문제가 반복적으로 발생하는 경우 시스템이 전혀 작동할 수 있다면 훨씬 더 많은 오류가 나타날 가능성이 높습니다. .
두 번째 오류:
end_request: critical target error, dev sda, sector 32839936
EXT4_fs error: (device sda5): ext4_find_entry:935: inode #393217: comm init: reading directory lblock 0
INIT: No inittab file found
device sda5
/dev/sda, 섹터 32839936에 몇 가지 문제가 있다고 말합니다. 이 문제는 512바이트 섹터를 사용하여 물리적으로 /dev/sda5 파티션의 끝 부분에 이르게 하며 파일 시스템 드라이버에서 보고한 것과 합산됩니다 . 파일 시스템 드라이버의 오류 세부 정보와 함께 에서 보고된 오류는 init
/etc/inittab을 사용할 수 없거나 읽을 수 없게 만드는 파일 시스템 문제를 가리킵니다. 이는 루트 디렉토리, /etc 디렉토리 또는 /etc/inittab 파일 항목이 어떻게든 손상과 관련되어 있음을 의미합니다. inode 번호가 주어지면 잘못된 것으로 입증될 때까지 /etc/inittab을 범인으로 지정하겠습니다.
당신은 (내 강조) 다음과 같이 씁니다:
HDD 충돌이 의심되어 꺼내서 다른 PC에서 외장 USB HDD 드라이브로 사용했는데, 그 안의 모든 파티션과 파일을 마운트하고 볼 수 있었습니다.그래서 저는 디스크가 괜찮다고 생각합니다.
나는 이렇게 말할 것이다당신의 가정은 근거가 없습니다.디스크에 분명히 문제가 있습니다. 운이 좋으면 쉽게 고칠 수 있을 겁니다.
내가 가장 먼저 할 일은귀하의 상황에서는 해당 디스크에 있는 모든 백업을 새로 고치는 것입니다. 가장 최근 백업에서 어떤 것도 덮어쓰거나 삭제하지 않도록 하십시오. 필요한 가능성이 확실히 있기 때문입니다. 아마도 가장 좋은 옵션은 액세스할 수 있는 모든 항목을 새로운(또는 적어도 이전에 자체 백업에 사용되지 않은) 드라이브에 새로 백업하는 것입니다. 복사본을 만드는 동안 소스에서 일부 I/O 오류가 발생할 수 있습니다.
두번째회복을 시도하며 온다. 운 좋게도 오류가 발생하면 이는 단일 섹터 또는 소수 섹터 문제로 인해 소량의 파일 시스템 손상이 발생합니다.e2fsck
~해야 한다대부분의 손상을 복구할 수 있습니다. 일부 파일은 사라졌을 가능성이 높지만 운이 좋으면 파일 시스템 마운트 루트 아래의 /lost+found에서 해당 파일을 찾을 수 있습니다(예를 들어 /dev/sda5를 /에 마운트하는 경우 /data/lost+found를 의미). 데이터) e2fsck가 할 수 있는 작업을 수행한 후. 그렇지 않으면 문제가 시작되기 전의 가장 최근 백업과 비교하고 백업에서 관련 파일을 복원하십시오. (나쁜 일이 발생할 경우 필연적으로 발생하기 때문에 백업이 유용하다고 언급했습니까?)
제삼향후 사용을 위해 드라이브를 신뢰할 수 있는지에 대한 질문이 나옵니다. 일부 불량 섹터는 드라이브의 관점에서 재앙적일 필요는 없지만 크기가 약 100GB인 회전식 드라이브는 오늘날 대부분의 폼 팩터에서 새로 공급될 수 없으며 이는 상대적으로 오래된 드라이브임을 나타냅니다. 개인적으로 나는 이 시점에서 드라이브의 수명이 다했다는 사실을 받아들이고 교체품을 구입하겠지만, 데이터에 관해서는 편집증이 심합니다. 귀하의 마일리지가 다를 수 있습니다. 너는해야 할거야전체 고장 위험과 교체 드라이브 비용 비교드라이브 및 후속드라이브의 모든 데이터가 완전히 손실되었습니다.