마운트 옵션 space_cache=v2는 무엇입니까?

마운트 옵션 space_cache=v2는 무엇입니까?

"BTRFS를 사용한 Debian 12 Bookworm 최소 설치"작성자: JustAGuy Linux 시간: 8:28SSD 옵션을 설정했는데,

mount -o ... space_cache=v2 ...

옵션은 무엇입니까 space_cache=v2? 언제 사용해야 하고 언제 사용해서는 안 됩니까? 에 문서화되어 있는 것을 볼 수 없습니다 man mount.

답변1

너는 볼 수있어spache_cache여기에 녹음하세요하지만 한 가지 주목할 점은버전 4.5부터 기본값입니다.. 데비안 12는 커널 버전 6.1을 출시합니다. 따라서 기본값만 자세히 설명합니다.

space_cache, space_cache=<version>,nospace_cache (nospace_cache 이후: 3.2, space_cache=v1 및 space_cache=v2 이후 4.5, 기본값: space_cache=v2)

여유 공간 캐싱을 제어하는 ​​옵션입니다. 여유 공간 캐시는 블록 그룹의 여유 공간을 메모리로 읽어올 때 성능을 크게 향상시킵니다. 그러나 공간 캐시를 관리하면 소량의 디스크 공간을 포함한 일부 리소스가 소비됩니다.

여유 공간 캐싱을 구현하는 방법에는 두 가지가 있습니다. v1이라는 원래 버전은 보안 기본 버전이었지만 v2로 대체되었습니다. v1 공간 캐시는 마운트 시 삭제하지 않고 nospace_cache를 사용하여 비활성화할 수 있습니다.

매우 큰 파일 시스템(수 테라바이트) 및 특정 워크로드에서는 v1 공간 캐시 성능이 크게 저하될 수 있습니다. v2 구현에서는 이 문제를 해결하는 자유 공간 트리라는 새로운 B-트리를 추가합니다. 활성화되면 v2 공간 캐시가 항상 사용되며 삭제하지 않는 한 비활성화할 수 없습니다. 이를 수행하려면clear_cache,space_cache=v1 또는clear_cache,nospace_cache를 사용하십시오. v2가 활성화되면 v1 공간 캐시가 지워지고(처음 마운트 시) v2를 지원하지 않는 커널은 파일 시스템을 읽기 전용 모드로만 마운트할 수 있습니다. 마운트되지 않은 파일 시스템에서는 "btrfs check --clear-space-cache"(두 버전 모두)를 통해 캐시를 지울 수 있습니다.

v4.19부터 btrfs-check(8) 및 mkfs.btrfs 명령은 전체 v2 여유 공간 캐시를 지원합니다.

버전이 명시적으로 지정되지 않으면 기본 구현인 v2가 선택됩니다.

관련 정보