Eu sou um usuário não administrador em um sistema de computador grande. Preciso de alguns pacotes atualizados que não estejam instalados no sistema. Eu quero usar o yum para instalá-los. Como usuário sem acesso sudo, admin ou root, posso usar o gerenciamento de pacotes para instalar pacotes no meu diretório pessoal? Eu sempre posso usar o make das fontes, mas poder usar o yum tornará a vida mais fácil.
51
Respostas:
A maioria dos binários é compilada para ser instalada em determinados locais abaixo
/
.Existem gerenciadores de pacotes não raiz como o Gentoo Prefix e o Rootless GoboLinux e talvez 0install .
Como você disse, compilar a si mesmo aliviaria esse problema ou usaria um chroot. No entanto, seu maior obstáculo ao chrooting serão os pré-requisitos e a vinculação aos objetos compartilhados do kernel.
fonte
Em vez de usar
yum
, encontre os rpms desejados e faça o download deles. Você ainda não pode instalá-los diretamente sem ser root, mas os pacotes RPM são realmente arquivos .cpio sofisticados e é possível descompactar o conteúdo deles. A maneira mais fácil de fazer isso é provavelmente através domc
navegador de arquivos ("midnight commander") (um dos melhores softwares de todos os tempos), que permite navegar pelo conteúdo de um.rpm
arquivo e copiá-lo diretamente dele.Sem isso, você pode usá
rpm2cpio
-lo para convertê-lo em .cpio e depoiscpio
extrair os arquivos para dentro e colocá-los nos lugares certos. Ambos já estarão instalados em um sistema redhat ou fedora. Aqui está um exemplo de instalação do "xsnow" (você provavelmente deseja fazer isso em um diretório vazio):Observe que encontrei um .rpm apropriado para o meu sistema, fc17 x86_64. Isso é importante porque esses binários pré-compilados estão vinculados a outros componentes. Agora extraia o arquivo .cpio:
Se eu navegar por essa árvore de diretórios, tudo o que preciso estará lá, exceto algumas das meta-informações que podem me ajudar a resolver dependências. Isso pode ser encontrado usando
rpm -q -p [package] --[query]
:Tenho certeza que já tenho todas essas coisas. Então agora tudo o que preciso fazer é colocar o executável xsnow no meu $ PATH, que já inclui uma lixeira no meu diretório pessoal:
Viola! Agora não consigo digitar
xsnow
e assistir a nada, pois, como se vê, o xsnow não funciona bem com o KDE :(, mas espero que o início do processo seja claro. Não precisei fazer nada fora do meu diretório pessoal.Se você precisar instalar bibliotecas, também precisará criar um diretório em casa para elas e adicionar a
~/.bashrc
:fonte