http://wm-monitoring.ru/ ')) {alert('Спасибо за то что установили нашу кнопку! =)');} else {alert('Очень жаль! =(');}"> http://wm-monitoring.ru/

Главная Новости

ЛР №8. Управление пакетами

Опубликовано: 05.09.2018

видео ЛР №8. Управление пакетами

Как создать форму с помощью КОНСТРУКТОРА в базе данных ACCESS

Цель работы

Ознакомиться с основными принципами комплектации системы в дистрибутивах Linux на основе Red Hat Packet Manager (RPM) и научиться выполнять установку, удаление и обновление программного обеспечения.


Создание и настройка сети с роутерами в Cisco Packet Tracer

Задания к работе

Вывести полный список пакетов, установленных в системе (rpm -qa). Подсчитать общее количество пакетов, установленных в системе (rpm -qa | wc -l) Выбрать из общего списка все пакеты, имеющие в названии слово gnome (т.е. те пакеты, которые принадлежат интегрированной среде GNOME) и подсчитать их количество (rpm -qa |grep -i gnome | wc -l) Проверить, установлен ли в системе пакет mc (rpm-q mc) и получить расширенную информацию об этом пакете (rpm -qi mc) Вывести в файл список тех файлов, которые включены в пакет mc (rpm -ql mc) Вывести список зависимостей для этого пакета (rpm -qR mc) Выполнить имитацию удаления (НЕ УДАЛЕНИЕ!) пакета perl. Подсчитать количество пакетов, которые от него зависят (rpm -e --test perl &> f1; wc -l f1 – все задание в одной команде) Проверить, установлены ли в системе пакеты lynx, links и w3m. Выполнить установку пакета w3m (если не установлен) Выполнить имитацию установки пакетов (rpm -ivh - -test файл_пакета) httpd, vsftpd и webmin, проанализировать результаты (убедиться, что все зависимости удовлетворены)

Методические указания

Дистрибутивы и форматы пакетов Программы управления пакетами

Формат .tar

Формат .rpm

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

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

Может быть выбран один из следующих основных режимов: Инициализация базы данных, Перестроение базы данных, Сборка пакетов, Перекомпиляция пакетов, Сборка пакетов из tar-архивов, Запрос, Показ полей запроса, Установка, Обновление, Удаление, Проверка установки, Проверка подписи, Повторная подпись, Добавление подписи, Установка владельцев и групп и Показ конфигурации.

ОБЩИЕ ОПЦИИ

Эти опции могут быть использованы во всех режимах работы.

-vv Выводить много отладочной информации. --quiet Выводить как можно меньше сообщений - как правило, выводятся только сообщения об ошибках. --help Вывести более детальную, чем обычно, справку об использовании rpm . --version Вывести одну строку, содержащую номер версии используемого rpm . --rcfile <список-файлов> Каждый файл из разделенного двоеточиями <списка-файлов> последовательно читается rpm на предмет конфигурационной информации. По умолчанию <список-файлов> выглядит как /usr/lib/rpm/rpmrc:/etc/rpmrc:~/.rpmrc . В этом списке обязан существовать только первый файл; все тильды будут заменены значением переменной среды $HOME . --root <каталог> Использовать для всех операций файловую систему с корнем в <каталоге> . Обратите внимание, что это значит, что база данных также будет читаться и модифицироваться в <каталоге> , а все pre и post скрипты будут исполняться после chroot() в <каталог> . --dbpath <каталог> Использовать базу данных RPM, расположенную в <каталоге> . --justdb Обновить только базу данных, не затрагивая файловую систему. --nowait-lock Не ждать освобождения блокировки базы данных пакетов. --ftpproxy <хост> Использовать <хост> как FTP-прокси. См. ОПЦИИ FTP/HTTP . --ftpport <порт> Использовать <порт> как FTP порт прокси-сервера. См. ОПЦИИ FTP/HTTP . --httpproxy <хост> Использовать <хост> как HTTP-прокси. См. ОПЦИИ FTP/HTTP . --httpport <порт> Использовать <порт> как FTP или HTTP порт прокси-сервера. См. ОПЦИИ FTP/HTTP . --pipe <cmd> Перенаправить вывод rpm на вход команды <cmd> .

ОПЦИИ УСТАНОВКИ И ОБНОВЛЕНИЯ

Общая форма команды установки пакетов выглядит так:

rpm -i [опции-установки] <файл_пакета>+

Такая команда устанавливает новые пакеты . Общая форма команды обновления пакетов выглядит так:

