| Inscreva-se no RSS

Gerenciando pacotes com o pacman

November 24th, 2007 |9 Comentários | Postado em Linux, archlinux

O pacman é uma das ferramentas mais legais do Arch Linux. Ele é um gerenciador de pacotes capaz de resolver dependências e que trabalha com um formato binário de pacotes. Além disso, o pacman permite que os pacotes sejam facilmente customizados pelos usuários.

Neste post vou tentar mostrar as principais opções do pacman. São elas:

-S (sincronização)

A opção -S do pacman é a responsável pelos diversos tipos de sincronização. Com ela é possível instalar pacotes, baixar uma lista com as últimas versões dos pacotes, atualizar todo o sistema, etc. Combinando a opção -S com outras é possível realizar diversas tarefas como, por exemplo:

Atualizar a lista de pacotes disponíveis (-Sy):

Antes de fazer qualquer operação de busca, instalação e/ou atualização de um pacote é recomendado atualizar a lista de pacotes disponíveis. O comando abaixo faz isso por você:

# pacman -Sy

Tanto a combinação -Sy, quanto todas as outras combinações, podem ser executadas de forma separada. Exemplo:

# pacman -S -y

NOTA: Por ser mais prático eu vou usar as opções combinadas no decorrer deste post.

Buscar um pacote (-Ss):

# pacman -Ss pacote

Exemplo:

# pacman -Ss firefox

Instalar um pacote dos repositórios (-S):

Sabendo que o pacote está disponível em um dos repositórios habilitados, você pode instalá-lo usando:

# pacman -S pacote

NOTA: Em todas as opções você pode passar mais de um pacote como parâmetro.

As vezes existem versões diferentes do pacote em diferentes repositórios. Você pode especificar de qual repositório você quer que o pacman baixe o pacote da seguinte maneira:

# pacman -S repositório/nome-do-pacote

Exemplo:

# pacman -S testing/firefox

Por padrão o pacman baixa o pacote do primeiro repositório onde ele for encontrado. A ordem dos repositórios pode ser definida no arquivo /etc/pacman.conf.

NOTA: Para instalar um pacote local use a opção -U:

# pacman -U pacote.pkg.tar.gz

Atualizar todo o sistema (-Su):

# pacman -Su

É recomendado que você atualize a lista de pacotes antes de atualizar o sistema. Você pode rodar pacman -Sy antes ou fazer tudo ao mesmo tempo. É só combinar todas as opções da seguinte forma:

# pacman -Syu

Forçar a instalaçao de um pacote (-Sf):

# pacman -Sf pacote

Esta opção é útil quando acontece algum conflito de pacotes, mas use-a com cuidado.

Limpar os pacotes antigos do cache (-Sc):

# pacman -Sc

Para apagar todos os arquivos do cache use:

# pacman -Scc

-R (remoção)

A opção -R serve para remover pacotes. Os arquivos pertencentes ao pacote também são removidos e a base de dados de pacotes é atualizada. Os arquivos de configuração são salvos com a extensão .pacsave.

# pacman -R pacote

A opção acima remove o pacote, mas todas as dependências dele continuarão instaladas.

Combinada com outras, a opção -R pode:

Remover um pacote e suas dependência (-Rs):

O comando abaixo remove um pacote e todas as suas dependências que não estão sendo usadas por nenhum outro pacote.

# pacman -Rs pacote

Remover um pacote sem checar suas dependências (-Rd):

Algum dia você precisará remover um pacote sem que o pacman cheque as dependências do mesmo (por causa de um conflito de pacotes, por exemplo). O comando a seguir fará isso por você:

# pacman -Rd pacote

Remover um pacote e todos os seus arquivos de configuração (-Rn):

# pacman -Rn pacote

NOTA: Com esta opção *todos* os arquivos de um determinado pacote serão removidos (inclusive os arquivos de configuração).

Removendo um pacote e todos os outros que precisam dele (-Rc):

# pacman -Rc pacote

Isso vai remover o pacote e todos os outros pacotes que precisam dele de forma recursiva.

NOTA: Eu recomendo desinstalar um pacote combinando as opções -s, -c e -n da seguinte forma:

# pacman -Rscn pacote

-Q (query)

Com a opção -Q é possível, entre outras coisas:

Listar todos os pacotes instalados (-Q):

# pacman -Q

Obter informações de um pacote instalado (-Qi):

A opção -Qi mostra diversas informações sobre o pacote como, por exemplo, versão, descrição, licensa, dependências, data de criação, quem empacotou, etc.

# pacman -Qi pacote

Listar os arquivos contidos em um pacote (-Ql):

# pacman -Ql pacote

Visualizar o “pacote dono” de um determinado arquivo (-Qo):

Esta opção faz o caminho inverso da opção anterior (-Ql). Aqui você descobre a que pacote pertence um determinado arquivo no disco.

# pacman -Qo caminho-do-arquivo

Exemplo:

