btrfs에 대한 경험이 없지만 파일을 중복 제거 할 수 있다고 광고되었습니다.
내 응용 프로그램에서 전체 디렉토리 트리를 복제해야합니다.
내가 배운 내용에서 btrfs는 일부 스캔 후에 만 중복되지 않습니다. 사용하는 cp
것 조차도 중복 제거를 유발하지 않는 것 같습니다 (적어도 df
복사 된 파일 크기에서 디스크 사용량이 증가 함).
데이터 이동을 피하고 btrfs
다른 위치에서 파일을 복제하도록 지시 할 수 있습니까? 본질적으로 메타 데이터를 복제하는 것입니까?
본질적으로, 하드 링크와 유사하지만 독립적 인 메타 데이터 (허가, 수정 시간, ...)가 있습니다.
이것은 하드 링크와 같은 것이 아닙니다. 의
—
ormaaj
cp --reflink=always
경우 사용자 관점의 결과는 모든면에서 완전히 독립적 인 두 개의 파일입니다. 기본 파일 시스템이 COW (Copy-On-Write)를 통해 구현 세부 사항임을 추상화하고 있습니다. "하드 링크는 아니지만 독립적 인 메타 데이터가 있습니다." 내 지식으로는 btrfs는 아직 자동 중복 제거를 수행하지 않습니다. 나는 그것이 미래의 계획이라고 생각하지만 나는 그것에 긍정적이지 않습니다.
@ormaaj-하드 링크에는 독립적 인 메타 데이터 가 없습니다 . 그리고 Udo는 구현 세부 사항을 요구했다 . 파일에 대한 리퍼 링크를 수행 할 때는 본질적으로 메타 데이터를 복제합니다 . 참조 가 파일이 분기되는 것을 독립적으로 변경 하는 경우에만 해당됩니다. 이것이 바로 중복 제거의 모든 것입니다!
—
mikeserv
@ mikeserv Er, 중복 제거에는 다른 의미가 있다고 확신합니다. 중복 제거는 이미 존재하는 중복 데이터 사본을 가져 와서 통일하고 있습니다. COW는 중복을 최소화하는 수단이며 중복 제거는 아닙니다.
—
ormaaj
@ ormaaj-나는 그것이 이상한 이야기라고 생각합니다 : 중복 제거는 복제를 최소화하는 것이 아닙니다.
—
mikeserv
cp --reflink=always
.