XFS로 포맷 한 후 ext4보다 여유 공간이 더 필요한 이유는 무엇입니까?


10

1TB 외장 하드 드라이브를 구입했는데 ext4 Nautilus 에서 전체 드라이브를 포맷 한 후 934.3GB의 여유 공간이 있다고합니다.여기에 이미지 설명을 입력하십시오

또한 XFS 에서 드라이브 포맷을 테스트 했으며이 경우 999.7GB의 여유 공간이 있습니다.여기에 이미지 설명을 입력하십시오

XFS가 아닌 ext4의 여유 공간에 60GB 이상이 없는 이유는 무엇 입니까?

답변:


16

EXT3 / EXT4 파일 시스템은 보안 등을 위해 파티션 크기의 5 %를 차지합니다 (예 : "사용 가능한 디스크 공간이없는 디스크"원인).

루트 파티션이 아닌 경우 다음을 수행하여이 5 %를 1 %로 변경할 수 있습니다.

sudo tune2fs -m 1 /dev/sda3

여기서 sda3를 파티션으로 변경해야합니다.


3
이 공간은 유실되지 않습니다. 일반적으로 루트 인 단일 사용자를 위해 예약되어 있습니다. 예를 들어 단일 파티션이 있고 한 명의 사용자가 인터넷을 다운로드 (디스크를 채우는 경우)하는 경우 시스템 서비스는 여전히 로그 파일과 감사 정보를 작성하여 시스템이 최소한 기능을 유지하여 관리자가 로그인하여 검사 할 수 있도록합니다. 그 상황. 시스템과 관련이없는 디스크의 경우이 예약을 0 %로 설정하는 것이 좋습니다.
Simon Richter

"루트 파티션이 아닌 경우"-실제로는 루트 파티션 및 마운트 된 파티션에서 작동합니다. Thx
Sepero

7

함께 ext4에 (그리고 extfs 제품군) 아이 노드 테이블 형식시 사전에 할당됩니다. 이것은 파일 시스템과 관련된 일반적인 Unix 동작입니다. extfs 파일 시스템으로 볼륨을 포맷 할 때 -Nmkfs 유틸리티 의 매개 변수를 사용하여 예상되는 inode 수를 조정할 수 있습니다 . ( 출처 ).

이 디자인은 확장성에도 불구하고 한 번에 많은 파일을 할당 할 때 더 나은 성능을 제공 할 수 있습니다. 형식 시간에 필요한 inode 수를 추정해야합니다. 메일 서버와 같이 주로 작은 파일을 포함하는 볼륨에는 ISO를 포함하는 볼륨보다 기가 바이트 당 더 많은 inode가 필요합니다.

모든 inode를 사용한 후에는 드라이브에 여유 공간이 있어도 새 파일을 만들 수 없습니다. 볼륨이 클수록 inode 테이블이 커집니다. 이로 인해 대형 드라이브에서 많은 기가 바이트가 손실됩니다.

반면에 XFS 는 "동적 inode 할당"( Source ) 이라는 기술을 사용합니다 . 이는 볼륨의 데이터 양에 따라 inode 수가 늘어나거나 줄어들 때 확장 성이 향상됩니다. 파일 시스템이 사용될 대상을 예측할 수 없거나 데이터를위한 추가 공간을 절약 할 것으로 예상되는 경우 더 나은 디자인입니다. 이것은 NTFS 동작 이기도합니다 .

저널링에 대해 말한 내용이 잘못되었습니다. 저널링 비용은 몇 메가 바이트에 불과합니다. 주요 공간 손실은 정적 inode 할당으로 인한 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.