Перейти к содержимому

Как удалить пакет в centos 7

  • автор:

Установка, удаление программ и пакетов в CentOS

список установленных пакетов (программ) # yum list installed
проверка — установлен ли пакет # yum list installed httpd
список пакетов, доступных для установки из репозитория # yum list available
поиск пакета в репозитории # yum search httpd
установка пакета из репозитория # yum install httpd
показать зависимости пакета # yum deplit httpd
показать информация по пакету из репозитория # yum info httpd
подробно # yum -v info httpd
проверка наличия обновлений для системы и пакетов # yum check-update
обновления всех пакетов # yum update
для обновления конретного пакета # yum update httpd
для обновления версии пакета # yum upgrade httpd
удалить пакет # yum remove httpd
очистка кеша установочных файлов # yum clean
создание/обновление кеша репозитория # yum makecache
установка стороннего скачаннего RPM-файла # yum localinstall /path/to/rpm/file/installfile.rpm
обновление стороннего скачанного файла # yum localupdate /path/to/rpm/update/myinstall.rpm
переустановка программы/пакета # yum reinstall httpd
откат на предыдущую версию # yum downgrade httpd
показать список активных репозиториев # yum repolist
для более подробного списка # yum -v repolist
установка GPG ключа # rpm —import /path/to/gpg/key.gpg

You have no rights to post comments

Топ – 20 полезных команд yum

img

Сегодня хотелось бы кратко описать команды менеджера пакетов yum — официальная сборка FreePBX основана на CentOS, в котором yum установлен по умолчанию. Он пригодится для установки, удаления, обновления пакетов.

Установка пакета

К примеру, для установки пакета mc нужно ввести команду yum install mc . После ввода команды, система попросит подтверждение. Чтобы подтверждение было одобрено по умолчанию, нужно добавить ключ -y , к примеру yum –y install mc :

[root@localhost asterisk]# yum install mc Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.corbina.net * epel: mirror.datacenter.by * extras: mirror.corbina.net * updates: mirror.corbina.net Resolving Dependencies --> Running transaction check ---> Package mc.x86_64 1:4.8.7-11.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: mc x86_64 1:4.8.7-11.el7 base 1.7 M Transaction Summary ================================================================================ Install 1 Package Total download size: 1.7 M Installed size: 5.6 M Is this ok [y/d/N]: y Downloading packages: mc-4.8.7-11.el7.x86_64.rpm | 1.7 MB 00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : 1:mc-4.8.7-11.el7.x86_64 1/1 Verifying : 1:mc-4.8.7-11.el7.x86_64 1/1 Installed: mc.x86_64 1:4.8.7-11.el7 Complete!
Удаление пакета

Для удаления пакета, соответственно, нужно ввести команду yum remove mc . Точно также можно использовать ключ для подтверждения -y :

[root@localhost asterisk]# yum remove mc Loaded plugins: fastestmirror Resolving Dependencies --> Running transaction check ---> Package mc.x86_64 1:4.8.7-11.el7 will be erased --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Removing: mc x86_64 1:4.8.7-11.el7 @base 5.6 M Transaction Summary ================================================================================ Remove 1 Package Installed size: 5.6 M Is this ok [y/N]: y Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Erasing : 1:mc-4.8.7-11.el7.x86_64 1/1 Verifying : 1:mc-4.8.7-11.el7.x86_64 1/1 Removed: mc.x86_64 1:4.8.7-11.el7 Complete!
Обновление пакета

Предположим – у вас старая версия mysql и вам необходимо ее обновить – тут используется команда update. Целиком команда будет выглядеть так: yum update mysql .

Поиск пакета

Если хотите проверить наличие установленного конкретного пакета на сервере и доступные для установки – используйте команду list. Целиком команда будет выглядеть так: yum list mysql . Также можно указать точную версию пакета, если вам требуется более скрупулезный поиск.

Вывод информации о пакете

