약 하루 전에 btrfs 파티션이 작동을 멈췄습니다. 이는 더 이상 마운트할 수 없음을 의미하며, 이것이 바로 Fedora Linux가 더 이상 부팅되지 않는 이유입니다. 실제로 정보가 많지는 않지만 파티션을 확인하려고 하면 Gparted가 다음을 출력합니다.
checking extents
checking fs root
checking root refs
btrfsck: extent_io.c:602:free_extent_buffer: Assertion `!(eb->refs < 0)` failed.
Fedora 18 Live DVD를 사용하여 파티션을 마운트하려고 하면 마운터로부터 SIGSEGV가 표시되고 역시 영향을 받는 알 수 없는 커널 오류가 발생합니다.
이 파티션의 데이터를 복구하는 방법을 알고 있습니까? 아니면 확실히 잃어버린 것입니까?
답변1
증거는 결정적이지 않습니다. fsck가 충돌하므로 희망이 있을 수 있지만 fsck 자체가 수정되어 실제로 파일 시스템 검사를 계속할 수 있을 때까지는 희망이 없습니다.
답변2
먼저 최신 커널을 사용해 보아야 합니다. Fedora 18에는 3.6 커널이 포함되어 있다고 생각합니다. 아마도 최신 커널(3.8)이 포함된 라이브 CD를 찾는 것이 가능할 수도 있습니다.
그런 다음 다음 옵션 중 하나를 사용하여 파일 시스템 마운트를 시도할 수 있습니다.
mount -o clear_cache /dev/sdX /your/mountpoint
(이렇게 하면 Freezspace 캐시가 삭제되어 때때로 btrfs가 마운트를 거부하게 됩니다.)
또는:
mount -o recovery /dev/sdX /your/mountpoint
("오래되었지만 좋은 것으로 알려진" 파일 시스템 루트가 시도됩니다.)
작동하지 않으면 git의 최신 btrfs 도구를 사용하여 btrfsck를 시도해 볼 수 있습니다(직접 다운로드하고 컴파일해야 함).