누락 된 부품이있는 다중 부품 RAR을 추출하는 방법은 무엇입니까?


12

그 안에 .rar단일 .tar.gz파일이 들어 있는 다중 부분 아카이브가 있습니다 (이유가 그렇게 된 이유는 묻지 마십시오). 나는 몇 가지 부품이 누락되었지만 첫 번째 부품이 있습니다. .tar.gz가능한 한 많이 추출하고 싶습니다 . 어떻게해야합니까?

내가 실행하는 경우 unrar x -kb file.part1.rar는 항상의 시작을 추출 .tar.gz에서 part1와 오류가 중지됩니다. 도구를 사용 해보고 기쁩니다 (드문 일 필요는 없습니다).


1
분명히, 당신은 모든 것이 필요합니다. 그렇지 않으면 작동하지 않을 것입니다
Sickest

1
글쎄, 그는 "가능한 한 많이"원한다고 말합니다. 그러나 간단한 파일 형식 (비트 맵)이 아니라면 추출한 것은 사용할 수 없을 가능성이 높습니다.
WindowsEscapist

내부에 많은 파일이 포함 된 다른 아카이브가 있으면 일부 파일을 복구 할 수 있습니다. 트릭은 WinRar를 최대한 많이 추출하는 것입니다.
davidbaumann

2
사람들이 왜 이해하지 못해서 질문에 투표하는지 이해하지 못합니다.
davidbaumann

해결책을 찾아서 우리와 공유 했습니까?
davidbaumann

답변:


2

10 중 1,5,6,9,10 부분이 있었을 때 창문 에서도 비슷한 것을 가졌습니다. 2,3,4,7,8 부분이 누락되었습니다.

  1. 7zip을 사용하여 부품을 추출하고 그에 따라 이름을 바꿉니다. 즉 : pt1 pt5 pt6 등

  2. 당신이 가지고 있고 추출한 각 부분의 정확한 크기를 바이트 단위로 사용하여 누락 된 부분을 채우기 위해 널 (0) 파일을 생성하십시오 (예 : pt1의 크기는 pt5 및 pt6의 크기와 동일합니다 ...).

    fsutil 파일 createnew [path_to_file] [size_in_bytes]

    내 경우에는 다음을 사용했습니다.

    fsutil 파일 createnew C : \ TMP \ empty 1022701562

  3. 파일 연결 (이진 파일에 / b 사용)

    / b file1 + file2 + file3 대상 파일 복사

    나의 경우에는:

    복사 / b pt1 + empty + empty + empty + pt5 + pt6 + empty + empty + pt9 + pt10 output_file

완료되면 Deluge bittorrent 클라이언트에 파일을로드하고 강제로 다시 검사했으며 실제로 보유하지 않은 비율 만 누락되었습니다. 즉 bittorrent 클라이언트는 모든 0 사이에 진정한 정보가 있음을 확인했습니다. 추가되었습니다.


지침을 잘 이해하지 못합니다. 7zip에서 '있는 부품을 어떻게 추출합니까?' 7z %file모든 부품 파일을로드하려고 시도하고 그 중 하나가 이미없는 경우 오류를 반환합니다. 급류와 관련된 모든 것은 무엇입니까? Deluge를 사용하여 연결된 바이너리에서 개별 원본 압축 파일을 추출 할 수 있습니까?
cduguet

5

이것은 아마도 더 이상 관련이 없지만 방금 같은 문제가 있었고 나에게 도움이되는 간단한 솔루션을 발견하고 공유하는 것이 좋을 것이라고 생각했습니다.

암호로 보호 된 RAR 아카이브가 6 개 부분으로되어 있지만 part4가 없습니다. WinRAR의 "수리"기능을 사용하려고했지만 복구 기록을 찾을 수 없다고했습니다. 위의 방법을 시도했지만 작동하지 않았으며 누락 된 부분이 시작된 위치에서 추출이 항상 중지되었습니다.

마지막으로 WinRAR을 다른 아카이브의 사고 파트 5와 6으로 속여서 "archive.part1.rar"및 "archive.part2.rar"로 이름을 변경하기로 결정했습니다. 그런 다음 WinRAR에 새 부분 1을 추출하라고 지시했지만 새 부분 1의 시작 부분에서 끝나는 파일을 추출 할 수 없다는 오류 메시지가 표시되었지만 (4 부분에서 일부 데이터가 누락되었으므로), 원래 부분 5와 6에서 다른 모든 파일을 추출했습니다.