Если хотите вывести информацию о пакете – используйте команду info. Целиком команда будет выглядеть так: yum info mc .

Топ – 20 полезных команд yum

Вывод информации о всех доступных и установленных пакетах

Для этого используется команда list с модификаторами. Для вывода доступных пакетов: yum list | less , а для вывода всех установленных — yum list installed | less

Проверка доступных обновлений для пакетов и само обновление

Для проверки служит команда check-update, а для обновления — update. Ниже три примера использования команд:

  • yum check-update mysql — проверка обновлений пакета mysql;
  • yum list updates — вывод списка обновлений;
  • yum update mc — обновление Midnight Commander’а;
  • yum –y update — обновление всех установленных пакетов;
Групповые пакеты и операции с ними

В Линуксе некоторые пакеты собраны в так называемые групповые пакеты – к примеру, DNS Name Server, Editors, Java Development и так далее. С помощью yum можно устанавливать групповые пакеты с помощью команды groupinstall — пример далее yum groupinstall ‘Clustering . Коротко опишу остальные команды для манипуляций с групповыми пакетами:

  • yum grouplist — вывод всех доступных к установке групповых пакетов;
  • yum groupupdate ‘Base’ — обновление конкретного группового пакета, в данном случае – Base;
  • yum groupremove ‘Editors’ — удаление группового пакета;
Репозитории в yum

Поиск пакетов происходит в так называемых репозиториях, ниже приведу несколько команд для работы с ними – принцип тот же, что и с пакетами (команды list, к примеру). Вывод всех активных репозиториев производится с помощью команды yum repolist , вывод также и неактивных репозиториев – с помощью команды yum repolist all

Для установки пакета из конкретного репозитория, неважно, активного или неактивного, используется ключ —enablerepo . Как пример – установка phpmyadmin: yum –enablerepo=epel install phpmyadmin

Терминал в yum и история

Если Вы собираетесь проводить очень много операций с пакетами, то можно сразу зайти в оболочку yum с помощью команды yum shell и с помощью уже известных вам команд (только уже без первых трёх букв, соответственно), Вы можете устанавливатьудалятьобновлятьwhatever пакеты. Также интересной фичей является возможность посмотреть историю установок в yum – с помощью команды yum history .

Как удалить пакет в centos 7

Как уже отмечалось, весь Linux состоит из пакетов. В RedHat работу с пакетами выполняет программа rpm (RedHat Package Manager), а сами файлы, содержащие пакеты, имеют расширение .rpm . Кроме RedHat существует еще несколько дистрибутивов Linux, использующих rpm ; самые известные — Caldera, SuSE и KSI. Их так и называют — rpm-системы.

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

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

Некоторые расширения .rpm-файлов

РасширениеНазначение
.i386.rpm Пакет для Linux/Intel
.src.rpm Исходный код пакета (никогда не устанавливайте .src.rpm — потом не удалите!)
.alpha.rpm Пакет для Linux/Alpha
.sparc.rpm Пакет для Linux/Sparc (Sun)
.ppc.rpm Пакет для Linux/PowerPC
.noarch.rpmПакет для всех архитектур (обычно содержит данные — файлы конфигурации, шрифты и т.д.)

Кроме того, само имя пакета состоит из собственно названия и версии. Например, lynx-2.8.2-3.i386.rpm — программа lynx , версия 2.8.2, build 3. К сожалению, формальных правил, позволяющих понять, где кончается имя и начинается версия, нет.

Файлы пакетов обычно расположены в одном из трех мест — в дистрибутиве, в разделе дополнений (updates) или в резделе «пожертвований» (contrib). В ИЯФ для RedHat 5.2/Intel это соответственно

Пакеты с исходными кодами всегда лежат в директориях SRPMS/ , и содержат исходный код для всех архитектур.

Использование rpm

Хотя rpm выполняет все функции работы с пакетами (включая создание .i386.rpm из .src.rpm), сейчас рассмотрим лишь основные действия.

