Книга: Linux-сервер своими руками
4.17. Использование программы cpio
4.17. Использование программы cpio
Для создания архивов на магнитной ленте или жестком диске, а также для извлечения файлов из архивов используется программа cpio.
Программа cpio может работать в трех оперативных режимах. При этом режим работы задается указанной опцией. Помимо опций могут использоваться параметры, которые управляют работой cpio в заданном режиме. Формат вызова программы cpio зависит от режима, в котором она должна работать. Опции программы и соответствующий им формат вызова представлены в табл. 4.15, а параметры — в табл. 4.16.
Опции программы cpio Таблица 4.15
Опция | Формат вызова | Описание |
---|---|---|
-о | cpio –о[параметры] список_файлов [имя_архива] |
Копирование в архив всех файлов, которые указаны. Файлы в списке указываются по одному в строке |
-i | cpio –i параметры] [шаблоны] имя_архива |
В режиме, задаваемом этой опцией, программа cpio будет извлекать файлы из архива. При этом извлекаться будут только те файлы, чьи имена совпадут с одним из указанных шаблонов. Если ни одного шаблона не указано, то из архива будут извлекаться все файлы. Шаблон также может включать в себя символы подстановки |
-p | cpio –р[параметры] каталог |
Копирование будет производиться в указанный каталог |
Параметры программы cpio Таблица 4.16
Параметр | Описание |
---|---|
-0 | Этот параметр позволяет включить в архив файлы, имена которых содержат символ новой строки. Используется вместе с опциями –о и –р |
-а | Устанавливает текущее время в качестве времени последнего доступа к файлу |
-А | Присоединение файлов к существующему архиву на диске |
-b | Заменяет местами байты и полуслова |
-В | Устанавливает размер блока в 5120 байт. По умолчанию используется 512 байт |
-с | Чтение и запись заголовка как текста ASCII |
-С n | Устанавливает размер блока в n байтов |
-d | Предварительно создает каталоги в случае необходимости |
-Е файл | Используется вместе с опцией –i. При этом в качестве шаблонов, по которым отбираются файлы для извлечения, будут использоваться строки, содержащиеся в указанном файле. Таким образом, указываемый файл есть файл списка шаблонов |
-F файл | Использует указанный файл в качестве архива |
-Н тип | Устанавливает тип формата архива: bin — устаревший двоичный формат; crc — формат Unix SysV Release 4, использующий подсчет контрольных сумм (CRC); hpodc формат Hewlett-Packard; newc — формат Unix SysV Release 4, может использоваться для файловых систем, количество дескрипторов в которых превышает 65536; ode — формат POSIX.1; tar формат tar; ustar — формат POSIX.1 tar |
-I файл | Указанный файл будет использоваться в качестве исходного архива. Используется вместе с опциями –i и –р |
-l | Создает ссылки вместо копирования файлов в каталог при использовании опции –р |
-L | При встрече символической ссылки копироваться будет не сама ссылка, а файл, на который она указывает. Используется совместно с опциями –о и –р |
-m | Сохраняет время последнего изменения файла |
-М строка | Выводит указанную строку при смене носителя |
-n | Выводит GID (идентификатор группы) |
-О | файл Вывод в указанный файл |
-r | Переименование файлов, новые имена будут запрошены у пользователя |
-s | Замена байтов местами. Используется с опцией –i |
-S | Замена полуслов местами. Используется с опцией –i |
-t | Режим тестирования. Выводит содержимое архива, который должен быть создан, но сам архив при этом не создается |
-u | Перезапись файлов без подтверждения |
-v | Вывод имени всех файлов |
-V | Выводит точку вместо имени файла |
Давайте рассмотрим несколько примеров использования программы cpio. Создать архив можно с помощью опции –о программы cpio. Программа cpio будет читать имена файлов, которые следует поместить в архив со стандартного ввода. По умолчанию используется бинарный формат архива, поэтому формат архива нужно задать опцией –Н. Будем использовать формат tar. Введите команду:
cpio –о –Н tar –О arc.tar
Затем введите имена файлов, которые вы хотите добавить в архив, например:
/opt/ctrl/ctrl.с
/opt/ctrl/ctrl.html
По окончании ввода будет создан архивный файл arc. tar. Программа cpio создаст архив с сохранением структуры каталогов. Чтобы убедиться в этом, запустите файловый менеджер mc и просмотрите содержимое архива arc.tar.
Конечно, вводить имена файлов вручную не совсем приятное занятие. Для автоматизации ввода можно использовать средства перенаправления ввода/вывода. Например, для архивирования текущего каталога введите команду:
ls | cpio –о –Н tar –О current_dir.tar
Для извлечения файлов из архива введите команду:
cpio –i –H tar < current_dir.tar
В режиме извлечения файлов программа cpio читает со стандартного ввода имя архива.
- 4.1. Файлы и каталоги. Дерево каталогов
- 4.2. Команды для работы с файлами и каталогами
- 4.3.Ссылки
- 4.4. Стандартные имена устройств в Linux
- 4.5. Стандартные каталоги
- 4.6. Создание файловой системы. Типы файловых систем
- 4.7. Использование программы fdisk
- 4.8. Программа Disk Drake
- 4.9. Монтирование дисков. Файл/etc/fstab
- 4.10. Создание раздела (файла) подкачки
- 4.11. Использование LILO
- 4.12. Права доступа
- 4.13. Обслуживание файловой системы
- 4.14. Подключение магнитооптического диска
- 4.15. Использование стримера
- 4.16. Стратегия резервного копирования
- 4.17. Использование программы cpio
- 4.18. Повышение производительности жесткого диска
- 4.19. Создание массивов RAID
- 4.20. Форматирование дискет в Linux
- Восстановление с использованием инструмента gbak
- СТРУКТУРА ПРОСТОЙ ПРОГРАММЫ
- Типы страниц и их использование
- ПРИМЕР ПРОСТОЙ ПРОГРАММЫ НА ЯЗЫКЕ СИ
- Использование констант
- Использование переменной окружения ISC_PATH
- Использование сервера Yaffil внутри процесса
- Использование CAST() с типами дата
- 1.2.5. Пример программы
- Использование типов содержимого и столбцов
- Вызов хранимых процедур InterBase с использованием стандартного синтаксиса ODBC
- Использование кнопки Автосумма