# pacman -Qo /etc/pacman.conf
/etc/pacman.conf pertence a pacman 3.0.6-2

Listar os pacotes que foram instalados de forma explícita (-Qe):

# pacman -Qe

Listar todos os pacotes orfãos (-Qdt):

O comando acima lista todos os pacotes que foram instalados por algum outro pacote, mas que não são requeridos por mais nenhum outro pacote instalado. Isso pode acontecer quando se remove um pacote, mas não remove as dependências do mesmo.

É isso. Aqui eu só listei as principais opções do pacman, mas existem várias outras. Recomendo que dê uma olhada na manpage dele.

[tags]pacman, archlinux, arch, package manager[/tags]

Tags: , , , ,

Posts Relacionados:

Agora sou um Trusted User no projeto Arch Linux ;)

November 18th, 2007 |14 Comentários | Postado em Pessoal, archlinux

Um Trusted User (TU) é responsável por manter o AUR (Arch Linux User Repository) funcionando bem. Ele pode setar um pacote como safe (livre de qualquer código malicioso), votar em assuntos administrativos, participar de decisões sobre o AUR e, claro, manter pacotes populares.

Alguns dias atrás eu me candidatei a TU e, depois de uma semana de votação, eu consegui me tornar um. Estou extremamente empolgado com isso. :-)

A votação é aberta e feita pelos atuais TUs. Eles tomam a decisão baseados nas suas contribuições para o Arch. Pacotes para o AUR, projetos relacionados à distribuição, tradução, documentação, etc. Tudo conta. Além disso é necessário ter um padrinho (alguém que já seja um TU e que vai te auxiliar nos passos iniciais).

Meu padrinho foi o Douglas Soares de Andrade e ele foi bem importante nesse processo (valeu, Douglas). Infelizmente acho que nós somos os dois únicos TUs brasileiros.

Bom, é isso. Estou super feliz com o resultado e espero poder fazer um trabalho super legal como TU. ;D

Posts Relacionados:

  • Sem posts relacionados

Entrevista com o novo líder do projeto Arch Linux oficial

November 7th, 2007 |Sem comentários | Postado em Linux, archlinux

Nesta última semana o Arch Linux Brasil fez uma entrevista com o Aaron Griffin, o novo líder do projeto Arch Linux oficial, abordando temas como planos, documentação, repositórios e comunidades.

O Aaron foi bastante simpático e pareceu ser bem legal. A entrevista foi publicada no Arch Linux Brasil e pode ser encontrada aqui.

Posts Relacionados:

  • Sem posts relacionados

Criando um repositório local para o Arch Linux

November 2nd, 2007 |4 Comentários | Postado em Linux, archlinux


Possuo duas máquinas rodando o Arch Linux e como não queria baixar as atualizações do sistema duas vezes e nem ficar copiando pacotes daqui pra lá, resolvi criar um repositório local. As coisas ficam muito mais simples assim. :-)

Se você também está na mesma situação, não se desespere. Criar um repositório local no Arch é muito fácil. A maneira geral é:

Na máquina onde o repositório ficará:

# repo-add nome-so-seu-repositorio.de.tar.gz /pacotes/que/entram/no/repositorio

Exemplo:

# repo-add /var/cache/pacman/pkg/hugodoria.db.tar.gz /var/cache/pacman/pkg/*.pkg.tar.gz

O comando acima criará o repositório hugodoria.db.tar.gz dentro do diretório /var/cache/pacman/pkg com todos os pacotes que existem no próprio /var/cache/pacman/pkg/.

Se depois você quiser adicionar mais um pacote você faz:

# repo-add local/do/seu/repositorio.db.tar.gz pacote.pkg.tar.gz

E para retirar um pacote do repositório use:

# repo-remove repositório pacote-a-ser-removido

Exemplo:

# repo-remove /local/tal/hugodoria.db.tar.gz kernel26

Para disponibilizar o repositório na sua rede você precisa instalar um servidor web ou ftp. Aqui eu preferi ter um servidor ftp usando o vsftpd. Para instalar o vsftpd faça:

# pacman -Sy vsftpd

Não vou mostrar como fazer uma configuração completa do vsftpd porque isso é assunto para outro post, mas você pode usar uma configuração básica que fiz apenas para disponibilizar o repositório executando os comandos abaixo.

# cd /etc
# mv vsftpd.conf vsftpd.conf.original
# wget http://hdoria.archlinux-br.org/conf/vsftpd.conf
# /etc/rc.d/vsftpd start

NOTA: A configuração acima apenas permite usuário anônimo e usa o diretório /var/cache/pacman/pkg como local do repositório. Modifique o que achar necessário.

Nas máquinas clientes:

Edite o arquivo /etc/pacman.conf das máquinas clientes e adicione no início dele:

[nome-do-repositorio]
Server = ftp://ip-do-servidor-onde-fica-o-repositorio/

Agora é só começar a usar. ;)

[tags] arch linux, local repository, pacman, repositorio [/tags]

Tags: , ,

Posts Relacionados: