- Аналог статьи про Ubuntu, Gentoo
- (Centos, Ubuntu) PackageKit — открытый и свободный набор приложений для обеспечения высокоуровнего интерфейса для различных пакетных менеджеров. Он используется RHEL в качестве графического интерфейса (по факту нескольких интерфейсов/утилит – add/remove software, package updater, settings) управления пакетами.
- Включаем в себя ряд приложений
- gpk-application: Добавить/удалить приложение
- gpk-update-viewer: Обновление системы
- gpk-prefs: Настройка параметров обновления приложений
- gpk-repo: Включение/выключение источников приложений
- gpk-log: Журнал установки, удаления и обновления приложений
- gpk-install-file: Устанавливает локальный пакет приложения
- gpk-update-icon: Когда PackageKit установлен, автоматически запускает значок сеанса при входе в систему
- gpk-backend-status: Показывает техническое состояние поддержки пакетным менеджером
- Поддерживает работу с:
- APT
- yum
- Conary
- Pacman
- Portage
- Zypper
- urpmi
- Включаем в себя ряд приложений
- База пакетов находится по пути /var/lib/rpm , с ней могут работать разные утилиты
- rpm (redhat package manager) – аналог dpkg (только локальная работа без репо, не устраняет проблемы с зависимостями)
- yum (yellowdog update manager) – аналог apt-get
- dnf (dandified yum) – аналог apt, рекомендуется использовать dnf (причем так же как с apt-get yum в актуальных версиях rhel 8 и старше это просто ссылка на dnf), он так же как и apt лучше работает с зависимостями, при этом использует команды на входе и конфигурационные файлы yum в /etc/yum.repos.d/* Например для rhel по умолчанию redhat.repo , причем в одном файле может быть прописано много репозиториев и часть из них могут быть с аутентификацией по ключам ssl (например, платные redhat).
- При установке софта weak dependencies – это необязательные для работы пакета зависимости, но чаще всего устанавливаемые/нужные
- Установка из repo в среднем предпочтительнее установки из файла т.к. (одна из причин) в репо будут обновления как основного софта, так и зависимого, при этом RHEL в целом рекомендует крайне аккуратно относится к апдейтам софта т.к. это может повлиять на стабильность, по умолчанию при установке dnf-automatic автоматически устанавливаются только security updates, а не все апдейты софта
- Поиск драйверов для ядра (напр. bnx2)
- CentOS работает с .rpm пакетами (так же как и RHEL, Fedora, Suse, Mandriva).
- Вот тут есть очень хорошая шапаргалка. Ниже только самое используемое, остальное проще взять оттуда.
Базовая/типовая работа
Проверка обновлений по всем репозиториям.
yum check-update
Обновление всех приложений (сразу и обновляем данные из репозиториев о пакетах и ставим эти пакеты) и ядра системы, можно отключать конкретные репозитории или наоборот:
-
- -disablerepo=[repo/mask] – отключаем поиск в определенном репозитории для операции (например, list, install, info, update, repolist, etc).
- -enablerepo=[repot/mask] – можно использовать в связке с предварительным отключением всех репозиториев для любой операции в рамках одного или нескольких включенных репозиториев. Без предварительного отключения толку нет т.к. по умолчанию все репозитории включены.
sudo yum/dnf update
sudo yum/dnf update --disablerepo=epel
sudoyum/dnf update --disablerepo "*" --enablerepo=mariadb
Проверка обновлений в конкретном репозитории mariadb, без установки.
sudo yum/dnf check-update --disablerepo "*" --enablerepo=mariadb
Если в списке обновлений было ядро – без перезагрузки не обойтись (если нужно проверить что код нового ядра запустится корректно прямо сейчас).
(37/37): kernel-3.10.0-957.10.1.el7.x86_64.rpm uname -a
Приложения из репозиториев ставятся через команду install.
sudo yum/dnf install python36
Обновление конкретного приложения
sudo yum/dnf update certbot
Список всех приложений, можно так же искать по имени и в конкретном репозитории, про добавление репозиториев отдельно
sudo yum/dnf list <name> sudo yum/dnf repo-pkgs epel list <name>
Список установленных приложений с краткой информацией по ним
sudo yum/dnf list installed
Поиск приложения (не только по имени)
yum/dnf search python36
Просмотр информации о приложении
yum/dnf info python36u-pip
Удаление ненужных приложений
sudo yum/dnf autoremove
Удаление конкретного приложения remove только удаляет, erase так же счищает cache копию пакета, которая остается по умолчанию в системе после удаления (на случай необходимости быстрого rollback).
sudo yum/dnf -y remove vsftpd sudo yum/dnf -y erase vsftpd
yum/dnf module list mariadb
Module install после module enable установит ту версию, которая ранее была добавлена в enable, независимо от default (d в выводе module list). Разрешить или запретить конкретный модуль – первая команда включит модуль nodejs версии 12, вторая, соответственно, запрещает использование модуля nodejs версии 14.
dnf module enable nodejs:12 dnf module disable nodejs:14
dnf/yum [-v] repolist [packet] [root@localhost ~]# yum repolist ... repo id repo name status base/7/x86_64 CentOS-7 - Base 9,007 extras/7/x86_64 CentOS-7 - Extras 390 updates/7/x86_64 CentOS-7 - Updates 2,507 repolist: 11,904 [root@localhost ~]# yum repolist -v Loading "fastestmirror" plugin Loading "langpacks" plugin Adding en_US.UTF-8 to language list Adding ru_RU.UTF-8 to language list Config time: 0.086 Yum version: 3.4.3 Loading mirror speeds from cached hostfile * base: centos-mirror.rbc.ru * extras: mirror.h1host.ru * updates: mirror.h1host.ru Setting up Package Sacks pkgsack time: 0.062 Repo-id : base/7/x86_64 Repo-name : CentOS-7 - Base Repo-revision: 1449700451 Repo-updated : Thu Dec 10 01:35:45 2015 Repo-pkgs : 9,007 Repo-size : 6.5 G Repo-mirrors : http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock Repo-baseurl : http://centos-mirror.rbc.ru/pub/centos/7.2.1511/os/x86_64/ (9 more) Repo-expire : 21,600 second(s) (last: Tue Oct 4 15:20:27 2016) Repo-filename: /etc/yum.repos.d/CentOS-Base.repo Repo-id : extras/7/x86_64 Repo-name : CentOS-7 - Extras Repo-revision: 1474301938 Repo-updated : Mon Sep 19 19:21:08 2016 Repo-pkgs : 390 Repo-size : 1.1 G Repo-mirrors : http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=extras&infra=stock Repo-baseurl : http://mirror.h1host.ru/centos/7.2.1511/extras/x86_64/ (9 more) Repo-expire : 21,600 second(s) (last: Tue Oct 4 15:20:27 2016) Repo-filename: /etc/yum.repos.d/CentOS-Base.repo Repo-id : updates/7/x86_64 Repo-name : CentOS-7 - Updates Repo-revision: 1475525745 Repo-updated : Mon Oct 3 23:20:22 2016 Repo-pkgs : 2,507 Repo-size : 7.0 G Repo-mirrors : http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=updates&infra=stock Repo-baseurl : http://mirror.h1host.ru/centos/7.2.1511/updates/x86_64/ (9 more) Repo-expire : 21,600 second(s) (last: Tue Oct 4 15:20:27 2016) Repo-filename: /etc/yum.repos.d/CentOS-Base.repo repolist: 11,904
Пример обновления ядра centos
[root@localhost ~]# uname -r 3.10.0-327.el7.x86_64
[root@localhost ~]# yum -y update kernel
[root@localhost ~]# yum list installed kernel Installed Packages kernel.x86_64 3.10.0-327.el7 @anaconda kernel.x86_64 3.10.0-327.36.2.el7 @updates
[root@localhost ~]# cat /boot/grub2/grub.cfg | grep menuentry | grep el7 menuentry 'CentOS Linux (3.10.0-327.36.2.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-327.el7.x86_64-advanced-9de934e4-f41b-4169-ab46-d4d8e9e43664' { menuentry 'CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-327.el7.x86_64-advanced-9de934e4-f41b-4169-ab46-d4d8e9e43664' {
[user1@localhost ~]$ uname -r 3.10.0-327.36.2.el7.x86_64
YUM/DNf
- yumdownloader позволяет выкачать как отдельные пакеты, так и все необходимые зависимости без установки
- yumdownloader mc
- yumdownloader samba –destdir ~/samba –resolve
- можно работать с группами пакетов, например обновить или удалить группу:
- sudo yum group update “Стандартный веб-сервер”
- sudo yum group remove “Стандартный веб-сервер”
YUM GROUP commands
-
yum grouplist Lists installed groups and groups that are available for installation. yum groupinfo groupname
Displays detailed information about a group. yum groupinstall groupname
Installs all the packages in a group. yum groupupdate groupname
Updates all the packages in a group. yum groupremove groupname
Removes all the packages in a group.
[root@localhost ~]# yum -y group install "Smart Card Support" Loaded plugins: fastestmirror, langpacks There is no installed groups file. Maybe run: yum groups mark convert (see man yum) Loading mirror speeds from cached hostfile * base: mirror.logol.ru * extras: mirror.logol.ru * updates: mirror.logol.ru Resolving Dependencies --> Running transaction check ---> Package coolkey.x86_64 0:1.1.0-33.el7 will be installed --> Processing Dependency: pcsc-lite-libs for package: coolkey-1.1.0-33.el7.x86_64 --> Processing Dependency: pcsc-lite for package: coolkey-1.1.0-33.el7.x86_64 ---> Package esc.x86_64 0:1.1.0-36.el7 will be installed --> Processing Dependency: xulrunner for package: esc-1.1.0-36.el7.x86_64 ---> Package pam_pkcs11.x86_64 0:0.6.2-24.el7 will be installed ---> Package pcsc-lite-ccid.x86_64 0:1.4.10-10.el7 will be installed --> Running transaction check ---> Package pcsc-lite.x86_64 0:1.8.8-6.el7 will be installed ---> Package pcsc-lite-libs.x86_64 0:1.8.8-6.el7 will be installed ---> Package xulrunner.x86_64 0:31.6.0-2.el7.centos will be installed --> Finished Dependency Resolution Dependencies Resolved =============================================================================================================================================================================================================== Package Arch Version Repository Size =============================================================================================================================================================================================================== Installing for group install "Smart Card Support": coolkey x86_64 1.1.0-33.el7 base 113 k esc x86_64 1.1.0-36.el7 base 382 k pam_pkcs11 x86_64 0.6.2-24.el7 base 211 k pcsc-lite-ccid x86_64 1.4.10-10.el7 base 157 k Installing for dependencies: pcsc-lite x86_64 1.8.8-6.el7 base 190 k pcsc-lite-libs x86_64 1.8.8-6.el7 base 34 k xulrunner x86_64 31.6.0-2.el7.centos base 26 M Transaction Summary =============================================================================================================================================================================================================== Install 4 Packages (+3 Dependent packages) Total download size: 27 M Installed size: 66 M Downloading packages: (1/7): esc-1.1.0-36.el7.x86_64.rpm | 382 kB 00:00:00 (2/7): pam_pkcs11-0.6.2-24.el7.x86_64.rpm | 211 kB 00:00:00 (3/7): pcsc-lite-1.8.8-6.el7.x86_64.rpm | 190 kB 00:00:00 (4/7): pcsc-lite-ccid-1.4.10-10.el7.x86_64.rpm | 157 kB 00:00:00 (5/7): pcsc-lite-libs-1.8.8-6.el7.x86_64.rpm | 34 kB 00:00:00 (6/7): coolkey-1.1.0-33.el7.x86_64.rpm | 113 kB 00:00:01 (7/7): xulrunner-31.6.0-2.el7.centos.x86_64.rpm | 26 MB 00:00:02 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 7.3 MB/s | 27 MB 00:00:03 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : pcsc-lite-libs-1.8.8-6.el7.x86_64 1/7 Installing : pcsc-lite-1.8.8-6.el7.x86_64 2/7 Installing : pcsc-lite-ccid-1.4.10-10.el7.x86_64 3/7 Installing : coolkey-1.1.0-33.el7.x86_64 4/7 Installing : xulrunner-31.6.0-2.el7.centos.x86_64 5/7 Installing : esc-1.1.0-36.el7.x86_64 6/7 Installing : pam_pkcs11-0.6.2-24.el7.x86_64 7/7 Verifying : esc-1.1.0-36.el7.x86_64 1/7 Verifying : pcsc-lite-ccid-1.4.10-10.el7.x86_64 2/7 Verifying : coolkey-1.1.0-33.el7.x86_64 3/7 Verifying : pam_pkcs11-0.6.2-24.el7.x86_64 4/7 Verifying : xulrunner-31.6.0-2.el7.centos.x86_64 5/7 Verifying : pcsc-lite-1.8.8-6.el7.x86_64 6/7 Verifying : pcsc-lite-libs-1.8.8-6.el7.x86_64 7/7 Installed: coolkey.x86_64 0:1.1.0-33.el7 esc.x86_64 0:1.1.0-36.el7 pam_pkcs11.x86_64 0:0.6.2-24.el7 pcsc-lite-ccid.x86_64 0:1.4.10-10.el7 Dependency Installed: pcsc-lite.x86_64 0:1.8.8-6.el7 pcsc-lite-libs.x86_64 0:1.8.8-6.el7 xulrunner.x86_64 0:31.6.0-2.el7.centos Complete! [user1@localhost ~]$ yum group list Loaded plugins: fastestmirror, langpacks There is no installed groups file. Maybe run: yum groups mark convert (see man yum) Loading mirror speeds from cached hostfile * base: mirror.h1host.ru * extras: mirror.logol.ru * updates: mirror.h1host.ru Available Environment Groups: Minimal Install Compute Node Infrastructure Server File and Print Server Basic Web Server Virtualization Host Server with GUI GNOME Desktop KDE Plasma Workspaces Development and Creative Workstation Available Groups: Compatibility Libraries Console Internet Tools Development Tools Graphical Administration Tools Legacy UNIX Compatibility Scientific Support Security Tools Smart Card Support System Administration Tools System Management Done [user1@localhost ~]$ yum group info "Minimal Install" ... Environment Group: Minimal Install Environment-Id: minimal Description: Basic functionality. Mandatory Groups: +core Optional Groups: +debugging [user1@localhost ~]$ yum group info "Server with GUI" ... Environment Group: Server with GUI Environment-Id: graphical-server-environment Description: Server for operating network infrastructure services, with a GUI. Mandatory Groups: +base +core +desktop-debugging +dial-up +fonts +gnome-desktop +guest-agents +guest-desktop-agents +input-methods +internet-browser +multimedia +print-client +x11 Optional Groups: +backup-server +directory-server +dns-server +file-server +ftp-server +ha +hardware-monitoring +identity-management-server +infiniband +java-platform +kde-desktop +large-systems +load-balancer +mail-server +mainframe-access +mariadb +network-file-system-client +performance +postgresql +print-server +remote-desktop-clients +remote-system-management +resilient-storage +virtualization-client +virtualization-hypervisor +virtualization-tools
rpm
-
- извлечение файлов пакета
- rpm2cpio – старый способ (до 4ГБ), извлекает из cpio архив
- rpm2cpio php-5.1.4-1.esp1.x86_64.rpm | cpio -idmv
Из RPM-пакета (например с диска установки) можно извлечь конкретные файлы, используя утилиту rpm2cpio. Полезно это может быть в случае если нужно по какой-то причине восстановить файл (попортили конфиг/файл, удалили). К примеру нам нужно восстановить файл /etc/ntp.conf. Узнаем в каком пакете он находится. ~$ rpm -qf /etc/ntp.conf ntp-4.2.6p5-22.el7.centos.2.x86_64 Извлекаем все файлы из пакета rpm (-i) и создаем директории (-d). Далее находим в распакованном пакете нужный файл (стандартно через ls) и копируем куда нужно. # rpm2cpio /mnt/Packages/ntp-4.2.6p5-18.el7.x86_64.rpm | cpio –id 2795 blocks
- rpm2cpio php-5.1.4-1.esp1.x86_64.rpm | cpio -idmv
- rpm2archive – более новый
- rpm2cpio – старый способ (до 4ГБ), извлекает из cpio архив
- опции
- -q – query – просмотреть информации, не установка
- (-qa) -a (all) – все пакеты, просмотр всех установленных пакетов
- (-ql) -l (list) – вывести список файлов в пакете
- -F – freshing vs upgrading package – fresh не устанавливает пакет если в системе не было старой его версии в отличии от upgrade
- -ivh
- -i – установка файла
- -v (verbose) – более подробная информация при установке
- -h – статус бар
- -q – query – просмотреть информации, не установка
- извлечение файлов пакета
rpm -Fvh foo-2.0-1.el6.x86_64.rpm RPM's freshen option checks the versions of the packages specified on the command line against the versions of packages that have already been installed on your system. When a newer version of an already-installed package is processed by RPM's freshen option, it is upgraded to the newer version. However, RPM's freshen option does not install a package if no previously-installed package of the same name exists. This differs from RPM's upgrade option, as an upgrade does install packages whether or not an older version of the package was already installed.
Установка приложения из .rpm пакета делается с помощью утилиты rpm, но можно rpm пакет указать и на вход yum/dnf. Можно отключить проверку на зависимостей, в случае с tcpdump работает. Если не использовать этот подход, то можно получить dependency hell (tcpdump -> libpcap -> glibc…).
sudo rpm --force --nodeps -i tcpdump-4.9.2-3.el7.x86_64.rpm sudo yum install ./tcpdump-4.9.2-3.el7.x86_64.rpm
ПОДПИСКА red hat
- subscription-manager register -auto-attach – регистрация системы в RedHat Network (RHN) / Red Hat Subscription Management (RHSM)
-
rhnsd – демон обеспечивающий работу RHN
rhnsd - a program for quering the Red Hat Network for updates and information
настройка/добавление репозитория
- Базовая инструкция
- файлы с репозиториями имеют расширение .repo
Для установки разных утилит зачастую требуется установка репозиториев – например для python может понадобиться добавление репозитория epel (оффициальный репо fedora).
Включение репозитория на CentOS7 (проверено, работает) – или/или
- vim /etc/yum.repos.d/Rocky-PowerTools.repo enabled=1 - sudo dnf config-manager --set-enabled powertools - sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
Установка репозитория
в самом простом случае просто добавляем репозиторий через установку пакета этого репозитория (yum/dnf install) – такой способ поддерживается epel (extra packages for enterprise linux), очень популярным репозиторием RHEL-based систем
sudo yum/dnf install epel-release
в чуть более сложном первой командой (rpm import) добавляем публичные ключи, которые будут использоваться для проверки подписанных приватным ключем файлов из репо, второй (yum install) добавляем уже сам репо
The following command installs the Red Hat Enterprise Linux 8 EPEL repo packagesudo rpm --import http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-8
sudo yum install http://dl.fedoraproject.org/pub/epel/8/x86_64/e/epel-release-8-2.noarch.rpm
ручная настройка
Создаем файл в директории репозиториев /etc/yum.repos.d/mariadb.repo , задаем настройки (enabled позволяет управлять включением/отключением репо, gpgcheck проверяет подпись пакетов)
[mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.4/centos73-amd64/ gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 enabled=1
(Необязательно) После этого, нужно сбросить кэш в yum и пересоздать его заново:
yum clean all
yum makecache
Для удаления репозиториев используется утилита yum-config-manager, которая входит в набор yum-utils. Удалите репозиторий, например remi:
yum -y install yum-utils
yum-config-manager --disable remi
Для полного удаления репозиторий нужно удалить его конфигурационные файлы и обновить кэш yum.
Создание своего репозитория
- createrepo – основная утилита для создания
Проблемы
Если ни одно из приложений при обновлении не устанавливается с ошибкой невозможности аллоцировать память – скорей всего память утекла, поможет перезагрузка. Так же имеет смысл в будущем:
-
- разобраться с тем, какое приложение послужило проблемой (напр. sql, apache)
- нарастить память RAM или
- как минимум создать SWAP файл, чтобы система могла в случае необходимости использовать память на ЖД как RAM
[Errno 5] [Errno 12] Невозможно выделить память Пример OOM из-за mysql (сервис mysql падает в activating до перезагрузки) ~$ dmesg [Fri Mar 27 11:16:03 2020] Out of memory: Kill process 20533 (mysqld) score 62 or sacrifice child
[Fri Mar 27 11:16:03 2020] Killed process 20533 (mysqld), UID 27, total-vm:1433124kB, anon-rss:116248kB, file-rss:0kB, shmem-rss:0kB
[Fri Mar 27 11:16:03 2020] httpd invoked oom-killer: gfp_mask=0x201da, order=0, oom_score_adj=0 ~$ sudo service mysql status ● mysqld.service - MySQL Community Server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: activating (start-post) since Пт 2020-03-27 11:16:06 MSK; 6min ago
Если жалуется на недостаток места в разделе /boot – удаляем старые ядра через утилиту package-cleanup из пакета yum-utils.
Transaction check error: installing package kernel-3.10.0-957.5.1.el7.x86_64 needs 15MB on the /boot filesystem Error Summary ------------- Disk Requirements: At least 15MB more space needed on the /boot filesystem. ~$ df -h /boot Filesystem Size Used Avail Use% Mounted on /dev/vda1 240M 206M 18M 93% /boot ~$ rpm -q kernel kernel-3.10.0-327.28.2.el7.x86_64 kernel-3.10.0-327.28.3.el7.x86_64 kernel-3.10.0-862.14.4.el7.x86_64 kernel-3.10.0-957.1.3.el7.x86_64 ~$ sudo yum install yum-utils ~$ sudo package-cleanup --oldkernels --count=2
Чтобы в будущем не возникало таких же проблем можно по умолчанию оставлять только одно или два старых ядра в системе (при установке нового будут удалятся старые, если количество старых превышает лимит).
sudo vi /etc/yum.conf installonly_limit=2 # меняем с 5 до 1 или 2
Если возникли проблемы с совместимостью пакетов и в целом работе пакетного менеджера yum, то возможно поможет чистка кеша пакетов.
sudo yum/dnf clean all
Если Centos 7 не обновляются репозитории с ошибкой резолва mirrorlist.centos.org – меняем его на vault.centos.org. mirrorlist.centos.org вывели из эксплуатации т. к. CentOS EOL.
-bash-4.2$ sudo yum update Loaded plugins: elrepo, fastestmirror, product-id, search-disabled-repos, subscription-manager This system is not registered with an entitlement server. You can use subscription-manager to register. Determining fastest mirrors Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was 14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error" -bash-4.2$ ping mirrorlist.centos.org ping: mirrorlist.centos.org: Name or service not known -bash-4.2$ sudo sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* -bash-4.2$ sudo sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
questions
Which of the following commands updates the already installed RPM package rpmname?
A. rpm –update rpmname
B. rpm –U rpmname
C. rpm –q rpmname
D. rpm –force rpmname
E. rpm –u rpmname
Answer: B
rpm {-U|--upgrade} [install-options] PACKAGE_FILE ... This upgrades or installs the package currently installed to a newer version. This is the same as install, except all other version(s) of the package are removed after the new package is installed.
Which of the following commands lists the dependencies of the RPM package file foo.rpm?
A. rpm –qpR foo.rpm
B. rpm –dep foo
C. rpm –ld foo.rpm
D. rpm –R foo.rpm
E. rpm –pD foo
Answer: A The command that lists the dependencies of the RPM package file foo.rpm is rpm -qpR foo.rpm. The rpm command is the low-level tool for managing RPM packages on Linux systems.
The -q or --query option is used to query information about installed or uninstalled packages. The -p or --package option is used to specify a package file instead of an installed package name. The -R or --requires option is used to list the capabilities that the package requires. The capabilities are usually the names of other packages, libraries, or files that the package depends on. The rpm command is part of the 101.1 Determine and configure hardware settings topic of the LPI Linux Essentials certification program .
The other options are either invalid or do not perform the desired task. The rpm -dep foo command does not exist, as -dep is not a valid option for rpm. The rpm -ld foo.rpm command does not list the dependencies of the package file, but the files in the package. The rpm -R foo.rpm command does not list the dependencies of the package file, but the capabilities that the package provides. The rpm -pD foo command does not exist, as -pD is not a valid option for rpm.
Which option to the yum command will update the entire system? (Specify ONLY the option name without any additional parameters.)
update/upgrade
The yum command is a tool for managing software packages on Red Hat Enterprise Linux and other RPM-based systems. The yum update option will update the entire system by checking the versions of the installed packages and installing the latest available versions from the repositories. The yum upgrade option will do the same, but it will also remove any obsolete packages that are no longer needed by the system. Both options will prompt the user to confirm before proceeding with the update or upgrade process.
How can the list of files that would be installed by the RPM package file apache-xml.rpm be previewed?
A. rpm –qp apache-xml.rpm
B. rpm –qv apache-xml.rpm
C. rpm –ql apache-xml.rpm
D. rpm –qpl apache-xml.rpm
Answer: D https://stackoverflow.com/questions/5616668/view-rpm-scripts-with-rpm-scripts-qp When I runrpm -qlp
I get the file contents of the RPM$ rpm -qlp CS0.0.0_10.0.i386.rpm /home/thy_diff/rt /home/thy_diff/rt/Cerse-zip /home/thy_diff/rt/Configure_rht.properties /home/thy_diff/rt/UFE_Install.sh /home/thy_diff/M_client /home/thy_diff/M_client/Crse-CLIENT.zip /home/thy_diff/M_client/Configure_client.properties /home/thy_diff/M_client/UF_Install.sh