Сегодня хотелось бы кратко описать команды менеджера пакетов 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
.
Вывод информации о всех доступных и установленных пакетах
Для этого используется команда 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
.