rpm -U [опции-установки] <файл_пакета>+

Такая команда производит обновление установленных пакетов . Работа этой команды полностью аналогична работе команды установки за исключением того, что все остальные версии пакетов удаляются из системы.

rpm [-F|--freshen] [опции-установки] <файл_пакета>+

Такая команда производит обновление пакетов , но только в том случае, если в системе установлены более ранние версии этих пакетов .

Допускается задание <файл_пакета> в виде адресов ftp или http. В этом случае перед установкой файл будет получен с сервера, указанного в URL. См. ОПЦИИ FTP/HTTP на предмет информации о встроенной поддержке FTP/HTTP.

--force То же, что и комбинация --replacepkgs , --replacefiles и --oldpackage . -h , --hash Выводить знаки "#" по мере распаковки архива с пакетом . Количество печатаемых знаков рассчитывается при запуске rpm исходя из характеристик выходного потока с тем, чтобы совместно с именем пакета выводимая информация про каждый пакет занимала ровно одну строку. Используется совместно с -v для улучшения восприятия. --oldpackage Позволяет заменить новый пакет на более старый при обновлении (откатиться назад, на предыдущую версию). --percent Выводить процент готовности по мере распаковки архива с пакетом . Задумано для облегчения использования rpm из других утилит. --fancypercent Выводить "живой процент" готовности по мере установки пакета (полезно вместе с -h ). --replacefiles Устанавливать пакеты , даже если они перепишут файлы из других, уже установленных пакетов . --replacepkgs Устанавливать пакеты , даже если некоторые из них уже установлены в системе. --allfiles Устанавливать или обновлять все файлы, определенные как "missingok", даже если они уже существуют. --nodeps Не проверять зависимости перед установкой или обновлением пакета . --noscripts Не исполнять пре- и пост-установочных скриптов. --notriggers Не исполнять триггер-скриптов, активируемых при установке данного пакета . --ignoresize Не проверять файловую систему на наличие достаточного свободного места перед установкой этого пакета . --excludepath <путь> Не устанавливать файлы, чьи имена начинаются с <пути> . --excludedocs Не устанавливать никаких файлов, отмеченных при сборке пакета как файлы документации. --includedocs Устанавливать файлы документации. Это поведение по умолчанию. --test Не устанавливать пакет , просто проверить возможность установки и сообщить о возможных проблемах. --ignorearch Произвести установку или обновление, даже если архитектуры бинарного RPM и машины не совпадают. --ignoreos Произвести установку или обновление, даже если операционные системы бинарного RPM и машины не совпадают. --prefix <путь> Для переместимых пакетов : установить префикс установки в <путь> . --relocate <старый_путь> = <новый_путь> Для переместимых пакетов : преобразовывает файлы, которые должны были бы быть установлены в <старый_путь> , в <новый_путь> . --badreloc Для использования вместе с --relocate ; производит перемещение, даже если пакет не является переместимым. --noorder Не переупорядочивать список устанавливаемых пакетов . Обычно список переупорядочивается для удовлетворения зависимостей.

ОПЦИИ ЗАПРОСА

Общая форма команды запроса (инспекции) выглядит так:

rpm -q [опции-запроса]

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

Форматы запроса представляют собой модифицированную версию стандартного форматирования printf . Формат состоит из статических строк (которые могут включать стандартные escape-последовательности C для переводов строки, табуляций и других специальных символов) и форматов по типу используемых в printf (3) . Так как rpm уже знает типы данных, подлежащих выводу, спецификаторы типов должны быть опущены и заменены именами тэгов(ключей) заголовков, подлежащих выводу, заключенными в {} . Часть имени тэга RPMTAG_ может быть опущена.

Альтернативные форматы вывода могут быть заданы путем добавления к имени тэга : typetag . В настоящее время поддерживаются следующие типы: octal , date , shescape , perms , fflags и depflags .

Например, для вывода только названий запрашиваемых пакетов , можно использовать в качестве строки формата %{NAME} . Для вывода названий пакетов и информации о дистрибутиве в две колонки можно использовать %-30{NAME}%{DISTRIBUTION} .

Будучи запущенным с аргументом --querytags , rpm выведет список всех тэгов, которые можно использовать в строке формата.

Есть два набора опций для запроса - выбор пакетов и выбор информации.

Опции выбора пакетов :