Установка. Для установки пакета используется команда rpm -i (Install), которой указывается полное имя файла, содержащего пакет. Пример:

Если пакет уже установлен, rpm откажется его устанавливать. Если же это новая версия (т.е. делается не установка, а обновление), то надо воспользоваться командой rpm -U (Upgrade); фирма RedHat рекомендует «для красоты» использовать форму rpm -Uvh — при этом «прогресс» в установке показывается индикатором из символов » # «. Пример:

bobby:~# rpm -Uvh wu-ftpd-2.4.2b18-2.1.i386.rpm wu-ftpd ################################################## bobby:~# _

Если требуется установить несколько пакетов, то можно указать их все в одной команде (через пробелы). Иногда это нужно — например, при обновлении программы, состоящей из нескольких пакетов (например, Netscape), чтобы rpm не выдавал ошибок из-за зависимостей пакетов.

Удаление. Для удаления установленного пакета используется команда rpm -e (Erase). Ей указывается имя пакета (можно без версии), и без суффикса «.i386.rpm» . Пример:

При удалении нескольких пакетов их также стоит указать все вместе в одной команде, чтобы rpm не «ругался» на удаление пакета, от которого зависит другой пакет.

Информация. Чтобы узнать, установлен ли некий пакет, служит команда rpm -q (Query). Ей также указывается имя пакета, а она выдает его полное имя, если он установлен. Примеры:

bobby:~# rpm -q lynx lynx-2.8.1-5 bobby:~# rpm -q seyon package seyon is not installed bobby:~# _

Маленькие и заглавные буквы в именах пакетов различаются. Поскольку часто не помнишь точное имя пакета (и уж тем более, какие буквы там на каком регистре), можно воспользоваться командой rpm -qa (Query All packages — показать все пакеты) в сочетании с командой grep :

bobby:~# rpm -qa | grep -i after AfterStep-1.5-0.7 AfterStep-APPS-1.5-0.3 bobby:~# _

Шпаргалка по менеджеру пакетов YUM в CentOS и RHEL

date

23.09.2019

user

VyacheslavK

directory

CentOS, Linux

comments

Комментариев пока нет

В этой статье мы рассмотрим менеджер пакетов Yum, который позволяет управлять установкой, удалением и обновлением программ (.RPM-пакетов), автоматически разрешать зависимости, управлять дополнительными репозиториями. Данная статья о Yum должна прежде всего быть интересна как шпаргалка для начинающих администраторов Linux.

Yum (Yellowdog Updater Modified) – консольный менеджер пакетов для дистрибутивов Linux, основанных на пакетах формата RPM. (RedHat Package Manager) Сюда входят такие популярные ОС как RedHat, CentOS, Fedora, Oracle Linux, Scientific Linux.

Yum: установка, обновление и удаление пакетов

С чего начать? Пожалуй, как и в любых других случаях, начинаем со справки:

yum help – полная справка по менеджеру пакетов yum

Открыв ее, я выделю основные команды:

yum clean all – очистить кеш всех пакетов (обчычно используется при возникновении проблем при работе yum).
yum makecache – пересоздать кеш пакетов заново.
yum repolist – отобразить список подключенных репозиториев, вывод выглядит так:

Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.fasthost.ru * extras: mirror.fasthost.ru * updates: mirror.fasthost.ru repo id repo name status base/7/x86_64 CentOS-7 - Base 10,019 extras/7/x86_64 CentOS-7 - Extras 435 updates/7/x86_64 CentOS-7 - Updates 2,500 repolist: 12,954

У меня в системе установлены только стандартные репозитории CentOS-7: Base, Extras и Updates.

yum list available – вывести список всех доступных пакетов для установки.

yum list installed – список всех пакетов, которые установлены в системе.

yum list kernel – вывести список пакетов, которые относятся к ядру Linux.

Вы можете проверить установлен ли в вашей системе определенный пакет, например, apache:

