The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Порядок ключей tar"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Системное и пользовательское ПО)
Изначальное сообщение [ Отслеживать ]

"Порядок ключей tar"  +/
Сообщение от LPby (ok) on 19-Авг-11, 12:21 
В чем различие в последовательности ключей в данном примере? Архивы создаются корректно, с одинаковыми объемами, но с разным содержимым.

$ echo test > file

$ tar -czvf czvf.tgz file
file

$ tar -zcvf zcvf.tgz file
file

$ ls -l *.tgz
-rw-r--r-- 1 user group 128 2011-08-19 11:10 czvf.tgz
-rw-r--r-- 1 user group 128 2011-08-19 11:10 zcvf.tgz

$ diff czvf.tgz zcvf.tgz
Двоичные файлы czvf.tgz и zcvf.tgz различаются

$ gunzip czvf.tgz

$ gunzip zcvf.tgz

$ ls -l *.tar
-rw-r--r-- 1 user group 10240 2011-08-19 11:10 czvf.tar
-rw-r--r-- 1 user group 10240 2011-08-19 11:10 zcvf.tar

$ diff czvf.tar zcvf.tar

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Порядок ключей tar"  +/
Сообщение от alikhantara (ok) on 19-Авг-11, 13:02 
>[оверквотинг удален]
> -rw-r--r-- 1 user group 128 2011-08-19 11:10 czvf.tgz
> -rw-r--r-- 1 user group 128 2011-08-19 11:10 zcvf.tgz
> $ diff czvf.tgz zcvf.tgz
> Двоичные файлы czvf.tgz и zcvf.tgz различаются
> $ gunzip czvf.tgz
> $ gunzip zcvf.tgz
> $ ls -l *.tar
> -rw-r--r-- 1 user group 10240 2011-08-19 11:10 czvf.tar
> -rw-r--r-- 1 user group 10240 2011-08-19 11:10 zcvf.tar
> $ diff czvf.tar zcvf.tar

man tar:
-c, --create
              create a new archive
-z, --gzip
              filter the archive through gzip
очерёдность и создаёт Binary files czvf.tgz and zcvf.tgz differ

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Порядок ключей tar"  +/
Сообщение от LPby (ok) on 19-Авг-11, 13:07 
> очерёдность и создаёт Binary files czvf.tgz and zcvf.tgz differ

долго пытался понять смысл этой фразы -- не получилось.
не могли бы ли вы более развернуто ответить?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Порядок ключей tar"  +/
Сообщение от alikhantara (ok) on 19-Авг-11, 13:22 
>> очерёдность и создаёт Binary files czvf.tgz and zcvf.tgz differ
> долго пытался понять смысл этой фразы -- не получилось.
> не могли бы ли вы более развернуто ответить?

"Двоичные фалы файл1 и файл2 отличаются"
Разница получается из-за последовательности движений.
Здесь всё дело в параметре -z (gzip)
man gzip:
gzip - compress or expand files
Можно сначала компресс потом крит или крит потом компресс.  

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

8. "Порядок ключей tar"  +/
Сообщение от cryo (ok) on 19-Авг-11, 15:01 
Опередили.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Порядок ключей tar"  +/
Сообщение от Andrey Mitrofanov on 19-Авг-11, 14:04 
>[оверквотинг удален]
> $ echo test > file
> $ tar -czvf czvf.tgz file
> file
> $ tar -zcvf zcvf.tgz file
> file
> $ ls -l *.tgz
> -rw-r--r-- 1 user group 128 2011-08-19 11:10 czvf.tgz
> -rw-r--r-- 1 user group 128 2011-08-19 11:10 zcvf.tgz
> $ diff czvf.tgz zcvf.tgz
> Двоичные файлы czvf.tgz и zcvf.tgz различаются

$ cmp -bl czvf.tgz zcvf.tgz
  5 337 M-_  341 M-a

Забавно, но этот "пятый" байт "всегда" разный....

...ан, нет!! Ж))))))))))))))

Всем читать исходники gzip два часа?....  Достаточно RFC 1952 aka GZIP file format specification:

""MTIME (Modification TIME)
         This gives the most recent modification time of the original file being compressed.""

С пятого байта как раз.

Время создания (или конвейеров внутри tar -z) czvf.tgz и zcvf.tgz - разное, поэтому "байтики" отличаются.

Очень забавный формат!

ЗЫ: Но фантазёры -- "сначала компресс потом крит" -- забавнее.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Порядок ключей tar"  +/
Сообщение от reader (ok) on 19-Авг-11, 14:25 
>[оверквотинг удален]
> Всем читать исходники gzip два часа?....  Достаточно RFC 1952 aka GZIP
> file format specification:
> ""MTIME (Modification TIME)
>          This gives the
> most recent modification time of the original file being compressed.""
> С пятого байта как раз.
> Время создания (или конвейеров внутри tar -z) czvf.tgz и zcvf.tgz - разное,
> поэтому "байтики" отличаются.
> Очень забавный формат!
> ЗЫ: Но фантазёры -- "сначала компресс потом крит" -- забавнее.

-n, --no-name     do not save or restore the original name and time stamp

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

9. "Порядок ключей tar"  +/
Сообщение от Andrey Mitrofanov on 19-Авг-11, 15:55 
> -n, --no-name     do not save or restore the
> original name and time stamp

Вау, работает! :D

$ echo test > file
$ GZIP=-n tar -czvf czvf.tgz file
file
$ GZIP=-n tar -zcvf zcvf.tgz file
file
$ cmp -bl czvf.tgz zcvf.tgz
$ _


$ od -t x1 czvf.tgz |head -1
0000000 1f 8b 08 00 00 00 00 00 00 03 ed ce 31 0a 02 31
$ _

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

6. "Порядок ключей tar"  +/
Сообщение от LPby (ok) on 19-Авг-11, 14:43 
del

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

7. "Порядок ключей tar"  +/
Сообщение от LPby (ok) on 19-Авг-11, 14:59 
>[оверквотинг удален]
> Всем читать исходники gzip два часа?....  Достаточно RFC 1952 aka GZIP
> file format specification:
> ""MTIME (Modification TIME)
>          This gives the
> most recent modification time of the original file being compressed.""
> С пятого байта как раз.
> Время создания (или конвейеров внутри tar -z) czvf.tgz и zcvf.tgz - разное,
> поэтому "байтики" отличаются.
> Очень забавный формат!
> ЗЫ: Но фантазёры -- "сначала компресс потом крит" -- забавнее.

Действительно, в данном случае берется время создания конвеера в tar.

Тема раскрыта, всем спасибо!


Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру