파일에 격리된 ext4 파일 시스템을 만드는 방법

파일에 격리된 ext4 파일 시스템을 만드는 방법

25G /dev/sda6 ext4 파티션이 /data에 마운트됩니다. , , 를 사용하여 fallocate파일에 고정 크기 파일 시스템을 만들려고 합니다 mkfs.ext4.mount

fallocate -l 5G /data/new_storage
mkfs.ext4 -E nodiscard /data/new_storage
mkdir /data/new_dir
mount /data/new_storage /data/new_dir

그러나 du/data는 /data/new_storage가 5G 대신 4.9G를 차지한다는 것을 보여줍니다. mkfs.ext4이는 실행 후에 발생합니다. 동시에 ls해당 파일은 5G를 점유했다고 합니다.

따라서 새 파일 시스템은 격리되지 않으며, 하위 파일 시스템이 생성된 후 상위 파일 시스템이 완전히 채워지면 하위 파일 시스템을 채우면 오류가 발생할 수 있습니다.

loop: Write error at byte offset 2281734144, length 4096.
print_req_error: I/O error, dev loop0, sector 4456512

ext2를 사용할 때 du표시되는 수량은 정확히 할당된 수량이며 유사한 동작으로 오류가 발생하지 않습니다.

ext4가 비활성화된 로그는 du5G에 조금 더 가깝지만 여전히 5G와 같지는 않습니다.

예상되는 동작대로 20G 또는 25G 여유 공간(서비스 데이터로 인해 약간 적은 여유 공간)이 있는 하나의 /dev/sda6 파티션과 두 번째 5G 루프백 /dev/loop0 파티션(서비스 데이터로 인해 약간 적은 여유 공간)이 있습니다. 약간의). 서로. 이 동작을 달성하는 것이 가능합니까?

fstrim실행될 가능성도 있는데 , 이로 인해 파일에 홀펀칭이 발생하게 됩니다. fstrim새 파일 시스템에서 실행을 완전히 비활성화하는 것이 가능합니까 ?

관련 정보