yum list installed httpd

Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.fasthost.ru * extras: mirror.fasthost.ru * updates: mirror.fasthost.ru Installed Packages httpd.x86_64 2.4.6-89.el7.centos.1 @updates

Вы можете получить более подробную информацию о пакете, например, получим данные о пакете MariaDB:

yum info mariadb

yum info получить информацию о пакете

Чтобы установить пакет используется команда yum install. Для установки веб-сервера apache выполните:

yum install httpd

Если при выплнении команд yum вы получаете ошибку Traceback (most recent call last):thread.error: can’t start new thread , скорее всего у вас не хватает оперативной памяти. Попробуйте добавить RAM или отключите плагины yum (в /etc/yum.conf укажите plugins=0).

Перед установкой пакета можно проверить его на зависимости и необходимые пакеты с помощью команды:

yum deplist httpd

Если вы хотите установить какой-то пакет, но забыли его полное название, можно воспользоваться подстановочным символом *. Например:

yum install epel-*

Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: centos.fasthost.ru * extras: centos.fasthost.ru * updates: centos.fasthost.ru Resolving Dependencies --> Running transaction check ---> Package epel-release.noarch 0:7-11 will be installed --> Finished Dependency Resolution Install 1 Package Total download size: 15 k Installed size: 24 k Is this ok [y/d/N]:

Если ввести просто:

yum install epel

No package epel available. Error: Nothing to do

Увы, пакета не видно.

Yum позволяет установить сразу несколько пакетов:

yum install httpd php wget rsyslog

yum reinstall proftpd

Чтобы удалить установленный пакет с помощью yum используется параметр remove :

yum remove httpd

Но перед удалением любого пакета, рекомендуется сначала проверить его на зависимости (бывают пакеты, удаление которых влечет за собой удаление множества других пакетов, что в следствии приводит к неработоспособности системы):

yum deplist proftpd

yum deplist проверка зависимости пакетов

Найти пакет по имени или описанию:

yum search nginx

С помощью опции provides вы можете найти пакеты, содержавшие определенный файл, например:

yum provides */squid.conf

Выполнить обновление всех установленных пакетов можно с помощью команды:

Вы можете обновить только определенный пакет, указав его имя:

Проверить если доступные обновления для системы можно командой:

Получить информацию о доступных обновлениях безопасности:

yum updateinfo list security

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

yum downgrade perl

Так же хотел обратить ваше внимание, на групповую установку пакетов через grouplist. В репозитории существуют предопределенные группы пакетов с различными наборами программ. Вы можете вывести список имеющихся групп:

Рассмотрим на примере группового листа «Basic Web Server». Получить информацию группе и пакетах в ней:

yum groupinfo «Basic Web Server»

yum groupinfo

При проверке мы видим, что будут установлены набор пакеты и сервисы, для веб-сервера.

И еще один полезный групповой лист «System Administration Tools»:

yum groupinfo «System Administration Tools”

группы пакетов в yum

Как видим в данном листе содержатся пакеты, которые будут полезны для мониторинга и отладки.

Установить групповой лист можно командой:

yum groupinstall «System Administration Tools»

Установленные пакеты будут в отдельном блоке «Installed Groups»:

yum groupinstall

Yum: история и логи установки/удаления пакетов

Вы можете вывести информацию об истории установки пакетов yum (списка транзакций) с помощью команды:

yum history list

Вывод состоит из 5 столбцов, в первом выводится ID транзакции по которому можно посмотреть всю информацию (установленные пакеты, зависимости):

yum history info 10

yum history list - история установки пакетов

Более того, можно отменить данную транзакцию командой:

yum history undo 10

В моем случае удалилось бы 4 пакета:

yum history undo - удаление транзацкции установки пакета

Так же всю информацию об истории установки/удаления пакетов менеджером yum можно посмотреть в логе /var/log/yum.log:
cat /var/log/yum.log

