ext4 파일 시스템을 희소하게 만드는 방법은 무엇입니까?

ext4 파일 시스템을 희소하게 만드는 방법은 무엇입니까?

VirtualBox에서 게스트 OS로 Linux를 사용하고 있습니다. 파일 시스템에서 많은 수의 파일을 삭제했습니다. 이제 파일 시스템 이미지 파일(vdi)을 축소하고 싶습니다. 축소는 디스크에서 "null" 값으로 파일 시스템 이미지를 압축하여 수행됩니다.

라는 앱이 있는 것 같습니다.자유도 제로"null"은 파일 시스템의 여유 공간에 기록되어 공간이 부족해질 수 있습니다. 그러나 매뉴얼에는 ext2/ext3에서만 작동한다고 나와 있습니다. 게스트 OS에 ext4가 있습니다.

  1. ext 4에서는 왜 작동하지 않습니까? (인용된 이유는 "범위"이지만 누군가 이에 대해 더 자세히 설명할 수 있습니까?)

  2. 내가 설치하면 작동할까?확장 4~처럼확장 3그런 다음 다음과 같이 다시 설치하십시오.확장 4?

  3. ext에서 Zerofree와 같은 작업을 수행할 수 있는 다른 도구가 있습니까?

답변1

참조한 페이지(http://intgat.tigress.co.uk/rmy/uml/index.html) 상태:

The utility also works on ext3 or ext4 filesystems.

그래서 ext4 파일 시스템에서는 작동하지 않는다는 아이디어를 어디서 얻었는지 잘 모르겠습니다.

주의하세요 자유도 제로유용제로프리와는 다르다커널 패치이는 같은 페이지에 언급되어 있습니다(실제로 ext4용 버전은 없는 것 같습니다).

고쳐 쓰다:적어도 VirtualBox에 관한 한 이 유틸리티는 전혀 필요하지 않다고 생각합니다. 내 테스트에서는 ext4에 설치된 Ubuntu 10.04에서 다음과 같이 파일 시스템을 0으로 설정할 수 있습니다.

$ dd if=/dev/zero of=test.file

...가상 디스크가 가득 찰 때까지 기다린 다음

$ rm test.file

그리고 가상 머신을 종료합니다. 그런 다음 VirtualBox 호스트에서 다음을 수행하십시오.

$ VBoxManage modifyhd --compact yourImage.vdi

사용하지 않은 공간을 모두 복구합니다.

답변2

ext4에서 작동하는 버전 이 e2fsprogs있습니다.

자신을 슈퍼유저로 만드세요:

# su

드라이브를 마운트 해제합니다.

# umount /dev/sda1

드라이브 로그를 삭제합니다.

# tune2fs -O ^has_journal /dev/sda1

그런 다음 파일 시스템 크기를 조정합니다.

# resize2fs /dev/sda1 30G

관련 정보