한계가
중첩 된 서브 디렉토리의 깊이가 아니라 (수십개, 심지어는 그 이상을 가질 수 있지만) 파일 시스템과 그 할당량에 달려있다.
매우 긴 파일 경로를 사용하는 것은 불편하며 약간 비효율적 일 수 있습니다. 프로그래밍 방식으로 수백 또는 수천 자의 파일 경로가 가능합니다. 그러나 인간의 두뇌는 그러한 긴 파일 경로를 기억할 수 없습니다.
대부분의 파일 시스템 (Linux)은 inodes의 수에 고정 된 제한이 있습니다.
일부 파일 시스템은 1 만 개의 항목이 들어있는 디렉토리에서 제대로 작동하지 않습니다 (예 : 검색이 2 분법이 아닌 선형이기 때문에). 그리고 당신은 그들을 다루는 데 어려움을 겪습니다 (예 : ls *
도 출력이 너무 깁니다). 따라서, 당신이 사용자의 수천이있는 경우 자신의 디렉토리에 각각, 당신은 가령 할 수 있습니다 /somepath/z9999
... /somepath/a/0001
... /somepath/z/9999
대신 /somepath/a0001
의 가지고 현명 할 수있다 사용자를 이니셜별로 그룹화합니다 (예 :
엄지 손가락의 편리한
규칙이있을 수 있습니다 ... /some/path/A/userAaron/images/foobar
가지고 /some/path/B/userBasile/images/barfoo
등 그래서 /some/path/A/
는 등 하위 디렉토리의 수백 것 : 피하기는 수백보다 더있는 것은 -either 하위 디렉토리 나 파일 - 엔트리 각 디렉토리에. 일부 웹 응용 프로그램은 SQL 데이터베이스의 개별 행에 작은 데이터 청크를 저장하고 큰 데이터 청크의 경우 파일 이름 (생성 될 수 있음)을 사용하여 파일 경로를 데이터베이스에 저장합니다. 대부분 수십 바이트 만있는 수백만 개의 파일을 갖는 것은 효율적이지 않습니다.
일부 시스템 관리자는 파일 시스템에 quotas도 사용하고 있습니다.
나는 상한선이 없다고 생각합니다. 2^32의 값을 기대하십시오. 2^16조차도 제정신이 아닙니다.다른 문제가있을 수 있습니다. –
@JanDvorak 당신은 pls 수 있습니다. 설명? –
제 말은, "폴더 당 최대 하위 폴더 수"에 도달하기 오래 전에, 디렉토리 목록이 매우 오래 걸릴 것입니다 (SSH를 통해 수백 개의 하위 폴더가있는 폴더를 나열하면 안심할 수 있습니다). 디스크 공간이 부족합니다. –