genisoimage는 폴더 크기를 두 배로 늘립니다.

genisoimage는 폴더 크기를 두 배로 늘립니다.

약 22,000개의 하위 폴더가 포함된 폴더가 있는데, 각 하위 폴더에는 최대 깊이 약 7까지 더 많은 하위 폴더가 포함될 수 있습니다.

그래서 압축을 푸는 데 시간이 오래 걸릴 수 있으므로 rar이나 유사한 파일이 아닌 단일 파일로 만들고 싶습니다. 모든 것을 추출할 필요 없이 마운트하고 필요한 것만 액세스할 수 있기 때문에 .iso가 필요합니다.

이 명령을 사용했습니다genisoimage --iso-level 4 -o folder.iso "folder"

폴더 크기가 21.7GB인데 iso로 변환하면 43.2GB가 되나요? 이것이 예상되는가?

답변1

첫째, genisoimage오류가 가득하고 구조적 결함이 있는 파일 시스템을 생성하므로 권장되지 않습니다 genisoimage.

파일 시스템을 생성하려면 ISO-9660잘 관리된 원본을 사용해야 합니다 mkisofs. 원본이 아닌 원본 버전을 실제로 사용하고 있는지 확인 하십시오 genisoimage. mkisofs -version최신 버전을 사용하고 있습니다. Buggy는 genisoimage날짜를 제공하지 않으며 원래 버전은 > 3.0 버전을 사용했으며 현재 버전은 2018년 5월의 버전 날짜를 인쇄하며 내 최신 버전을 사용할 때 인쇄 날짜는 2018년 9월입니다 schilytools. 여기에서 최신 소스 버전을 다운로드할 수 있습니다.http://sourceforge.net/projects/schilytools/files/업데이트 기간은 1~3주입니다.

그러나 사용되는 섹터 크기 ISO-9660는 2048바이트이므로 작은 파일을 많이 보관하면 파일 크기의 합에 비해 보관 파일 크기가 두 배로 커지는 결과를 쉽게 초래할 수 있습니다.

Rock RidgeISO 이미지에는 더 많은 속성이 포함되어 있지만 크기가 실제로 향상되지는 않으므로 최소한 ISO 이미지의 속성을 사용하는 것이 좋습니다 .

참고: 작은 파일이 많고 tar확장자가 .인 아카이브를 생성하는 경우 ISO 이미지와 비슷한 크기의 아카이브를 얻게 됩니다.POSIX.1-2001paxtar

히스토리 tar아카이브에는 파일당 512바이트의 오버헤드가 있고 이 POSIX.1-2001형식은 파일당 1536바이트의 오버헤드가 있습니다.

답변2

그래서 압축을 푸는 데 시간이 오래 걸릴 수 있으므로 rar이나 유사한 파일이 아닌 단일 파일로 만들고 싶습니다. 모든 것을 추출할 필요 없이 마운트하고 필요한 것만 액세스할 수 있기 때문에 .iso가 필요합니다.

이건 직업인 것 같아스쿼시 FS:SquashFS를 사용하면 디렉터리를 단일 파일로 압축할 수 있습니다. 표준 압축 파일(tar.gz 등)과 달리 실제로 파일을 디스크에 추출하는 대신 파일을 마운트하여 콘텐츠에 액세스합니다.

  • 읽기 액세스는 매우 효율적입니다. 때로는 일반 비압축 파일 시스템에 액세스하는 것보다 더 빠릅니다(특히 디렉터리에 많은 파일과 하위 디렉터리가 포함된 경우).
  • 콘텐츠가 압축되어 있으므로 파일 크기가 ISO 이미지보다 훨씬 작습니다.

답변3

비슷한 문제가 있었지만 당시 킥스타트 구성 및 기타 지원 파일을 포함하여 RHEL 7 설치 미디어의 iso 이미지를 다시 빌드하고 있었습니다. 제가 이것을 언급하는 이유는 단일 레이어 DVD가 허용하는 크기를 초과하기 시작했기 때문입니다. 이전에는 이 사실을 알아차린 적이 없었지만, 후속 릴리스에서는 RHEL 패키지 디렉터리가 커졌다고 생각합니다. 나는 mkisofs 도구가 예상보다 이미지를 더 크게 만들었다는 것을 발견했습니다. 약간의 조사 끝에 xorriso를 사용하여 iso를 제자리에서 편집할 수 있다는 사실을 발견했습니다. 이를 통해 단일 레이어 DVD에 맞는 크기로 ISO를 유지할 수 있었습니다.

이것이 내가 사용하는 명령입니다.

xorriso -boot_image any keep -dev rhel-server-7.8-x86_64-dvd_ks-v2r7.iso -cpr ../rhel-ks/* / --

이 특정한 경우 xorrisofs를 사용하여 빈 iso9660 파일 시스템으로 iso 이미지를 만든 다음 xorriso를 사용하여 필요한 파일을 이미지에 추가할 수 있습니다.

부팅 가능한 데이터 CD/DVD 이미지가 필요하지 않은 예입니다.

xorrisofs -U -r -v -J -joliet-long -V "MyData" -volset "MyData" -A "MyData" -o ./mydata.iso 

xorriso -dev ./mydata.iso -cpr ./data_dir / --

관련 정보