O Yellowdog Updater Modified ou conhecido também como YUM é uma ferramenta utilizada para gerenciar a instalação e remoção de pacotes em distribuições Linux que utilizam o sistema RPM. Originalmente desenvolvido para a distribuição Red Hat, hoje ele também é utilizado em distribuições como Fedora, CentOS entre outras.
Instalação, remoção e atualização de pacotes
[root@notebook ~]# yum search proftp
proftpd-utils.x86_64 : ProFTPD - Additional utilities
proftpd-devel.i686 : ProFTPD - Tools and header files for developers
proftpd-devel.x86_64 : ProFTPD - Tools and header files for developers
proftpd-ldap.x86_64 : Module to add LDAP support to the ProFTPD FTP server
proftpd-mysql.x86_64 : Module to add MySQL support to the ProFTPD FTP server
proftpd-postgresql.x86_64 : Module to add PostgreSQL support to the ProFTPD FTP server
proftpd.x86_64 : Flexible, stable and highly-configurable FTP server
search – É usado para encontrar qualquer pacote que contenha a palavra chave específica na descrição.
[root@notebook ~]# yum install proftpd.x86_64
install – Usado para instalar a versão mais recente de um pacote ou grupo de pacotes.
[root@notebook ~]# yum remove ftp-0.17-70.fc24.x86_64
remove/erase – Usado para remover os pacotes especificados junto com qualquer outro pacote dependente dos pacotes que estão sendo removidos.
[root@notebook ~]# yum update
update – Usado para atualizar os pacotes específicado para a versão mais recente. Caso não haja pacotes especificados, o yum tentará atualizar todos os pacotes instalados.
[root@notebook ~]# yum check-update
check-update – Verifica se há atualizações disponíveis para pacotes instalados.
[root@notebook ~]# yum list
list – Lista todos os pacotes instalados no sistema.
[root@notebook ~]# yum list available
list available – Lista todos os pacotes disponíveis para instalar no sistema.
[root@notebook ~]# yum localinstall pacote.rpm
localinstall – Instala o pacote ‘.rpm’ resolvendo dependências.
[root@notebook ~]# yumdownloader samba.x86_64
yumdownloader – Faz download de pacotes .rpm do repósitorio.
[root@celta ~]# yumdownloader --source samba.x86_64
yumdownloader –source – Faz o download do source do pacote .rpm.
RPM
Agora vamos ver o RPM, o RPM é a abreviatura de Red Hat Package Manager, é um sistema de gerenciamento de pacotes de software, assim como o formato de arquivo usado por esse sistema. Ele é parte da Linux Standard Base e serve para instalar, atualizar, desinstalar, verificar e procurar softwares.
[root@celta ~]# rpm -qa
ntp-4.2.6p5-25.el7.centos.x86_64
perl-Socket-2.010-4.el7.x86_64
vim-filesystem-7.4.160-1.el7_3.1.x86_64
libsemanage-2.5-4.el7.x86_64
langtable-data-0.0.31-3.el7.noarch
-qa – Lista todos os pacotes instalados no sistema, (-q| –query, -a| –all).
[root@celta ~]# rpm -ivh samba-4.4.4-12.el7_3.x86_64.rpm
-ivh – Instala o pacote rpm mostrando o progresso. (-i|–install, -v| –verbose, -h| –hash). O v sinaliza uma saída detalhada, enquanto o sinalizador h exibe o progresso como uma série de hashes durante a instalação.
[root@celta etc]# rpm -qf yum.conf
yum-3.4.3-150.el7.centos.noarch
-qf – Mostra de que pacote o arquivo faz parte.
[root@celta etc]# rpm -ql yum-3.4.3-150.el7.centos.noarch
/etc/logrotate.d/yum
/etc/yum
/etc/yum.conf
/etc/yum.repos.d
/etc/yum/fssnap.d
/etc/yum/pluginconf.d
/etc/yum/protected.d
/etc/yum/vars
/etc/yum/version-groups.conf
/usr/bin/yum
...
...
...
-ql – Mostra os arquivos que o pacote faz parte.
[root@celta etc]# rpm -qc yum-3.4.3-150.el7.centos.noarch
/etc/logrotate.d/yum
/etc/yum.conf
/etc/yum/version-groups.conf
-qc – Mostra os arquivos de configuração de um pacote.
[root@celta etc]# rpm -qd yum-3.4.3-150.el7.centos.noarch
/usr/share/doc/yum-3.4.3/AUTHORS
/usr/share/doc/yum-3.4.3/COPYING
/usr/share/doc/yum-3.4.3/ChangeLog
/usr/share/doc/yum-3.4.3/INSTALL
/usr/share/doc/yum-3.4.3/PLUGINS
/usr/share/doc/yum-3.4.3/README
/usr/share/doc/yum-3.4.3/TODO
/usr/share/doc/yum-3.4.3/comps.rng
/usr/share/man/man5/yum.conf.5
/usr/share/man/man8/yum-shell.8
/usr/share/man/man8/yum.8
-qd – Mostra os arquivos da documentação de um pacote.
[root@celta ~]# rpm -qlp samba-4.4.4-12.el7_3.x86_64.rpm
/etc/openldap/schema
/etc/openldap/schema/samba.schema
/etc/pam.d/samba
/usr/bin/eventlogadm
/usr/bin/smbstatus
...
...
...
-qlp – Mostra o conteúdo de um pacote rpm.
[root@celta ~]# rpm -qR bacula-director-7.0.5-7.el7.x86_64
/bin/sh
/bin/sh
/bin/sh
/bin/sh
/usr/bin/env
bacula-common(x86-64) = 7.0.5-7.el7
bacula-libs(x86-64) = 7.0.5-7.el7
bacula-libs-sql(x86-64) = 7.0.5-7.el7
config(bacula-director) = 7.0.5-7.el7
libbac-7.0.5.so()(64bit)
...
...
...
-qR – Mostra os pacotes e as bibliotecas que um pacote pertence.
Referências:
https://pt.wikipedia.org/wiki/RPM_(Linux)
https://access.redhat.com/documentation/pt-BR/Red_Hat_Network_Satellite/5.4/html/Reference_Guide/pup-yum.html