Sep 03 11:06:38 Installed: mpfr-3.1.1-4.el7.x86_64 Sep 03 11:06:38 Installed: libmpc-1.0.1-3.el7.x86_64 Sep 03 11:06:38 Installed: libquadmath-4.8.5-36.el7_6.2.x86_64 Sep 03 11:06:38 Installed: apr-1.4.8-3.el7_4.1.x86_64 Sep 03 11:06:38 Installed: m4-1.4.16-10.el7.x86_64 Sep 03 11:06:38 Installed: apr-util-1.5.2-6.el7.x86_64 Sep 03 11:06:38 Installed: unzip-6.0-19.el7.x86_64 Sep 03 11:06:38 Installed: patch-2.7.1-10.el7_5.x86_64 Sep 03 11:06:38 Installed: 1:perl-Error-0.17020-2.el7.noarch Sep 03 11:06:38 Installed: boost-system-1.53.0-27.el7.x86_64 Sep 03 11:06:38 Installed: perl-Thread-Queue-3.02-2.el7.noarch Sep 03 11:06:38 Installed: avahi-libs-0.6.31-19.el7.x86_64 Sep 03 11:06:38 Installed: zip-3.0-11.el7.x86_64 Sep 03 11:06:38 Installed: boost-thread-1.53.0-27.el7.x86_64 Sep 03 11:06:38 Installed: libgfortran-4.8.5-36.el7_6.2.x86_64 Sep 03 11:06:39 Installed: cpp-4.8.5-36.el7_6.2.x86_64

Дополнительные полезные параметры yum

У утилиты yum есть несколько полезных опций, которые часто приходитя использовать при управлении пакетами. Чтобы при установке или удалении пакетов, после ввода команды не предпринимать никаких действий, можно воспользоваться опцией -y , например,:

yum update -y yum install httpd -y

Чтобы ответить no при запросе, нужно указать опцию:

Использовать yum без плагинов или отключить конкретный плагин:

Включить отключенный плагин:

Задействовать отключенный репозиторий:

yum update –enablerepo=atomic

Отключить определенный репозиторий:

yum update –disablerepo=atomic

Конфигурационный файл /etc/yum.conf

Конфигурационный файл yum — /etc/yum.conf .

Основные параметры конфигурационного файла:

cachedir – локальный кэш пакетов (по умоланию /var/cache/yum)

logfile — путь до файла с логами yum

obsoletes — обновлять или нет, устаревшие пакеты(1-да,0-нет)

gpgcheck — проверка подписи пакета перед установкой (1-да,0-нет)

keepcache — хранение кеша (1-да,0-нет)

cachedir — директория для хранения кеша(по умолчанию /var/cache/yum)

debuglevel – уровень отладки от 1 до 10

plugins — включение yum плагинов (1-да,0-нет)

bugtracker_url – ссылка по которой будут зарегистрированы ошибки работы yum

installonly_limit – максимальное количество версий, которые могут быть установлены для одного пакета.

Полезные плагины yum

Для чего нужны плагины в yum? Как и везде, упрощают нашу работу.

Некоторые популярные плагины и их описание:

yum-plugin-fastestmirror – плагин служащий для измерения скорости зеркал и предоставления самого быстрого для установки пакетов.

yum-plugin-security — плагин которые предоставляет список обновлений относящихся только к безопасности системы.

yum-plugin-keys — позволяет работать с ключами keys, keys-info, keys-data, keys-remove

Директория где хранятся все плагины /etc/yum/

yum-plugin-versionlock – позволяет блокировать обновление указанных пакетов

Чтобы вывести список доступных плагинов yum, выполните:

yum search yum-plugin

