추가 마운트 옵션을 호출하지 않는다고 가정합니다.노다타 소그리고노드 데이터 세트. 아래 시간에만 운행합니다파일 속성lsattr
레벨은 / 에 의해 제어됩니다 chattr
.
- 설정 여부아니요_COW파일에 (
chattr +C
)은 데이터 체크섬을 비활성화한다는 의미입니까? 마운트 옵션(노다타 소힌트노드 데이터 세트). - 새로 작성된 범위에 대해서만 체크섬을 비활성화하고 기존 범위를 계속 읽을 수 있습니까?
답변1
1. 네, 설정했어요아니요_COW존재하다비어 있는파일은 실제로 데이터 체크섬을 비활성화하기 위한 것입니다.
이는 데이터와 체크섬을 자동으로 업데이트할 수 없기 때문입니다. 쓰기 프로세스 중 특정 시점에 일관성이 없어야 하기 때문입니다. 이것은 나쁜 것으로 간주됩니다.
환경아니요_COW존재하다비어 있지 않음현재 파일을 생성할 수 없습니다(#2 참조).
결론은 파일별로 CoW를 비활성화하면 해당 파일의 체크섬 정확성도 상실된다는 것입니다. 이것은 Btrfs의 새로운 사용자에게는 분명하지 않으며 다음 항목에 추가되어야 한다고 생각합니다.Btrfs 위키.
2. 아니요,아니요_COW에서는 설정할 수 없습니다.비어 있지 않음파일이므로 chattr +C
범위의 체크섬이 트리거될 수 없습니다.
범위가 없는 파일에만 +C를 효과적으로 설정할 수 있습니다.
따라서 정의에 따라 파일에는 기존 체크섬 범위가 없습니다.
이 답변은 다음 내용의 요약을 기반으로 합니다.Btrfs 메일링 리스트 토론.