русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Менеджер пакетов RPM


Дата добавления: 2015-07-09; просмотров: 697; Нарушение авторских прав


В Red Hat Linux и подобных ему дистрибутивах используется менеджер пакетов RPM. Менеджер пакетов RPM реализован с помощью группы про- грамм, главная из которых — rpm. Далее приведен список важнейших режи- мов работы RPM:

r запрос — включается опцией -q или --query;

r проверка целостности файлов пакета — включается опцией -V или

--verify;

r проверка электронной подписи пакета — опции -K или --checksig;

r установка пакета — опции -i или --install;

r обновление пакета — работает с опцией -U или --upgrade;

r обновление версии пакета — опции -F или --freshen;

r удаление установленных пакетов — опции -e или --erase.


 

Используя режим запроса (опция -q), можно, например, узнать точную вер- сию установленного в системе пакета (пример 18.15).

 

Пример 18.15. Получение полного имени пакета в RPM

 

$ rpm -q bash

bash-4.0-18.4.1.i586

 

В этом примере был осуществлен запрос к базе данных RPM. В качестве ключа запроса использовалось краткое название установленного в системе пакета — bash. В результате исполнения запроса было получено полное имя пакета.

Для получения более подробной информации о пакете следует воспользо- ваться опциями -qi. Использование опций -qi выводит подробную инфор- мацию о пакете, в том числе суммарный размер файлов, установленных из пакета (поле Size), и группу пакетов, к которой этот пакет принадлежит (поле Group).

В примере 18.16 выводится список файлов, установленных из пакета.

 

Пример 18.16. Получение списка файлов, установленных из пакета

 

$ rpm -ql logrotate

/etc/cron.daily/logrotate

/etc/logrotate.conf

/etc/logrotate.d

/usr/sbin/logrotate

/usr/share/doc/logrotate-3.7.8

/usr/share/doc/logrotate-3.7.8/CHANGES

/usr/share/man/man8/logrotate.8.gz

/var/lib/logrotate.status



 

В этом примере получен список файлов, установленных из пакета logrotate.

Можно ограничиться лишь выводом списка конфигурационных файлов, установленных из пакета, используя для этого опции –qc. Кроме этого, с по- мощью опций -qd можно получить информацию о справочных файлах и до- кументации, установленных из этого пакета.

Если задано сочетание опций -qa, то будет получен список из всех пакетов, установленных в системе. Этим удобно пользоваться, если название пакета неизвестно.


 

Так, например, можно получить информацию обо всех пакетах, в имени ко- торых имеется строка "ftp" (пример 18.17).

 

Пример 18.17. Поиск пакета по подстроке

 

$ rpm -qa | grep ftp

 

Можно узнать, из какого пакета установлен некоторый файл (пример 18.18).

 

Пример 18.18. Определение пакета по известному файлу

 

$ rpm -qf /usr/sbin/named bind-9.6.1P2-1.1.1

 

Сочетание опций -qf требует в качестве ключа запроса задать имя файла.

Для получения информации о пакете, еще не установленном в системе, мож- но указать опции -qp, позволяющие извлекать информацию из файла пакета (пример 18.19).

 

Пример 18.19. Получение информации непосредственно из RPM-пакета

 

$ rpm -qip Downloads/bind-9.6.1P2-1.2.src.rpm

Name : bind Relocations: (not relocatable) Version : 9.6.1P2 Vendor: openSUSE

...

 

В примере 18.18 получена информация о пакете, который не установлен в системе, из файла пакета. Часть вывода пропущена для краткости.

Опция -V переключает rpm в режим проверки целостности файлов, установ- ленных из пакета (пример 18.20).

 

Пример 18.20. Проверка целостности пакета

 

$ rpm -V openldap-servers

S.5....T c /usr/share/openldap/migration/migrate_common.ph

 

Выводимая информация означает следующее: S — у файла не совпадает раз- мер, 5 — не совпадает сигнатура md5, T — время модификации изменено.

Опция -K позволяет проверять электронную подпись файлов пакетов. Перед проверкой следует удостовериться, что электронный сертификат производи- теля пакета (дистрибутива) установлен в системе. Обычно сертификат нахо-


 

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

 

Пример 18.21. Импортирование сертификата

 

# rpm --import /media/cdrom/RPM-GPG-KEY*

 

Команда rpm --import импортировала ключ (см. пример 18.21), находящий- ся на первом диске установочного комплекта, из файлов, удовлетворявших шаблону RPM-GPG-KEY*.

Далее импортированный ключ может использоваться для проверки цифро- вых подписей пакетов от данного производителя (пример 18.22).

 

Пример 18.22. Проверка подлинности пакета

 

$ rpm -K Downloads/bind-9.6.1P2-1.2.src.rpm

Downloads/bind-9.6.1P2-1.2.src.rpm: rsa sha1 (md5) pgp md5 ОК

 

В приведенном примере подтверждена надежность проверяемого пакета. Установка или обновление пакета осуществляется с помощью опций:

r -i — пакет будет установлен при отсутствии в системе его предыдущей версии;

r -U — пакет будет установлен или обновлен в любом случае (Upgrade);

r -F — возможно только обновление версии пакета. Если предыдущей вер- сии в системе нет, то установка произведена не будет.

При установке или обновлении пакетов в качестве аргумента для rpm указы- вают имена файлов пакетов (.rpm-файлы). Имеется возможность проверить последствия установки без проведения реальной установки пакетов с помо- щью опции --test.

Эта же опция полезна для проверки последствий удаления пакетов из систе- мы без реального удаления (пример 18.23).

 

Пример 18.23. Проверка возможности удаления пакета

 

$ rpm --test -e mailx error: Failed dependencies:

mailx is needed by (installed) nagios-3.0.6-4.1.i586

/usr/bin/mailx is needed by (installed) lsb-4.0-4.1.i586


 

Бывают случаи, когда установка или удаление пакета должны быть произве- дены, невзирая на нарушение зависимостей. Для этого предназначена опция

--nodeps.

В дистрибутивах Red Hat имеется удобная утилита yum, значительно автома- тизирующая поиск и установку пакетов и учитывающая зависимости пакетов. Важнейшие способы использования yum:

r yum search <имя> — поиск пакета по имени;

r yum list available — список доступных пакетов;

r yum grouplist — список всех установленных групп пакетов;

r yum repolist — список включенных репозиториев (источников) пакетов;

r yum info <имя> — вывод информации о пакете;

r yum provides <имя> — поиск пакета по его содержимому;

r yum install <имя> — установка пакета.

В других дистрибутивах обычно имеются аналогичные средства. Например, в SUSE пакеты можно устанавливать посредством программы конфигуриро- вания yast и специализированной утилиты zypper.

Вот пример использования zypper для поиска и установки пакета (при-

мер 18.24).

 

Пример 18.24. Использование zypper в Open SUSE

 

$ zypper se atftp

Loading repository data... Reading installed packages...

 

S | Name | Summary | Type

--+-------+---------------------------------+-----------

| atftp | Advanced TFTP Server and Client | package

| atftp | Advanced TFTP Server and Client | srcpackageerror

 

 

$ su

# zypper install atftp

 

Здесь показано, как в Open SUSE можно найти пакет по его имени и устано- вить его с помощью zypper.


 



<== предыдущая лекция | следующая лекция ==>
Управление библиотеками | Система управления пакетами Debian


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.153 сек.