장치가 사용 중이라고 읽었을 때 파티션을 fsck하려면 어떻게해야합니까?


11

fsck -p /dev/sda5ext4 파티션의 오류를 복구 하기 위해 실행하려고 하지만 명령이 출력됩니다.

fsck from util-linux-ng 2.17.2
fsck.ext4: Device or resource busy while trying to open /dev/sda5
Filesystem mounted or opened exclusively by another program?

내가 사용 확인했습니다 /etc/mtablsof그 아무것도 파티션을 사용하지 않으며이 장착 아니에요. 또한 fuser -k /dev/sda5파일을 사용하여 모든 것을 강제로 닫고 아무 umount때나 마운트 해제하려고 시도했습니다.

fsck파티션이 바쁘다는 사실에도 불구하고 파티션을 최소한 확인하고 복구 하도록 하려면 어떻게 해야합니까? 마운트되지 않았거나 사용 중이 아니며 데이터 손상 가능성은 문제가되지 않는다고 확신합니다.

모든 명령은 Ubuntu 10.04 32 비트 liveCD에서 루트로 실행되었습니다. 파티션은 Ubuntu 10.04 32 비트 설치의 시스템 (비홈) 부분입니다.


이 질문과 관련하여 더 큰 문제를 해결하는 방법을 찾았지만 여전히 장치가 사용 중이라고 fsck생각하거나 수행 할 수없는 이유 를 강요하는 방법에 대한 답변을 찾고 있습니다.
Keeblebrox

RHEL5.8 시스템에서 동일한 문제가 발생합니다. / tmp가 마운트 해제되었습니다. / etc / mtab 및 / proc / mounts는 파일 시스템의 흔적을 보여주지 않습니다. 나는 심지어 컴퓨터를 재부팅했는데, 내가 로그온 한 유일한 사람인지 확인했다. lsof는 / tmp에서 사용중인 파일을 표시하지 않습니다. 동일한 절차는 동일한 킥 스타트 프로파일을 사용하여 설치된 4 개의 유사한 서버에서 제대로 작동합니다. 이러한 서버와이 서버의 차이점은이 서버에 SAN 스토리지가 연결되어 있다는 것입니다. 다중 경로 데몬으로 인해이 문제가 발생할 수 있습니까?
Bram

필자의 경우 도움이되지 않았지만 Red Hat KB ( access.redhat.com/knowledge/solutions/54184 )는이 문제에 대한 해결 방법으로 nodmraid 커널 옵션을 추가 할 것을 권장합니다.
Bram

답변:


4

파일 시스템을 바쁘게 유지할 수있는 것들 (보통 NFS 스레드, 스왑 파일, 바인드 마운트 등)이 있습니다 fuser.

fsck마운트 된 파일 시스템을 사용 하려고 하면 파일 시스템이 손상됩니다. Knoppix 또는 Fedora와 같은 파일 시스템을 자동으로 마운트하지 않는 라이브 CD를 찾아야합니다.


지금까지 라이브 디스크에서 모든 것이 실행되었습니다. 나는 fsck로컬 파일 시스템을 사용 하려고 노력 하고 있기 때문에 NFS가 NFS를 바쁘게 유지하지 않기를 바랍니다. 그러나 커널이 반드시 표시되지 않는 방식으로 바쁘게 유지한다는 것에 대해 말하고 있습니다. 그래도 여전히 라이브 디스크 환경에서 발생하기 때문에 커널을 실행하기에 오랫동안 커널이 액세스하지 못하게하는 방법을 알고 fsck있습니까?
Keeblebrox

Yikes. 라이브 디스크에서 사용 중입니까? 두 가지만 생각할 수 있습니다. 1) 다른 라이브 디스크 (예 : 우분투 대신 페도라)를 사용해보십시오. 2) 실제 시스템에서 / etc / fstab을 확인하십시오. 스왑 파일이나 바인드 마운트가 자동으로 설정되어 있습니까? 순서대로 반드시 그런 것은 아니지만 다음을 추가 할 수도 있습니다.
Steven Pritchard

좋아, 어떻게 든 질문의 마지막 줄을 완전히 놓쳤다. 내 답변을 적절하게 업데이트했습니다.
Steven Pritchard

+1 자동 마운트 스왑에 대한 언급은 관련이 없었으며 응답이 더 큰 문제를 해결하는 데 도움이 되었기 때문에 +1입니다. fsck장치가 사용 중이 아니거나 탑재되지 않았거나 데이터 손상이 문제가되지 않을 때 강제 할 방법을 찾고 싶습니다 .
Keeblebrox

mdadm이 파티션에서 RAID 서명을 감지하여 바인딩했을 수 있습니다. / proc / mdstat를 확인하십시오.
psusi

4

파티션을 제거 fstab하고 머신을 재부팅 할 수 있습니다


2

다른 liveCD로 부팅 해보십시오- 리눅스 설치 문제를 해결하기 위해 특별히 고안된 SystemRescueCD 를 추천 합니다. 또한 일반적인 OS liveCD보다 작습니다. 그리고 안전한면에 있으 fsck려면 콘솔에서 실행 하십시오 (X 없음).

표준 fsck -p이 작동하지 않으면 시도해 볼 수도 있습니다 e2fsck -y -f.


에 따르면 man 페이지 , e2fsck -y -f깨끗한 파티션에 체크를 강제로. 마운트 된 파티션에 대해서는 언급하지 않습니다. 그때도 강제 점검을하는지 아십니까?
Keeblebrox

아마도 그렇지는 않지만 fsck-ing 마운트 파일 시스템을 피해야합니다 ( e2fsck맨 페이지 맨 위의 단락 참조 ). 또 다른 생각 : /etc/mtab파티션이 마운트되지 않았지만 여전히 오류가 발생 /proc/mounts하는 경우 mtab파일이 이상한 이유로 오래 되었을 수 있으므로를 확인해야합니다 .
rozcietrzewiacz

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