가장 적은 양의 여유 공간을 남기고 하나의 디스크에 대부분의 파일을 어떻게 저장할 수 있습니까? 이것을 어떻게 할 것인지를 배우기위한 질문입니다.

나는이 질문을 처음 시도했을 때 잘 설명하지 않았으므로 완전히 다시 썼다. 그러나 여전히 같은 질문이다. 다양한 크기의 파일들이 있고이를 백업하기 위해 디스크에 넣어야한다고 가정 해 봅시다. 이 파일들은 어떤 디렉토리도 보존 할 필요가 없으며 특정 순서로 저장 될 필요가 없습니다. 최종 목표는 디스크 당 최소 여유 공간을 남기는 것입니다. 하나의 디스크가 손실되거나 손상된 경우 모든 데이터를 읽을 수 없으므로 7zip과 같은 압축 프로그램을 사용하여 디스크 전체에서 아카이브를 분할하고 싶지 않습니다. 이것은 단순히 당신이 이것을 어떻게 할 것인지를 배우기위한 질문입니다. 나는 스토리지가 싸고이 과정에 많은 시간이 소요될 수 있음을 알고 있습니다. 나는 단지 궁금해서이 일을 어떻게하는지 배우고 싶다. 아래의 아주 기본적인 예제처럼;

두 개의 50MiB 디스크에 총 89MiB의 여섯 개의 파일을 저장하려고합니다. 이것은 아주 기본적인 예입니다. 파일 수를 늘리거나 무작위 크기를 갖는 것은 적어도 정신적 인 방정식 견지에서 불가능한 것으로 보인다.
A.7z – 10MiB
B.7z – 20MiB
C.7z – 30MiB
D.7z – 10MiB
E.7z – 07MiB
F.7z – 12MiB
ABC 순서로 간다면이 파일에는 세 번째 디스크가 필요합니다. 그러나 파일 B와 C가 처음에 함께 사용되고 A, D, E 및 F가 두 번째 디스크로 가면 두 개의 디스크 만 필요합니다.



답변

특히 가장자리의 경우에이 방법을 사용하는 것이 더 좋은 방법 일 수 있습니다. 그러나 이것이 일반적인 경우에 상당히 적합한 것을 제공한다고 생각합니다.

  1. 모든 파일의 사본을 가져 와서 사용할 수있는 최상의 압축 프로그램을 사용하여 개별적으로 압축하십시오. (7z 또는 xz?)

  2. 압축 된 파일을보고, 가장 큰 압축 파일을 찾습니다.
    디스크에 맞춘 다음, 맞고 반복 될 가장 큰 압축 파일
    공간이 남을 때까지 압축되지 않은 버전의
    이 파일들 각각을 단일 아카이브로서 디스크에 저장합니다. 남아있는 공간이 남은 압축 파일보다 작 으면이 프로세스에서 압축 파일의 압축되지 않은 버전을 추가하십시오. (여러 파일을 압축하면 파일의 끝에 낭비되는 공간과 더 많은 데이터가 압축 될 때 더 나은 압축을 가능하게하는 더 나은 사전 때문에 원본 파일보다 압축률이 높아질 수 있습니다.

  3. 이미 파이널 라이즈 된 아카이브에 압축 된 개별 파일을 제거하십시오.

  4. 더 이상 파일이 남아 있지 않을 때까지 2-3 단계를 반복하십시오.

필자는 파일을 개별적으로 압축 한 다음 가장 큰 첫 번째 원칙에 따라 디스크에 복사하고 디스크가 비어있는 경우 부분적으로 손상된 데이터를 검색 할 가능성이 훨씬 높다는 사실을 확인했습니다. 파일 크기가 작지 않은 경우 좋은 방법이 될 수 있습니다 (이 경우 낭비되는 디스크 공간이 문제가 될 수 있습니다). 사용하는 압축 프로그램이 photorec와 같은 프로그램에서 식별 할 수있는 서명인지 확인하고자 할 수 있습니다.

복사하려는 디스크와 결과 파일의 크기에 따라 단일 대형 아카이브 (크기가 크지 않지만 최대 공간)로 포맷하지 않고 디스크를 사용하거나 블록 크기를 줄여 공간 낭비를 줄이려면 작은 파일들.


답변