파일 분할후 다시 합치기 문제...

Nmare의 이미지

백업을 위해서 자료 폴더를 통재로 앞축하니까 23기가정도 나왔습니다.(tar.gz으로 파일 생성)
이 압축파일을 다른 곳으로 옮기기 위해 500메가씩 분할한후
(split -b 500M 파일명)
다른 컴퓨터에다 옮겼다가.. 다시 원래의 시스템으로 옮겨서
합쳐놓았습니다.(cat 분할파일명* > backup_RAID.tar.gz)

그래서 xxx.tar.gz파일을 압축을 푸려고 하니 풀어지지가 않습니다.

[host]# tar -xvfz backup_RAID.tar.gz
tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now

위와 같은 메세지가 나오는데..
어떻게 해결해야 할지 생각이 나질 않습니다.

Prentice의 이미지

GNU tar를 쓰신다면,

tar xvfz backup_RAID.tar.gz 이렇게 푸세요.

tar -xvzf backup_RAID.tar.gz 이렇게 푸셔도 됩니다.

-를 쓰시면 f 바로 뒤에 파일명을 쓰셔야 하고, -를 안 쓰시면 각 옵션에 해당하는 내용을 각 옵션이 등장한 순서대로 적어주시면 됩니다.

Nmare의 이미지

[호스트]$ tar xvfz backup_RAID.tar.gz
incomplete literal tree

gzip: stdin: invalid compressed data--format violated
tar: Child returned status 1
tar: Error exit delayed from previous errors
[호스트]$ tar -xvzf backup_RAID.tar.gz
incomplete literal tree

gzip: stdin: invalid compressed data--format violated
tar: Child returned status 1
tar: Error exit delayed from previous errors

위와 같은 메세지가 나옵니다...
압축 파일이 잘못 되었다는 거 같은데..
어느 과정에서 잘못된건지 갈피가 잡히지를 않네요..

-Nmare-

markboy의 이미지

혹시나해서

cat 분할파일명1 > backup_RAID.tar.gz
cat 분할파일명2 > backup_RAID.tar.gz
cat 분할파일명3 > backup_RAID.tar.gz
....

이런 식으로 합쳐셨나요? 이러면 매번 backup_RAID.tar.gz를 덮어쓰기 때문에 결국 맨 마지막 분할 파일이 backup_RAID.tar.gz가 됩니다.

cat 분할파일명1 > backup_RAID.tar.gz
cat 분할파일명2 >> backup_RAID.tar.gz
cat 분할파일명3 >> backup_RAID.tar.gz
....

두번째 파일부터는 >> 를 써주시는게 맞습니다.

Prentice의 이미지

cat 분할파일명* > backup_RAID.tar.gz 이렇게 하셨군요. 실행하시기 전에,

ls 분할파일명* 이렇게 하셔서 모든 파일이 빠짐없이 있고, 또 순서가 맞는지 확인하셨나요?

Nmare의 이미지

cat 분할파일명* > backup_RAID.tar.gz
이렇게 해서 합쳤구요...

분할 파일들중에서 순서가 빠진것은 없습니다.(분할파일명aa~bs까지 다 있습니다, 23기가짜리)
분할할때도 확인했고.. 지금도 분할파일(원본)은 따로(다른 컴퓨터에) 보관하고 있습니다.

나오는 에러 메세지로봐서는 분할 파일의 순서가 바뀌거나 빠진게 있어서
압축원본 파일의 손상이 되었다고 해석되는데...
아무리 생각해봐도.. 순서는 이상이 없습니다..
굉장히 중요한 파일들인데.. 어떻게 해결해야 할지 답답하네요

-Nmare-

Prentice의 이미지

23기가면 500메가로 46개에 aa부터 bt까지일 것 같은데요. 몇개였나요? 45개가 맞고, bs는 다른 파일보다 작다면 더는 모르겠습니다.

Nmare의 이미지

분할시에는 500메가로 했고
분할되어있는 파일든은 약 525메가로 되어 있습니다.
bs까지 분할되었던 걸로 기억나는데...
물론 맨 마지막 bs파일 크기는 다른거보다 작은 400메가 정도입니다

-Nmare-

superkkt의 이미지

