답변:
에서:
http://linux.die.net/man/8/fsck.ext3
"일반적으로이 실행하기에 안전하지 않다는 주 e2fsck
마운트 된 파일 시스템에. 경우 유일한 예외는 -n
옵션을 지정하고 -c
, -l
또는 -L
옵션의 지정이되지 않습니다.하지만, 그렇게하는 것이 안전 경우에도 인쇄 결과가 e2fsck
있습니다 파일 시스템이 마운트 된 경우에는 유효하지 않습니다. 마운트 된 e2fsck
파일 시스템을 검사해야하는지 여부를 묻는 경우 정답은``아니오 ''입니다. 방법. "
기본적인 문제는 파일 시스템 검사기가 (일반적으로) 파일 시스템의 일부가 아니라는 것입니다. 대신 커널의 파일 시스템 코드와 동일한 디스크를 읽고 쓰는 별도의 프로그램입니다. 결과적으로, 활성 파일 시스템에서 fsck를 실행하면 동일한 데이터 (디스크)를 읽고 수정하는 두 개의 다른 엔티티가 있지만 어떤 방식 으로든 서로 조정되지 않습니다. 다른 사람들이 지적했듯이 그 결과 대부분의 체커는 아무도 파일 시스템 메타 데이터가 실행되는 동안 아무도 변경하지 않을 것으로 기대합니다. 커널 파일 시스템이 체커가 예상하지 못한 것을 변경하면 혼란 스럽거나 가짜 오류를보고합니다.
"온라인"으로 (즉, 파일 시스템이 활성화되어있는 동안) 실행되도록 명시 적으로 설계된 체커가있는 파일 시스템이 몇 가지 있습니다. 최신 버전의 FFS / UFS는 파일 시스템의 최근 스냅 샷 (읽기 전용, 특정 시점, COW (Copy-On-Write) 복제본)에 대해 fsck를 실행하여이를 수행합니다. 할당 비트 맵의 불일치와 같은 문제가 발견되면 원시 디스크에 쓰지 않고 시스템 호출을 통해 문제를 해결합니다. 이를 통해 활성 파일 시스템과 조정할 수 있습니다.
NetApp의 WAFL에는 온라인 검사 도구도 있습니다. 아마도 다른 사람들이있을 것입니다.
읽기 전용 모드에서 fsck를 사용하더라도 파티션 탑재 읽기 / 쓰기에서 fsck를 실행하는 것은 어리석은 일입니다. 파일 시스템은 fsck에서 변경되며 파일 시스템에서 fsck가 캐시하는 메모리 내 데이터는 유효하지 않게되므로 fsck는 불일치를 보게됩니다. 읽기 전용 마운트 파일 시스템에서 fsck를 읽기 전용 모드로 실행하면 유효한 결과를 얻을 수 있습니다. 읽기 전용 마운트 파일 시스템에서 fsck를 읽기 / 쓰기 모드로 실행하면 fsck가 실행 중에 파일 시스템을 변경하면 커널이 파일 시스템 구조가 예기치 않게 변경되는 것을 보게됩니다. 그것은 또한 나쁠 것입니다.