![파일 크기는 컴퓨터마다 다릅니다.](https://linux55.com/image/8035/%ED%8C%8C%EC%9D%BC%20%ED%81%AC%EA%B8%B0%EB%8A%94%20%EC%BB%B4%ED%93%A8%ED%84%B0%EB%A7%88%EB%8B%A4%20%EB%8B%A4%EB%A6%85%EB%8B%88%EB%8B%A4..png)
제가 하나 가지고 file
있는데 크기를 알고 싶습니다. 컴퓨터 1에서는 다음을 얻습니다.
$ ls -lh file
> -rw-r--r--. 1 user group 441 May 30 15:41 file
컴퓨터 2에서는
$ ls -lh file
> -rw-r--r--. 1 user group 441 May 30 15:41 file
좋아요 그들은 동의한다. 파일 크기는 441바이트입니다. 하지만 이제 du
컴퓨터 1에서는 다음을 사용합니다.
$ du -h file
> 1.0K file
컴퓨터 2에서:
$ du -h file
> 32K file
왜 그들은 동의하지 않습니까? 파일 시스템의 클러스터 크기와 관련이 있다고 생각합니다. 이제 전체 크기가 수백 메가바이트인 여러 하위 폴더와 파일이 포함된 폴더는 컴퓨터 1의 크기보다 컴퓨터 2의 크기가 약 두 배 더 큽니다. 머신 2에서 클러스터 크기를 사용하는 이유는 무엇입니까? 일반적인 파일 크기에 따라 더 많은 공간을 차지합니다.
컴퓨터 1의 파일 시스템은 afs이고 컴퓨터 2의 파일 시스템은 nfs입니다.
답변1
액세스 시간이 느린 저장 장치(예: NFS) 또는 고성능이 필요한 데이터를 저장하는 저장 장치(예: 트랜잭션 수가 매우 많은 데이터베이스 테이블)의 블록 크기에는 최소화하기 위해 더 큰 블록이 있는 파일 시스템 크기가 필요하거나 필요합니다. 디스크 I/O를 수행하여 I/O 성능으로 인한 지연을 최소화합니다. 따라서 블록 크기가 클수록 각 파일 끝에 "느슨한" 공간(즉, 낭비되는 공간)이 발생할 가능성이 높아집니다.