Страница 1 из 1

Восстановление tar.gz

Добавлено: 2009-07-02 16:42:10
koffu
Доброго дня, коллеги!

Имеется ~800M tar.gz архив с важными данными, который передали по sftp "на всякий случай" (бэкап mysql_db, /etc/, /usr/local/etc/, /usr/local/www). По прошествию некоторого времени данные с сервера были преднамеренно удалены. При попытке восстановить из архива вылезло:

Код: Выделить всё

$ tar xzf ../archive.tar.gz 
tar: Ignoring unknown extended header keyword `SCHILY.dev'
tar: Ignoring unknown extended header keyword `SCHILY.ino'
tar: Ignoring unknown extended header keyword `SCHILY.nlink'
tar: Ignoring unknown extended header keyword `SCHILY.dev'
tar: Ignoring unknown extended header keyword `SCHILY.ino'
tar: Ignoring unknown extended header keyword `SCHILY.nlink'
tar: Ignoring unknown extended header keyword `SCHILY.dev'
tar: Ignoring unknown extended header keyword `SCHILY.ino'
tar: Ignoring unknown extended header keyword `SCHILY.nlink'
tar: Ignoring unknown extended header keyword `SCHILY.dev'
tar: Ignoring unknown extended header keyword `SCHILY.ino'
tar: Ignoring unknown extended header keyword `SCHILY.nlink'
tar: Ignoring unknown extended header keyword `SCHILY.dev'
tar: Ignoring unknown extended header keyword `SCHILY.ino'
tar: Ignoring unknown extended header keyword `SCHILY.nlink'
tar: Ignoring unknown extended header keyword `SCHILY.dev'
tar: Ignoring unknown extended header keyword `SCHILY.ino'
tar: Ignoring unknown extended header keyword `SCHILY.nlink'
tar: Skipping to next header

gzip: stdin: invalid compressed data--crc error

gzip: stdin: invalid compressed data--length error
tar: Child returned status 1
tar: Error exit delayed from previous errors
Пробовал распаковывать различными архиваторами, 7z, unrar, gunzip и прочими, только малая часть распаковывается. Может кто сталкивался с таким? Данные нужны не все, как-то можно заставить gzip пропустить некорректные блоки и распаковывать дальше, а потом tar-ом извлечь остаток?

Re: Восстановление tar.gz

Добавлено: 2009-07-02 17:01:22
Raven2000
сначала попробуй gunzip ом распаковать, а не таром и посмотри в man gunzip может что есть путное.
===
соболезную, но лучше бы сначала потестил такой архив перед самостоятельным удалением инфы...

Re: Восстановление tar.gz

Добавлено: 2009-07-02 17:16:40
koffu
Raven2000 писал(а):сначала попробуй gzip распаковать, а не таром и посмотри в man gzip может что есть путное.
===
соболезную, но лучше бы сначала потестил такой архив перед самостоятельным удалением инфы...
теперь буду умнее - случился вариант, на который малорассчитывали. Пробую всякие fixgz.c

Re: Восстановление tar.gz

Добавлено: 2009-07-02 19:39:59
Гость
koffu писал(а):

Код: Выделить всё

$ tar xzf ../archive.tar.gz
tar: Ignoring unknown extended header keyword `SCHILY.dev'
tar: Ignoring unknown extended header keyword `SCHILY.ino'
tar: Ignoring unknown extended header keyword `SCHILY.nlink'
tar: Ignoring unknown extended header keyword `SCHILY.dev'
tar: Ignoring unknown extended header keyword `SCHILY.ino'
tar: Ignoring unknown extended header keyword `SCHILY.nlink'
tar: Ignoring unknown extended header keyword `SCHILY.dev'
tar: Ignoring unknown extended header keyword `SCHILY.ino'
ты паковал с помощью archivers/star что ль?

Re: Восстановление tar.gz

Добавлено: 2009-07-03 10:25:41
koffu
Нет, как и обычно

Код: Выделить всё

$ tar czf archive.tar.gz /usr/local/www
Пробовал и на том-же сервере и на другом - ошибка одинаковая.

Re: Восстановление tar.gz

Добавлено: 2009-07-03 15:22:53
Гость
а как у тя бэкап повредился-то? жесткий диск втихую подсунул плохой сектор? Если да, то совет на будущее использовать geli или zfs, кои сразу сообщать, когда контроллер/диск врет.

Re: Восстановление tar.gz

Добавлено: 2009-07-03 18:03:00
zingel

Код: Выделить всё

file archive.tar.gz  && stat archive.tar.gz 

Re: Восстановление tar.gz

Добавлено: 2009-07-06 13:37:50
koffu
Гость писал(а):а как у тя бэкап повредился-то? жесткий диск втихую подсунул плохой сектор? Если да, то совет на будущее использовать geli или zfs, кои сразу сообщать, когда контроллер/диск врет.
Делался на одном хосте, потом через sftp копировался на другой. Вот там-то и обнаружилось. С диском проблемы не думаю, там LVM на RAID1 на LSI. Ессно md5sum не генерил и заметил, только когда получил ошибко.

Код: Выделить всё

$ file archive.tar.gz  && stat archive.tar.gz 
archive.tar.gz: gzip compressed data, from Unix, last modified: Fri May 29 08:17:54 2009
  File: `archive.tar.gz'
  Size: 916024333 	Blocks: 1790872    IO Block: 4096   regular file
Device: 805h/2053d	Inode: 1510621     Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/   koffu)   Gid: ( 1000/   koffu)
Access: 2009-07-06 13:31:34.000000000 +0300
Modify: 2009-07-02 17:17:34.000000000 +0300
Change: 2009-07-06 13:30:53.000000000 +0300