md5sum으로 양쪽 파일의 체크섬 찍어서 같은지 확인해보세요.. 그리고 지금 풀려고 시도하는 파일을 file 명령어로 어떤 파일인지 확인해 보시구요..

아.. 다시 읽어보니 원래 시스템으로 돌아와서 푼다고 하셨는데 그럼 초기 tar 파일이 없겠군요? 흠.. 일단 file 명령어로 그 파일이 tar/gz 파일이 맞는지 확인해 보세요~

======================
BLOG : http://superkkt.com

익명 사용자의 이미지

Nmare wrote:
백업을 위해서 자료 폴더를 통재로 앞축하니까 23기가정도 나왔습니다.(tar.gz으로 파일 생성)
이 압축파일을 다른 곳으로 옮기기 위해 500메가씩 분할한후
(split -b 500M 파일명)
다른 컴퓨터에다 옮겼다가.. 다시 원래의 시스템으로 옮겨서
합쳐놓았습니다.(cat 분할파일명* > backup_RAID.tar.gz)
...

다른 컴퓨터에 옮겼다가 다시 원래 시스템으로 옮겼다고 하셨는데,
뭘로 옮기셨습니까? 설마 ftp에서 binary설정을 안하시고 옮기신?

익명 사용자의 이미지

손님//
물론 바이너리모드 확인하고 옮겼습니다.

superkkt//
md5sum으로 체크섬을 검사할수 없습니다. 파일에 md5sum정보가 없다고 메세지가 나옵니다..

superkkt의 이미지

Anonymous wrote:
손님//
물론 바이너리모드 확인하고 옮겼습니다.

superkkt//
md5sum으로 체크섬을 검사할수 없습니다. 파일에 md5sum정보가 없다고 메세지가 나옵니다..

file 명령에서는 그 파일이 어떤 파일이라고 나오나요? 그리고 md5sum에서 나온 메세지를 그대로 한번 보여주시면 도움이 될것같습니다. 흠.. 파일이 23기가면 너무커서 제대로 안될수도 있겠네요

======================
BLOG : http://superkkt.com

Nmare의 이미지

흠...좀 이상하네요...
어제는 md5sum으로 체크섬을 해보니.. 압축파일(23기가)짜리는 이상한 메세지들이 쭈욱 인코딩이 깨져서 나오고, 한개의 분할파일은 체크섬 검사를 할수 없다고 나오더니...

오늘 해보니 체크섬이 계산되어 그 체크섬 값만 나옵니다.
그 값은 두 시스템에서 완전 동일하고요...
(현재는 분할파일 몇개만 해 보았습니다.
압축파일 체크섬 값 비교는 한 시스템에서 하드 용량 공간이 부족해서 파일을 합칠 공간이 없어서 못하고 있는 상태입니다.)
여전히 압축은 어제 썼던 에러메세지들을 내보내며 풀어지지가 않습니다..

하드 용량을 확보해서, 두 시스템에서의 압축파일 비교해서 체크섬이 맞는다고 하더라도 앞축은 풀리지 않을듯합니다
(사실 몇 번이나 앞축파일들을 리눅스 시스템에 다시 옮겨서 합치고 앞축을 풀어보았지만 실패했습니다.)

-Nmare-

superkkt의 이미지

23기가로 압축된 파일 두개의 체크섬을 비교해야 가장 정확할듯 싶구요.. 두개가 결과가 같다면 전송후 합치기가 제대로 된거죠.. 근데 제가 가장 궁금한건 file 명령어가 그 압축파일에 대해서 어떤 결과를 보여주냐인데요.. 이건 안해보셨는지요?

# file filename.tar.gz

======================
BLOG : http://superkkt.com

Nmare의 이미지

파일 명령어로 확인하면 gz파일 이라고 나옵니다..
backup_RAID.tar.gz: gzip compressed data, from Unix

분할 파일도 똑같이 나오고요..
backup_divisionaa: gzip compressed data, from Unix

-Nmare-

Prentice의 이미지

구글검색을 조금 해보니 FreeBSD에서 4GB 이상의 파일을 gunzip 할 때 문제를 겪었다는 사람이 있었습니다.

32bit 리눅스 시스템을 쓰신다면 gzip/gunzip을 LFS에 맞게 재컴파일하시면 어떨까요?

여기서 LFS, large file support을 검색해보세요.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.