fsck를 정기적으로 실행해야 하는 이유는 무엇입니까?

fsck를 정기적으로 실행해야 하는 이유는 무엇입니까?

일부 시스템은 며칠 또는 너무 많은 마운트 후에 부팅할 때마다 fsck를 실행합니다. 예를 들어,Linux 서버를 얼마나 자주 다시 시작해야 합니까? - 서버 장애그들은 이 목표를 달성하기 위한 다양한 전략을 논의했습니다. 이것이 왜 필요한가요? 배경 지식이 없으면 전략을 선택하기가 어렵습니다.

존재하다Marc의 블로그: btrfs - Btrfs 팁: Btrfs 정리 및 Btrfs 파일 시스템 복구, 저자는 파일 시스템이 있으면 필요하지 않다고 주장합니다 btrfs.데이터 저하 - Wikipedia그들은 비슷한 자가 치유 능력에 대해 논의했습니다 zfs. 어쩌면 이것이 ext4특정 요구 사항일까요?

존재하다무결성 드라이브 - 자동 데이터 손상 허용 범위가 0으로 설계되었습니다.그들은 우주선이 원반의 요인이 아니라고 제안했습니다. 그러나 CPU의 손상된 데이터가 디스크에 지속되어 실행의 필요성을 부분적으로 설명합니까 fsck? 그래도 fsck토론은 거의 못 봤어요통계 - 우주선: 우주선이 프로그램에 영향을 미칠 확률은 얼마입니까? - 스택 오버플로.

답변1

ZFS와 Btrfs의 기본 아이디어는 각 블록을 두 번 이상 저장하고 각 블록의 포인터에 체크섬이 있다는 것입니다.

오류가 발생하면 체크섬을 사용하여 어떤 블록이 양호한 블록인지 결정합니다. 정리는 각 블록이 정상인지 확인하는 백그라운드 작업입니다(체크섬 비교). 그러면 모든 것이 확인됩니다.

Fsck는 덜 심층적인 검증입니다. 일반적으로 일관되지 않은 메타데이터가 있을 수 있는 파일 시스템에서 사용됩니다. 예를 들어, 무료로 표시된 블록이 파일 및 기타 유사한 문제에 의해 사용되지 않는지 확인합니다. 이는 전원 부족, 커널 패닉 또는 기타 유사한 문제로 인해 파일 시스템이 손상될 수 있는 경우 수행됩니다. 요즘 파일 시스템에는 이러한 불일치를 방지하는 저널링 기능(또는 기록 중 복사와 같은 기타 기능)이 있습니다. 데이터 저하가 발생하지 않는 한 대부분의 경우 Fsck는 더 이상 필요하지 않습니다(그러나 Fsck는 매우 제한적입니다). 참고: FAT에는 로깅 기능이 없습니다. 실수로 USB 드라이브를 제거한 경우 fsck를 실행해야 할 수도 있습니다.

관련 정보