O urpm é o gerenciador de pacotes em
modo texto padrão da distro Mageia, sua forma de uso é similar ao
apt-get mas ele não é um clone do apt-get.
O urpm é compostos pelos comandos
urpme, urpmi, urpmi.addmedia, urpmi.removemedia urpmi.update ,
urpmq e urpmf sendo que os dois últimos podem ser executados como
usuário normal. Embora você possa fazer todas as operações de
pacotes pelo CCM (Centro de Controle do Mageia) a administração
diretamente pela linha de comando oferece um controle mais especifico do que você vai instalar e
salvando a saída dos comandos sempre em uma arquivo tem uma
possibilidade de fazer restauração do pacotes antigos caso as
versões mais novas apresentarem algum tipo de bug que você venha
notar depois de 2 dias após a instalação, já que você saberá
quais pacotes foram removidos, substituídos e atualizados devido ao
que você instalou.
Pesquisando um pacote para baixar
$ urpmq -y abiword
Nota o comando urpmq faz distinção de
maiúscula e minuscula, para não fazer distinção use o flag -Y (
maiúsculo) no lugar do -y (minusculo)
Imprimindo a
versão, 'release' e arquitetura, do pacote instalado ou não
$ urpmq -f xfce4-whiskermenu-plugin
xfce4-whiskermenu-plugin-1.2.2-1.mga4.i586
Listando os arquivos de um pacote
instalado ou não
$ urpmq -l xfce4-whiskermenu-plugin
$MIRRORLIST:
media/core/release/media_info/20140129-225217-files.xml.lzma
/usr/bin/xfce4-popup-whiskermenu
/usr/lib/xfce4/panel/plugins/libwhiskermenu.so
/usr/share/doc/xfce4-whiskermenu-plugin
/usr/share/doc/xfce4-whiskermenu-plugin/CREDITS
/usr/share/doc/xfce4-whiskermenu-plugin/NEWS
---corte----
Listando as dependências do pacote
instalado ou não
$ urpmq --requires
xfce4-whiskermenu-plugin
--requires behaviour changed, use
--requires-recursive to get the old behaviour
xfce4-panel
hicolor-icon-theme
libc.so.6
libc.so.6(GLIBC_2.0)
libc.so.6(GLIBC_2.1.3)
libcairo.so.2
----corte---
Imprimindo um sumário do pacote
$ urpmq -S xfce4-clipman-plugin
xfce4-clipman-plugin : Clipboard
history plugin for the Xfce panel ( 1.2.3-3.mga4 )
Verificando as informações
de um pacote
$ urpmq -i sox
sem xml info para a mídia "Core
Release", resultado parcial para o pacote sox
$MIRRORLIST:
media/core/updates_testing/media_info/20141227-225832-info.xml.lzma
Name : sox
Version : 14.4.1
Release : 3.mga4
Group : Sound/Editors and
Converters
Size : 210890
Architecture: i586
Summary : A general purpose sound
file conversion tool
Name : sox
Version : 14.4.1
Release : 3.mga4
Group : Sound/Editors and
Converters
Size : 210890
Architecture: i586
Source RPM : sox-14.4.1-3.mga4.src.rpm
URL :
http://sox.sourceforge.net/
Summary : A general purpose sound
file conversion tool
Description :
SoX (Sound eXchange) is a sound file
format converter for Linux,
UNIX and DOS PCs. The self-described
'Swiss Army knife of sound
tools,' SoX can convert between many
different digitized sound
formats and perform simple sound
manipulation functions,
including sound effects.
Install the sox package if you'd like
to convert sound file formats
or manipulate some sounds.
Listando os nomes de todos os
pacotes disponíveis
$ urpmq --list
Para salvar em um arquivo faça: urpmq
--list > pacotes.txt
Verificando para que serve um pacote
$ urpmf --summary lame
libtwolame0:TwoLAME MP2 encoding
library
wmfire:A dock application that display
CPUs usage and more as flames
twolame:Optimized MPEG Audio Layer 2
(MP2) encoder
libtwolame-devel:Header files for
TwoLAME library
libtwolame0:TwoLAME MP2 encoding
library
wmfire:A dock application that display
CPUs usage and more as flames
flamerobin:Graphical client for
Firebird
gstreamer0.10-twolame:GStreamer plug-in
for MP2 encoding support
vlc-plugin-twolame:MP2 encoder plugin
for VLC
gstreamer1.0-twolame:GStreamer plug-in
for MP2 encoding support
vlc-plugin-twolame:MP2 encoder plugin
for VLC
libquicktime-lame:Libquicktime plugin
supporting the MP3 codec
lame:LAME Ain't an MP3 Encoder
liblame0:Main library for lame
liblame-devel:Headers for developing
programs that will use libmp3lame
gstreamer0.10-lame:GStreamer plug-in
for encoding mp3 songs using lame
gstreamer0.10-twolame:GStreamer plug-in
for MP2 encoding support
vlc-plugin-twolame:MP2 encoder plugin
for VLC
gstreamer1.0-lame:GStreamer plug-in for
encoding mp3 songs using lame
gstreamer1.0-twolame:GStreamer plug-in
for MP2 encoding support
vlc-plugin-twolame:MP2 encoder plugin
for VLC
Veja que aqui ele exibi a descrição
de todos os pacotes que contenha lame na parte do nome.
Se o mesmo pacote existir em mais de um
repositório, ele será exibido mais de uma vez.
Para reduzir o número de linhas que
contenha lame, você deve especificar o nome mais completo possível do pacote como abaixo.
$ urpmf --summary vlc-plugin-twolame
vlc-plugin-twolame:MP2 encoder plugin
for VLC
vlc-plugin-twolame:MP2 encoder plugin
for VLC
vlc-plugin-twolame:MP2 encoder plugin
for VLC
vlc-plugin-twolame:MP2 encoder plugin
for VLC
Aqui ele listou 4 vezes o mesmo pacote
especificado, porque o mesmo pacote existe em 4 repositórios
diferentes que estão ativados para download.
Verificando o tamanho de um pacote
de instalação
$ urpmf --size lame
libtwolame0:121524
twolame:37808
libtwolame-devel:452014
libtwolame0:121524
flamerobin:2928392
gstreamer0.10-twolame:27892
vlc-plugin-twolame:13311
gstreamer1.0-twolame:27884
vlc-plugin-twolame:13311
libquicktime-lame:15144
lame:353445
liblame0:292885
liblame-devel:963741
gstreamer0.10-lame:53516
gstreamer0.10-twolame:27892
vlc-plugin-twolame:13311
gstreamer1.0-lame:27700
gstreamer1.0-twolame:27884
vlc-plugin-twolame:13311
Verificando para que serve um pacote
$ urpmf --summary termcap
mingw64-termcap:MinGW terminal feature
database
mingw32-termcap:MinGW terminal feature
database
mingw64-termcap-static:Static version
of the cross compiled termcap library
mingw32-termcap-static:Static version
of the cross compiled termcap library
Listando os pacotes de um grupo de
instalação, por exemplo games
$ urpmf --group games
libkdegames6:System/Libraries
kdegames4:Graphical desktop/KDE
libkdegames-common:Graphical
desktop/KDE
gnome-games:Games/Other
libkdegamesprivate1:System/Libraries
---corte----
Procurando um arquivo em todos os
pacotes
$ urpmf wine |more
Este comando procura por wine em todos
os pacotes, exibindo o nome completo dele e caminho do arquivo no
pacote que está instalado ou não.
Nota que o comando exibirá todos os
pacotes que tiver descrição ou possuir wine em qualquer parte do
nome do pacote e não somente do pacote de nome wine, e que tiver o
nome wine dentro de um pacote qualquer mesmo que no nome do pacote
não tenha wine.
Outro exemplo:
$ urpmf wine.png (idem acima)
Instalando um pacote
# urpmi abiword
Instalando um pacote sem fazer a
limpeza automática do cache
Use a opção --noclean
# urpmi --noclean abiword
Nota:
Os pacotes que tiverem no DVD de
instalação não ficará salvo em /var/cache/urpmi/rpms sendo
instalado diretamente do DVD sem fazer cache, mesmo que você instalar
diretamente em linha de comando com o urpmi usando --noclean, sendo
este procedimento válido apenas para os pacotes baixado da Internet.
Instalando vários pacotes para
instalação em apenas uma linha de comando
# urpmi --noclean audacious
audacious-skins audacious-plugins
Removendo um pacote
# urpme firefox
Removendo pacotes órfãos
# urpme --auto-orphans
Para satisfazer as dependências, os
seguintes 12 pacotes serão removidos (11MB):
(pacotes órfãos)
indexhtml-1-10.1.mga4.noarch
libproxy-webkit-0.4.11-5.mga4.i586
libproxy1-0.4.11-5.mga4.i586
----corte----
Limpando o cache do urpmi
manualmente
# urpmi --clean
Nota:
Se você executar o comando acima
dentro do diretório /var/cache/urpmi/rpms será retornado o erro:
cannot remove
path when cwd is /var/cache/urpmi/rpms for /var/cache/urpmi/rpms: at
/usr/lib/perl5/vendor_perl/5.18.1/urpm/sys.pm line 361.
A solução é bem simples, basta sair
do diretório /var/cache/urpmi/rpms e executar novamente o comando
citado que a limpeza do cache funcionará.
Onde fica o cache dos pacotes
baixado da internet pra posterior instalação ?
O cache fica em /var/cache/urpmi/rpms
mas todos os pacotes baixado são excluídos automaticamente por
padrão após a instalação dos mesmos seja por programa gráfico ou
em linha de comando caso não seja marcado para não limpar o cache
ou se não especificar a opção --noclean em linha de comando ou se
você não configurou o mesmo para não deletar automaticamente os
pacotes depois de instalados.
Atualizando a base dados
# urpmi.update -a
Repositórios
Listando todos
repositórios disponíveis ativados ou não
$ urpmq --list-media
Core Release
Nonfree Release
No exemplo acima está somente com os
repositórios da mídia de DVD de instalação pois ainda não tinha
sido adicionando repositórios da internet através do CCM.
Agora no exemplo abaixo é depois que
cadastrei os repositórios da internet também
$ urpmq --list-media
Core Release (os padrão da
instalação que está na mídia de DVD)
Nonfree Release (os padrão da
instalação que está na mídia de DVD)
Core Release (distrib1)
Core Release Debug (distrib2)
Core Updates (distrib3)
Core Updates Debug (distrib4)
Core Updates Testing (distrib5)
Core Updates Testing Debug (distrib6)
Core Backports (distrib7)
Core Backports Debug (distrib8)
Core Backports Testing (distrib9)
Core Backports Testing Debug
(distrib10)
Nonfree Release (distrib11)
Nonfree Release Debug (distrib12)
Nonfree Updates (distrib13)
Nonfree Updates Debug (distrib14)
Nonfree Updates Testing (distrib15)
Nonfree Updates Testing Debug
(distrib16)
Nonfree Backports (distrib17)
Nonfree Backports Debug (distrib18)
Nonfree Backports Testing (distrib19)
Nonfree Backports Testing Debug
(distrib20)
Tainted Release (distrib21)
Tainted Release Debug (distrib22)
Tainted Updates (distrib23)
Tainted Updates Debug (distrib24)
Tainted Updates Testing (distrib25)
Tainted Updates Testing Debug
(distrib26)
Tainted Backports (distrib27)
Tainted Backports Debug (distrib28)
Tainted Backports Testing (distrib29)
Tainted Backports Testing Debug
(distrib30)
Esta lista é de todos os repositórios
disponíveis, mas não necessariamente que todos eles estejam já
ativados no seu banco de dados do urpmi para baixar pacotes.
Listando as mídias disponíveis e
suas url's.
Opção --list-url
$ urpmq --list-url
Core Release cdrom://i586/media/core
Nonfree Release
cdrom://i586/media/nonfree
Core Release
(distrib1)
http://ftp.las.ic.unicamp.br/pub/mageia/distrib/4/i586/media/core/release
Core Release Debug (distrib2)
Core Updates
(distrib3)
http://ftp.las.ic.unicamp.br/pub/mageia/distrib/4/i586/media/core/updates
Core Updates Debug (distrib4)
http://ftp.las.ic.unicamp.br/pub/mageia/distrib/4/i586/media/debug/core/updates
Core Updates Testing (distrib5)
Core Updates Testing Debug (distrib6)
Core Backports (distrib7)
Core Backports Debug (distrib8)
Core Backports Testing (distrib9)
Core Backports Testing Debug
(distrib10)
Nonfree Release (distrib11)
http://ftp.las.ic.unicamp.br/pub/mageia/distrib/4/i586/media/nonfree/release
Nonfree Release Debug (distrib12)
Nonfree Updates (distrib13)
http://ftp.las.ic.unicamp.br/pub/mageia/distrib/4/i586/media/nonfree/updates
Nonfree Updates Debug (distrib14)
Nonfree Updates Testing (distrib15)
Nonfree Updates Testing Debug
(distrib16)
Nonfree Backports (distrib17)
Nonfree Backports Debug (distrib18)
Nonfree Backports Testing (distrib19)
Nonfree Backports Testing Debug
(distrib20)
Tainted Release (distrib21)
Tainted Release Debug (distrib22)
Tainted Updates (distrib23)
http://ftp.las.ic.unicamp.br/pub/mageia/distrib/4/i586/media/tainted/updates
Tainted Updates Debug (distrib24)
Tainted Updates Testing (distrib25)
Tainted Updates Testing Debug
(distrib26)
Tainted Backports (distrib27)
Tainted Backports Debug (distrib28)
Tainted Backports Testing (distrib29)
Tainted Backports Testing Debug
(distrib30)
As mídias que contiver o caminho
completo do repositório da Internet e do DVD de instalação
(cdrom://i586/caminho) são as que estão adicionados a base de dados
do urpmi para baixar pacotes e as outras que não tem o caminho são
apenas repositórios disponíveis mas que não foram adicionados e
portanto nada será baixado deles.
Listando somente os nomes dos
repositórios ativados para download
$ urpmq --list-media active
Core Release
Nonfree Release
Core Release (distrib1)
Core Updates (distrib3)
Core Updates Testing (distrib5)
Nonfree Release (distrib11)
Nonfree Updates (distrib13)
Tainted Release (distrib21)
Tainted Updates (distrib23)
Este comando lista somente os
repositórios ativos que foi configurado para fazer download de
pacotes.
Pesquisando a url completa dos
repositórios que tem um pacote desejado
Quero saber quais repositórios tem o
pacote mencoder ?
$ urpmq --sources mencoder
cdrom://i586/media/core/mencoder-1.1.1-3.r36361.1.mga4.i586.rpm
ftp://ftp.las.ic.unicamp.br/pub/mageia/distrib/4/i586/media/core/release/mencoder-1.1.1-3.r36361.1.mga4.i586.rpm
ftp://ftp.las.ic.unicamp.br/pub/mageia/distrib/4/i586/media/core/updates/mencoder-1.1.1-3.r36361.3.mga4.i586.rpm
ftp://ftp.las.ic.unicamp.br/pub/mageia/distrib/4/i586/media/tainted/release/mencoder-1.1.1-3.r36361.1.mga4.tainted.i586.rpm
Como vemos acimas 5 repositórios
contém o pacote mencoder, o da mídia do DVD de instalação (core)
e o (core release) na internet ambos com a mesma versão do pacote.
Já as mídias (core updates, tainted
release e tainted updates) contém uma versão mais nova do pacote
mencoder que normalmente contém correções de varios bugs ou pode
apresentar outros tipos de bugs.
Se eu não especificar a fonte do
repositório por padrão ele irá instalar de tainted updates pois
este contém a versão mais recente neste caso.
Instalando um pacote de um
repositório especifico
Eu quero instalar a versão original
que está em core release pois eu não estou com o DVD em mãos.
Você deve especificar a url completa
do repositório juntamente com o seu nome, como abaixo.
# urpmi
ftp://ftp.las.ic.unicamp.br/pub/mageia/distrib/4/i586/media/core/release/mencoder-1.1.1-3.r36361.1.mga4.i586.rpm
Configurações do urpm
Desativando os repositórios do
CD/DVD de instalação via linha de comando
Você nem sempre tem o CD/DVD em mãos
e se os mesmos pacotes tem na Internet, para que ter o trabalho de
pegar a mídia já que você está conectado. Por padrão se o mesmo
pacote contiver na mídia de CD/DVD e na Internet e não existe uma
nova atualização do mesmo, o urpmi somente instalará a partir da
mídia de CD/DVD. Para desativar isto vamos colocar a opção ignore
abaixo da mídia editando o arquivo /etc/urpmi/urpmi.cfg .
Os repositórios que tiver ignore
abaixo do nome dele estão desativados na base de dados, mas continuam cadastrado, apenas não serão
baixados nada deles.
Devem seguir o mesmo tipo de linha e
alinhamento das outras linhas deste arquivo.
Para isto edite o arquivo
/etc/urpmi/urpmi.cfg
Core\ Release cdrom://i586/media/core {
ignore
key-ids: 80420f66
}
Nonfree\ Release
cdrom://i586/media/nonfree {
ignore
key-ids: 80420f66
}
Depois para atualizar
# urpmi.update -a
Onde configuro para que não seja
limpado automaticamente o cache de pacotes instalados em
/var/cache/urpmi/rpms ?
No arquivo /etc/urpmi/urpmi.cfg coloque
a linha post-clean: 0 entre as 2 primeiras chaves iniciais.
Exemplo:
Antes:
{
}
Core\ Release cdrom://i586/media/core {
key-ids: 80420f66
}
Nonfree\ Release
cdrom://i586/media/nonfree {
key-ids: 80420f66
}
******* Depois com a opção
post-clean: 0 ********
{
post-clean: 0
}
Core\ Release cdrom://i586/media/core {
key-ids: 80420f66
}
Nonfree\ Release
cdrom://i586/media/nonfree {
key-ids: 80420f66
}
Pronto, não precisa fazer nem a
atualização da base de dados do urpmi ou outra atualização que
quando você baixar um pacote o mesmo não mais será excluído
automaticamente.
Evitando que um pacote seja
atualizado pelo urpmi
Para fazer que um pacote não seja
atualizado pelo urpmi, basta incluir o nome do mesmo no arquivo
/etc/urpmi/skip.list.
Por exemplo, como eu tive muitos
problemas com pulseaudio, onde com as atualizações de pacotes
referentes ao sistema de som, o som não funcionava, então resolvi
colocar tudo referente ao drivers de som no arquivo
/etc/urpmi/skip.list.
# Here you can specify the packages
that won't be upgraded automatically
# for example, to exclude all apache
packages :
# /^apache/
/^pulseaudio/
/^libpulse/
/^alsa/
/^libalsa/
Pronto agora posso instalar qualquer
programa que utilize a placa de som como jogos, players de vídeo e
áudio, sem que os drivers de som sejam atualizados quando eu instalo
estes tipos de pacotes.
Comando
rpm
Salvando a lista dos pacotes instalados
em um arquivo:
$ rpm -qa | sort > pacotes.txt
Salvar a lista dos pacotes
instalados em um arquivo sem os números de versão:
$ rpm -qa --queryformat '%{name}\n' |
sort > mesrpm.txt
Procurando todos pacotes instalados
que tenha racer no nome
$ rpm -qa | grep -i racer
Visualizado todos os arquivos do
pacote instalado
$ rpm -qil extremetuxracer-0.6.0-2.mga4
Nenhum comentário:
Postar um comentário