======================================================================= N/S matched: yum-plugin ======================================================================= PackageKit-yum-plugin.x86_64 : Tell PackageKit to check for updates when yum exits fusioninventory-agent-yum-plugin.noarch : Ask FusionInventory agent to send an inventory when yum exits kabi-yum-plugins.noarch : The CentOS Linux kernel ABI yum plugin yum-plugin-aliases.noarch : Yum plugin to enable aliases filters yum-plugin-auto-update-debug-info.noarch : Yum plugin to enable automatic updates to installed debuginfo packages yum-plugin-changelog.noarch : Yum plugin for viewing package changelogs before/after updating yum-plugin-copr.noarch : Yum plugin to add copr command yum-plugin-fastestmirror.noarch : Yum plugin which chooses fastest repository from a mirrorlist yum-plugin-filter-data.noarch : Yum plugin to list filter based on package data yum-plugin-fs-snapshot.noarch : Yum plugin to automatically snapshot your filesystems during updates yum-plugin-keys.noarch : Yum plugin to deal with signing keys yum-plugin-list-data.noarch : Yum plugin to list aggregate package data yum-plugin-local.noarch : Yum plugin to automatically manage a local repo. of downloaded packages yum-plugin-merge-conf.noarch : Yum plugin to merge configuration changes when installing packages yum-plugin-ovl.noarch : Yum plugin to work around overlayfs issues yum-plugin-post-transaction-actions.noarch : Yum plugin to run arbitrary commands when certain pkgs are acted on yum-plugin-pre-transaction-actions.noarch : Yum plugin to run arbitrary commands when certain pkgs are acted on yum-plugin-priorities.noarch : plugin to give priorities to packages from different repos yum-plugin-protectbase.noarch : Yum plugin to protect packages from certain repositories. yum-plugin-ps.noarch : Yum plugin to look at processes, with respect to packages yum-plugin-remove-with-leaves.noarch : Yum plugin to remove dependencies which are no longer used because of a removal yum-plugin-rpm-warm-cache.noarch : Yum plugin to access the rpmdb files early to warm up access to the db yum-plugin-show-leaves.noarch : Yum plugin which shows newly installed leaf packages yum-plugin-tmprepo.noarch : Yum plugin to add temporary repositories yum-plugin-tsflags.noarch : Yum plugin to add tsflags by a commandline option yum-plugin-upgrade-helper.noarch : Yum plugin to help upgrades to the next distribution version yum-plugin-verify.noarch : Yum plugin to add verify command, and options yum-plugin-versionlock.noarch : Yum plugin to lock specified packages from being updated

Вы можете установить выбранный плагин командой yum install, как и любой другой пакет:

yum install yum-plugin-changelog

yum -y install yum-versionlock

Чтобы заблокировать обновление пакета через плагин, выполните:

yum versionlock nginx

Вывести список заблокировнных пакетов:

yum versionlock list

Убрать пакет из заблокированных:

yum versionlock delete nginx

yum versionlock - блокировка пакета от обновления

Если вам в какой-то момент времени не нужно использовать определенный плагин, вы его можете отключить, добавив префикс при вызове yum:

Или же отключить вообще все плагины, установленные в системе:

Использование yum через прокси

Yum для работы с репозиториями программ использует протокол HTTP/1.1. Если ваш Linux сервер имеет доступ в интернет только через HTTP прокси сервер, вы можете указать имя прокси сервера в конфигурационном файле /etc/yum.con в секции [main]:

Если прокси-сервер требует авторизацию, добавьте строки:

Для проверки работы yum через прокси сервер воспользуйтесь командой

yum clean all && yum search nginx

Для проверки я указал публичный прокси сервер с Германии и при установке, сработал плагин fastestmirror, нашел зеркала с которых скорость будет выше:

yum через прокси сервер

Если нужно использовать прокси только для некоторых репозиториев, не нужно править файл /etc/yum.conf, а настройки прокси указать в конфигурационном файле репозитория /etc/yum.repos.d/ваш_конфиг.repo.

Итак, в этой статье мы рассмотрели базовые возможности менеджера rpm пакета yum в Linux CentOS/ RHEL. В следующей статье мы более подробно поговорим об управлении репозиториями в Yum. Знакомьтесь, пробуйте и используйте yum в своей работе.

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *