디렉토리에 APFS Fast Directory Sizing이 활성화되어 있는지 어떻게 알 수 있습니까?


10

Apple File System Guide에있는 Apple의 기술 문서에서는 일부 디렉토리 /tmp는 빠른 디렉토리 크기 조정 기능에 적합하지 않다고 설명 합니다.

빠른 디렉토리 크기 조정은 컨텐츠가 추가 및 제거 될 때 디렉토리의 크기를 사전 계산하여 작동합니다. 따라서 많은 파일을 포함하고 상대적으로 변경이 적은 디렉토리에 가장 적합합니다. 예를 들어, 사용자의 Documents 폴더는 빠른 디렉토리 크기 조정에 적합하지만 /tmp디렉토리는 그렇지 않습니다.

주어진 디렉토리에이 디렉토리가 활성화 또는 비활성화되어 있는지 어떻게 알 수 있습니까? 그래서 집중적 인 "이탈"작업을 수행 할 위치와 해당 작업을 수행하지 않을 위치를 선택할 수 있습니까?

답변:


1

우리는 애플이 최근 APFS에 대한 더 많은 기술적 세부 사항을 발표 한 이래로 이전 답변이 약간 벗어난 것을 알고 있습니다. 빠른 디렉토리 크기 조정은 실제로 디렉토리별로 활성화되며 사용자가 쉽게 확인할 수는 없습니다. 디렉토리가 비어있을 때만 사용할 수 있으며 모든 새 서브 디렉토리에 대해서도 켜져 있어야합니다. 세부 사항 : https://developer.apple.com/support/apple-file-system/Apple-File-System-Reference.pdf

관련 견적

파일이나 다른 디렉토리를 포함하는 디렉토리에서는 빠른 디렉토리 크기 조정을 직접 사용할 수 없습니다. 대신 먼저 새 디렉토리를 작성하고 빠른 디렉토리 크기 조정을 사용 가능하게 한 후 기존 디렉토리의 컨텐츠를 새 디렉토리로 이동해야합니다.

FDS를 활성화하려면이 플래그를 설정해야합니다.

INODE_MAINTAIN_DIR_STATS : 아이 노드는 모든 자식의 크기를 추적

macOS 가이 플래그를 적절한 위치에서 자동으로 켜는 지 여부는 여전히 불분명하지만 초기 실험으로 아직 사용되지 않았다고 생각합니다. 향후 MacOS 업데이트에 사용될 것이라고 가정합니다.


0

짧은 답변

FDS는 APFS 형식의 드라이브에서 파일 시스템의 기본 부분입니다. 사용자가 활성화 / 비활성화 할 필요가 없으며 다른 디렉토리가 아닌 한 디렉토리에 적용 할 수있는 것이 아닙니다.

'올인'시나리오이므로 디렉토리에 FDS가 활성화되어 있는지 확인하기위한 터미널 명령이 없습니다. 대신 드라이브가 APFS 형식으로 포맷되면 FDS가 활성화됩니다. APFS 형식으로 포맷되지 않은 경우 FDS를 사용할 수 없습니다.

긴 답변

불행히도, Apple의 기술 문서에서 인용 한 정보는 잘못 표현되어 있으므로 질문의 이유가 있습니다.

드라이브가 APFS 형식으로 포맷 된 경우 Fast Directory Sizing이 보드 전체에 적용됩니다. FDS는 사용자가 디렉토리별로 활성화 / 비활성화 할 수있는 것이 아닙니다.

이 때문에 사용자가 디렉토리별로 디렉토리 상태를 확인할 수있는 것도 아닙니다. 즉, 드라이브가 APFS로 포맷 된 경우 모든 디렉토리에 FDS가 활성화되어 있습니다.

혼란이 생기는 곳 (이 경우에는 이해할 수있는 부분)은 Apple 문서에서 만든 단어와 모호한 단어의 잘못된 선택입니다. 이 정보가 전달하고자하는 것은 사용자는 파일이 많지만 변경이 거의없는 디렉토리 (예 : 사용자의 문서 폴더)에서 FDS의 이점을 가장 많이 누리지 만 디렉토리의 FDS에서 큰 이점을 얻지 못한다는 것입니다 /tmp폴더 처럼 .

또한, 참조한 문서는 Apple 파일 시스템 정보 페이지 로 대체되었습니다 . 이 페이지에서 FDS에 대한 유일한 언급은 다음과 같습니다.

Apple File System은 복제, 스냅 샷, 공간 공유, 빠른 디렉토리 크기 조정, 원자 안전 저장 및 스파 스 파일을 포함한 몇 가지 새로운 기능뿐만 아니라 향상된 파일 시스템 기본 사항을 제공합니다.

더 설명하려는 시도가 없습니다 무엇 은 근본적인 (읽기의 사실을 넘어 수단 FDS 기본 ) 기능. 그러나 일부 배경에 관심이 있다면 :

HFS +의 복잡하고 깊은 디렉토리 구조에서 우리는 파일 시스템이 파일 시스템 트리의 크기를 계산하는 데 소비 할 수있는 시간에 익숙합니다. 이것이 시스템이 멈추는 일반적인 이유 중 하나입니다. APFS와 함께 Apple은 파일 시스템이이 문제를 제거하기 위해 디렉토리 계층에서 사용하는 공간을 빠르게 계산할 수있는 FDS (Fast Directory Sizing)를 도입했습니다.

출처 : Hansen, KH, Toolan, F., APFS 파일 시스템 디코딩, 디지털 조사 (2017)


드라이브가 APFS로 포맷 된 경우 모든 디렉토리에 FDS가 활성화되어 있습니까? 이 의견 은 디렉토리가 아이 노드 단위로 설정되어 있으며, 그러한 디렉토리를 먼저 작성한 다음 항목을 디렉토리로 이동해야 함을 제안합니다. 확실히 내 시스템에서는 폴더 크기가 Finder에서 전혀 빠르게 표시되지 않는 것 같습니다 (업그레이드 된 시스템이 아니라 새로 설치).
wincent

슬프게도, 이것은 명백한 잘못이며 업데이트되어야합니다. 에 대한 설명서를 참조하십시오 j_inode_flags에서 애플 파일 시스템 참조 . 실제로 디렉토리 inode 데이터 구조를 사용하면 디렉토리 별 인스턴스에서이 기능을 활성화 또는 비활성화 할 수 있습니다. 이 답변에 명시된대로 모든 디렉토리에서이 기능이 자동으로 활성화되는 것은 없습니다.
Feuermurmel

이 의견은 반복적이고 다소 혼란스럽고 완전히 틀렸다. 질문의 인용구는 "나쁘게 표현되지 않았습니다"; 그들은 분명히이 답변과 호환되지 않습니다.
Matthias Winkelmann
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.