terça-feira, 29 de novembro de 2011

Gerenciando pacotes no Solaris 11

Assim como as distribuições de Linux baseadas em Debian utilizam o apt-get, o Fedora utiliza o yum e o Mandriva/Mageia utilizam o urpmi para gerenciar seus pacotes instalados, o Solaris, da Oracle. também possui seu próprio gerenciador de pacotes. Ele é baseado nas ferramentas da família BSD mas, como diferencial, concentra todas as operações em um único executável, o pkg, localizado em /usr/bin. Apesar das diferenças, sua operação básica é muito similar à dos gerenciadores do Linux.



Enquanto no mundo Linux temos apenas os repositórios com suas chaves de autenticação, o Solaris explora dois conceitos: o de repositório e o de publicador. Um publicador (publisher) identifica uma pessoa, grupo de pessoas ou organização como a fonte de um ou mais pacotes. O próprio manual do pkg sugere que o nome do publicador seja o endereço do domínio da página na qual o publicador disponibiliza seus pacotes. Já o repositório em si é um local de onde os clientes podem publicar e recuperar o conteúdo dos pacotes e seus metadados. O manual sugere que se o nome de um publicador seja exemplo.org, o repositório esteja armazenado em http://exemplo.org/repositoru.


Uma das características do pkg é que é possível utilizar a opção -R para especificar qual vai ser o diretório raiz, o que permite instalar pacotes de teste sem danificar o sistema. Os principais comandos aceitos pelo pkg são:


refresh [-- full] [publisher]


É o equivalente ao apt-get update: ele atualiza a lista de pacotes disponíveis e os metadados do publicador especificado. Se nenhum publicador for especificado, ele atualiza as listas de todos; se --full for especificado então ele recupera novamente todos os dados do publicador, evitando fazer uma atualização incremental.


install


Como o próprio nome sugere, essa opção instala e atualiza pacotes para suas versões mais novas. Para forçar a instalação da última versão disponível, basta adicionar um @latest após o nome do pacote, por exemplo #pkg install vim@latest. O comando possui várias opções interessantes, como a -n, que apenas simula a instalação sem fazer alterações no sistema, a --licenses, que exibe as licenças dos pacotes que estão sendo instaladas, a --accept que as aceita sem perguntar entre muitas outras. Outro diferencial da instalação que eu percebi aqui durante um teste é que os pacotes NÃO são armazenados em tarballs mas, sim, cada arquivo é baixado individualmente (CORRÃO!!!)


uninstall


Remove os pacotes especificados.


update


Sem argumentos, atualiza todos os pacotes para as suas últimas versões permitidas ou a mais recente se @latest for especificado. Se for especificado um nome de pacote ou padrão, este é atualizado para a versão mais recente disponível.


list


Exibe uma lista dos pacotes na imagem atual, incluindo estado e outras informações. Tais dados são mostrados em três colunas:


A primeira coluna exibe o nome do pacote e o nome do publicador entre parênteses caso este não seja o primeiro na ordem de busca. A segunda coluna mostra as versões de release e de ramo.


A terceira coluna mostra algumas "bandeiras" em três posições: se o primeiro caractere for um I, significa que o pacote está instalado; um F na segunda coluna mostra que o pacote está congelado e um o na terceira significa que o pacote está obsoleto e deve ser atualizado. Também é possível que nesta coluna apareça um r, significando que o pacote foi renomeado.


info


Exibe informações sobre um pacote.


contents


Exibe o conteúdo dos pacotes especificados.


search


Permite pesquisar por pacotes.


validate


Permite validar a instalação de um pacote.


Para obter mais informações, digite man pkg na linha de comando.

Nenhum comentário:

Postar um comentário