이것이 앞으로 같은 문제를 가진 다른 사람들을 도울 수 있기를 바랍니다.


1

100Mb 파트, 파트 3이 없다고 가정합니다. 당신은 시도 할 수 있습니다

cat blubb.part01.rar blubb.part02.rar blubb.part04.rar > blubb.rar

또한 나는 더 잘 작동하고 WinRar가 파일이 손상되었다고 생각하게 할 것입니다.

dd if=/dev/zero of=blubb.part03.rar bs=1M count=100
cat blubb.part01.rar blubb.part02.rar blubb.part03.rar blubb.part04.rar > blubb.rar

좋은 아이디어, 시도해보십시오. 1. 기존의 모든 부품이 연결되어 있으면 정확히 같은 장소에서 unrar 실패 (CRC 오류)가 발생합니다. 2. 누락 된 부분과 동일한 이름을 갖도록 이후 부분을 복사하면 동일한 위치에서 실패하지만 이후 부분을 처리하고 있음을 나타내는 메시지를 인쇄합니다 (다른 파일의 시작을 찾고있을 수 있음). dd를 사용하여 0으로 된 파일을 만들면 "나쁜 보관"으로 실패합니다
Alex I

그리고 모두 제로 파일을 만들어 연결하면 "볼 수 없음"과 같은 위치에서 실패합니다.
Alex I

생각 만 : cat blubb.rar | unrar > file.tgz.
davidbaumann


1

1 단계 : 파일 이름을 바꾸십시오 (예 :

file.part1.rar -> fileA.rar
file.part2.rar -> fileB.rar
file.part3.rar -> fileC.rar
etc..

2 단계 : 7-Zip 을 사용하여 각 파일을 추출하십시오.

이익!

(어떤 경우에는 이름을 바꿀 필요가 없으며 7-Zip이 모든 파일을 추출하도록 할 수 있습니다.)


3
이것은 둘 이상의 파트 파일에 걸쳐있는 파일에는 도움이되지 않습니다.
Rohit Gupta

7-Zip을 사용하여 이름이 바뀐 각 파일을 하나씩 추출하려고 했습니까?
cychoi

1

두 부분의 rar 아카이브의 두 번째 부분 만 가지고 있었는데, winrar가 첫 번째 부분이 누락되었다는 메시지가 나타 났을 때 파트 2의 포장을 풀었습니다. 또한 파트 2의 전체 내용이 폴더에서 압축 해제 된 것으로 나타났습니다. winrar의 팝업 메시지를 건드리지 않고 압축을 푼 파일을 다른 폴더에 복사 한 다음 winrar의 팝업 메시지에서 닫기를 클릭했습니다. 압축이 풀린 내용은 winrar에 의해 삭제되었지만 이전에 다른 폴더로 복사 했으므로 다른 폴더에서 압축이 풀린 내용을 사용할 수 있습니다.


0

7-zip은 다중 부분 RAR에서 파일의 일부를 추출한 다음 dd와 함께 다시 스티치 할 수 있습니다. 예를 들어, 첫 번째 및 마지막 rar-part가있는 경우 :

7z x p1.rar
mv dir p1  # rename out of the way
7z x plast.rar
unrar l p1.rar
   # note the file size of the entire file
ls -l dir/file  # note the size of the last part
dd if=dir/file of=p1/file  conv=notrunc  bs=1 seek=$((full_size - lastpart_size))

찾고자하는 오프셋이 소수가 아닌 경우 블록 크기를 1보다 크게 사용하십시오. 출력 블록 크기의 배수 dd에만 가능 seek합니다. dd정말 메이크업 수행 read하고 write그 블록의 크기가 시스템 호출을, 그래서 bs=1정말 안됐다.

ibs(입력 블록 크기) seek단위 이므로 (입력 블록 크기)가 크면 CPU 시간의 절반이 절약 obs됩니다. 또는 임의의 바이트 위치를 찾은 다음 보통 크기의 I / O를 수행 할 수있는 다른 도구가있을 수 있습니다. 또는 이것을 스크립팅하는 경우 bs=1최대 32k 정렬로 dd 할 수 있습니다.tail -c +$misalignment lastpart/file | dd ... of=p1/file conv=notrunc bs=32k seek=$(( (full_size - lastpart_size + misalignment) / (32 * 1024) ))

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