LinuxForum.Fans
Тема

Что делает команда cpio

Автор: Drayzer 21 сообщений 3671 просмотров
#94168

Ребята, что делает команда cpio и как ней пользоваться?

#94170

cpio - copy files to and from archives

#94177

Не буду повторяться и говорить man cpio, скажу info cpio wink

#94187

а ещё
whatis cpio
apropos cpio

#94190

SkaarjZR, :(

text

lupo@gentoo-laptop ~ % whatis cpio
cpio: ничего подходящего не найдено.
lupo@gentoo-laptop ~ % apropos cpio
cpio: ничего подходящего не найдено.
#94196
Drayzer написал:
Ребята, что делает команда cpio

устаревшие архивы.

Drayzer написал:
как ней пользоваться?

никак. Пользуйтесь tar, например

[console]tar -cjvvf arch.tbz dir/[/console]

(упаковать в архив arch.tbz каталог dir)

#94449

Lupo Alberto, у тебя какой-то неправильный дистр :)

#94480
drBatty написал:
устаревшие архивы.

Может оно и так, но почему-то у меня в дистре даже есть такой архив - /boot/gfxmenu smile

#94525
alex-seed написал:
Может оно и так, но почему-то у меня в дистре даже есть такой архив

ну это видимо для совместимости - предполагается, что в момент загрузки у вас просто не будет tar'а, например он останется на (ещё)несмонтированном /usr

#94528

А самое то важное забыл - этот cpio используется в RPM, так что жить ему долго еще smile

#94607

initrd этим архиватором заархивирован. Может в других дистрах по другому, у меня в генту так.

#94644
alex-seed написал:
А самое то важное забыл - этот cpio используется в RPM, так что жить ему долго еще smile

тем хуже для RPM. Патрег давно сменил в пакетах gzip на bzip, а его, в свою очередь на xz. Это позволяет качать пакеты намного быстрее (в разы). А уж если трафик платный, так вообще сказка.

bobr написал:
initrd этим архиватором заархивирован. Может в других дистрах по другому, у меня в генту так.

похоже, что везде так. Возможно только в дистрибутивах вроде SLAX (LiveCD) по другому.

#94649

Кстати,что за сжатие такое xz? Это что-то типа lzma, или нет?

#94842

bobr, используется алгоритм lzma

#94848
drBatty написал:
тем хуже для RPM. Патрег давно сменил в пакетах gzip на bzip, а его, в свою очередь на xz

Ладно, скажу иначе - сначала файлы запаковываются в cpio, затем в lzma (хотя поддерживается и более древний gzip) - т.е. cpio.lzma (или старое cpio.gz, совместимость сохранена) wink

#94850
bobr написал:
Кстати,что за сжатие такое xz? Это что-то типа lzma, или нет?

http://tukaani.org/xz/
LZMA2
самый лучший сжиматель на сегодня. Я гарантирую это! :)

#94854
alex-seed написал:
Ладно, скажу иначе - сначала файлы запаковываются в cpio, затем в lzma (хотя поддерживается и более древний gzip) - т.е. cpio.lzma (или старое cpio.gz, совместимость сохранена) wink

сжатие сжатого файла НЕ даёт сжатия.
Попробуйте сами - возьмите любой сжатый файл, и сожмите его по любому алгоритму. Размер скорее всего станет ещё больше.

#94861
drBatty написал:
сжатие сжатого файла НЕ даёт сжатия.

Эм.. :D
Ага, что получится если сжать tar хоть чем(gzip, bzip, ...)? Правильно, оно прекрасно сожмется (ну если внутри этого tar'а уже не сжатые файлы/папки). Так ведь cpio по сути тот же tar, так что все отлично сжимается.

#94903
alex-seed написал:
Ага, что получится если сжать tar хоть чем(gzip, bzip, ...)? Правильно, оно прекрасно сожмется (ну если внутри этого tar'а уже не сжатые файлы/папки). Так ведь cpio по сути тот же tar, так что все отлично сжимается.

ага. к тому же, cpio умеет и tar архивы делать. Хотя опций полезных там мало, она даже каталоги не умеет создавать по умолчанию.

В практическом смысле, основное преимущество tar - возможность сжатия по любому алгоритму (compress, gzip, bzip2, xz). Ну и удобство использования - не надо голову ломать, что получится после сжатия каталога(каталогов). Например бекап всех пользовательских данных в корень:
[console]# cd /
# tar -czf home.tar.gz /home[/console]
Распаковка
[console]# cd /
# tar -xf home.tar.gz[/console]
С cpio придётся ломать голову, на тему что будет со ссылками, с директориями, и как это ещё и сжать.

#94920
drBatty написал:
сжатие сжатого файла НЕ даёт сжатия.
Попробуйте сами - возьмите любой сжатый файл, и сожмите его по любому алгоритму. Размер скорее всего станет ещё больше.

cpio и tar не сжимают

Войдите или зарегистрируйтесь, чтобы ответить.