비디오 및 오디오와 같은 큰 파일 및 flac 형식의 파티션에 대한 파일 시스템을 작성할 때 -T largefile 플래그 를 사용하는 것이 유용 합니까?
플래그가 있고없는 플래그로 동일한 파티션을 테스트했으며 tune2fs -l [partition]을 사용하여 "large_file"이 활성화 된 "파일 시스템 기능"을 확인했습니다. 따라서 -T 플래그 largefile 을 사용할 필요는 없습니까?
비디오 및 오디오와 같은 큰 파일 및 flac 형식의 파티션에 대한 파일 시스템을 작성할 때 -T largefile 플래그 를 사용하는 것이 유용 합니까?
플래그가 있고없는 플래그로 동일한 파티션을 테스트했으며 tune2fs -l [partition]을 사용하여 "large_file"이 활성화 된 "파일 시스템 기능"을 확인했습니다. 따라서 -T 플래그 largefile 을 사용할 필요는 없습니까?
답변:
-T largefile
플래그는 파일 시스템의 생성에 할당 된 inode의 양을 조절합니다. 일단 할당되면 번호를 조정할 수 없습니다 (적어도 ext2 / 3의 경우 ext4에 대해 완전히 확신하지 못함). 기본값은 16K 디스크 공간마다 하나의 inode입니다. -T largefile
메가 바이트마다 하나의 inode로 만듭니다.
각 파일에는 하나의 inode가 필요합니다. inode가 남아 있지 않으면 새 파일을 만들 수 없습니다. 그러나 정적으로 할당 된이 inode도 공간을 차지합니다. 기본값과 달리을 설정하여 100GB의 디스크마다 약 1,5GB 를 절약 할 수 있습니다 -T largefile
. -T largefile4
(4MB 당 하나의 inode)는 그러한 극적인 효과가 없습니다.
장치에 저장된 파일의 평균 크기가 1MB를 초과한다고 확신하는 경우 반드시을 설정하십시오 -T largefile
. 스토리지 파티션에서 행복하게 사용하고 있으며 설정이 너무 급진적이지 않다고 생각합니다.
그러나 많은 파일 (수십만 개 생각)의 매우 큰 소스 타르볼을 해당 파티션에 압축 해제하면 해당 파티션에 대한 inode가 부족할 수 있습니다. untar 할 다른 파티션을 선택하는 것 외에는이 상황에서 수행 할 수있는 작업이 거의 없습니다.
다음 dumpe2fs
명령 을 사용하여 라이브 파일 시스템에서 사용 가능한 inode 수를 확인할 수 있습니다 .
# dumpe2fs /dev/hda5
[...]
Inode count: 98784
Block count: 1574362
Reserved block count: 78718
Free blocks: 395001
Free inodes: 34750
여기서도 34 천 개의 파일을 만들 수 있습니다.
다음은 mkfs.ext3 -T largefile -m 0
100GB 파티션에서 수행 한 작업 입니다.
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/loop1 102369 188 102181 1% /mnt/largefile
/dev/loop2 100794 188 100606 1% /mnt/normal
큰 파일 버전에는 102400 개의 inode가 있고 일반 버전에는 6 개의 553600 개의 inode가 생성되어 프로세스에서 1.5GB가 절약되었습니다.
파일 시스템에 어떤 크기의 파일을 넣을지 잘 알면 -i
스위치로 직접 inode 양을 미세 조정할 수 있습니다 . inode 비율 당 바이트 수를 설정합니다. -i 65536
백만 개가 넘는 파일을 만들면서 사용하면 공간을 75 % 절약 할 수 있습니다. 나는 일반적으로 최소 100,000 개의 inode를 여분으로 유지하기 위해 계산합니다.