<название_пакета> Запросить установленный в системе пакет с именем <название_пакета> . -a , --all Запросить все установленные в системе пакеты . --whatrequires <сервис> Запросить все пакеты , требующие <сервис> для правильного функционирования. --whatprovides <сервис> Запросить все пакеты , предоставляющие <сервис> . -f <файл> , --file <файл> Запросить пакеты , которым принадлежит <файл> . -g <группа> , --group <группа> Запросить пакеты , входящие в <группу> . -p <файл_пакета> Запросить (не инсталлированый) <файл_пакета> . Файл <файл_пакета> может быть задан как адрес ftp или http; в этом случае заголовок пакета будет получен с указанного сервера. См. ОПЦИИ FTP/HTTP на предмет встроенной поддержки FTP/HTTP. --specfile <spec-файл> Разобрать и запросить <spec-файл> так, как если бы это был пакет . Хотя не вся информация (например, списки файлов) доступна, этот тип запроса позволяет использовать rpm для извлечения информации из spec-файлов без необходимости написания парсера spec-файлов. --querybynumber <номер> Запросить непосредственно запись базы данных под указанным <номером> . Может быть полезно для отладочных целей. --triggeredby <пакет> Запросить все пакеты , содержащие триггер-скрипты, активируемые <пакетом> .

Опции выбора информации:

-i Вывести информацию о пакете , включая название, версию и описание. Использует --queryformat , если таковой задан. -R , --requires Вывести список пакетов , от которых зависит данный пакет . --provides Вывести список сервисов , предоставляемых данным пакетом . --changelog Вывести протокол изменений данного пакета . -l , --list Вывести список файлов, входящих в данный пакет . -s , --state Вывести состояние файлов в пакете (подразумевает -l ). Каждый файл может находиться в одном из следующих состояний: нормальный , не установлен или заменен . -d , --docfiles Вывести список только файлов документации (подразумевает -l ). -c , --configfiles Вывести список только конфигурационных файлов (подразумевает -l ). --scripts Вывести специфические для данного пакета скрипты, используемые как часть процессов инсталляции/деинсталляции, если таковые есть. --triggers , --triggerscripts Показать все триггер-скрипты, если таковые имеются, содержащиеся в пакете . --dump Вывести информацию о файлах следующим образом: path size mtime md5sum mode owner group isconfig isdoc rdev symlink. Эта опция должна использоваться в сочетании с по меньшей мере одной из опций -l , -c , -d . --last Упорядочить список пакетов по времени установки таким образом, что наиболее свежие пакеты находятся в верху списка. --filesbypkg Показать все файлы в каждом пакете . --triggerscripts Показать все триггер-скрипты для выбранных пакетов .

ОПЦИИ ПРОВЕРКИ

Общая форма команды проверки выглядит так:

rpm -V|-y|--verify [опции-проверки]

В процессе проверки пакета информация об инсталлированных файлах пакета сравнивается с информацией из оригинального пакета из базы данных RPM. В числе прочих, проверяется размер, контрольная сумма MD5, права доступа, тип, владелец и группа каждого файла. Все несоответствия докладываются. Опции выбора пакетов такие же, как и для запроса (инспекции) пакетов .

Файлы, которые не устанавливались из пакета (например, файлы документации, которые были исключены из процесса инсталляции при помощи опции " --excludedocs "), молча игнорируются.

Опции, которые могут быть использованы в процессе проверки:

--nofiles Игнорировать отсутствующие файлы. --nomd5 Игнорировать ошибки проверки контрольной суммы MD5.

Форматом вывода является строка из восьми символов, возможный символ " c", указывающий на конфигурационный файл, и имя файла. Каждый из восьми символов показывает результат сравнения одного из атрибутов файла со значением, записанным в базе данных RPM. Точка обозначает, что тест прошел успешно. Следующие символы говорят об ошибках некоторых тестов:

5 Контрольная сумма MD5 S Размер файла L Символическая ссылка T Время модификации D Устройство U Владелец G Группа M Права доступа (включает права доступа и тип файла) Общая форма команды удаления (деинсталляции) выглядит так:

rpm -e <название_пакета>+

--allmatches Удалить все версии пакета , отвечающие <названию_пакета> . Обычно, если <название_пакета> отвечает нескольким пакетам , выдается сообщение об ошибке и удаление не производится. --noscripts Не исполнять пре- и пост-установочные скрипты. --notriggers Не исполнять триггер-скриптов, активируемых при удалении данного пакета . --nodeps Не проверять зависимостей перед удалением пакетов . --test Не производить удаления, только сделать вид. Полезна в сочетании с опцией -vv .

Формат .deb

Постоянный адрес этой страницы:

Карта
rss