Sistema de gerenciamento de pacotes local do usuário

10

Preciso implantar, gerenciar e executar o software como um usuário não privilegiado no SuSE (ou seja, sem acesso root, não pode usar o gerenciamento de pacotes do sistema, etc.).

Quais são as minhas opções?

Prefiro reutilizar o gerenciador de pacotes do sistema (YaST) configurando de alguma forma um repositório local do usuário separado. A segunda melhor opção é um sistema de gerenciamento de pacotes separado que suporta repositórios locais do usuário. De preferência, ele também suporta atualizações de estilo push (em oposição a pull).

Alex B
fonte
Pergunta canônica que eu estava procurando, mas não encontrei até depois de começar uma recompensa por essa. - Gerenciadores de pacotes não raiz
Piotr Dobrogost
Acho que não há muito a dizer sobre isso além do que foi dito. Existem várias metodologias possíveis para instalar o software como um usuário não root, mas não existem sistemas formais, portanto não há uma resposta canônica. Embora possa parecer uma pergunta "muito interessante e importante", provavelmente é apenas o caso da pequena minoria de usuários que tem uma necessidade séria de tal coisa, o que, considerando a quantidade potencialmente colossal de trabalho e dor de cabeça envolvida, ajuda a explicar por que isso não aconteceu.
Goldilocks

Respostas:

7

Bem, para o Gentoo, existe o projeto Prefixo do Gentoo , que permite instalar pacotes em algum lugar diferente de /. O portage do gerenciador de pacotes do Gentoo é escrito em Python e muito portátil, para que você possa configurar facilmente uma nova árvore para um usuário ao qual esse usuário tenha acesso total sem quebrar nada.

Dois problemas que vejo:

  1. Você provavelmente terá que compilar muitas coisas ou criar pacotes binários para seus usuários dessa maneira e provavelmente precisará instalar muitas coisas duas vezes para que o prefixo thingy funcione corretamente (acho que seria difícil criar coisas contra você já instalou pacotes dessa maneira)

  2. Você não teria um serviço de push.

A outra abordagem que eu vejo seria oferecer um pacote de arquivos tar.gz que são basicamente pacotes personalizados da sua distribuição corrigidos para usar um prefixo diferente: digamos que você crie um diretório "Library" em cada diretório do usuário e adicione "~ / Library / usr / bin "no caminho de cada usuário, um simples gerenciador de pacotes pode ser preparado para cuidar das instalações (você também pode olhar para o pacman do Arch Linux para isso, já que são basicamente apenas arquivos e dependências .tar.gz.

tante
fonte
1
Mas ele não está usando o Gentoo, ele está no SuSE. Então, como isso ajuda?
Iz_and_curses
Como ire_and_curses disse, isso é para o Gentoo, não para o SuSE. Eu downvote, mas estou apenas com 123 rep (leva 125 a downvote ..)
JamesTheAwesomeDude
3
O prefixo do Gentoo também pode ser instalado no SUSE.
zjhui
3
Embora essa não seja uma resposta específica do SuSE, não há uma resposta específica do SuSE , portanto, alguém que absolutamente deve ter um sistema Linux que possa fazer isso pode estar interessado em saber o que está realmente disponível. "Alternativas" dificilmente são irrelevantes ou tangenciais se forem, de fato, a única possibilidade . + 1
goldilocks
0

Use um gerenciador de usuários privilegiado [licenciado :(] e poderá executar comandos que precisam de acesso de superusuário como um usuário normal. Tudo é rastreado e auditado


fonte
2
Oi! Alguém pode elaborar isso um pouco mais ...? Um usuário pode trabalhar normalmente com Linux (obter pacotes, instalar, compilar, etc) em um ambiente de rede restrito (ou seja, sem ter acesso para jogar com configurações de proxy local / remoto, etc)?
Nikos Alexandris
0

Você pode permitir tudo zypper family commandao seu usuário /etc/sudoers file.

PersianGulf
fonte
Você poderia ser um pouco mais preciso? Como você faz isso, que precauções devem ser tomadas, quaisquer riscos?
vonbrand
zyppercomandos como apt-get no debian ou yumna distro redhat-base. Então você pode:, youruser ALL = NOPASSWD: /usr/sbin/zypperentão você não precisa ter privilégios de root e sua senha.
precisa saber é o seguinte
Ao especificar comandos, você não tem nenhum risco.
precisa saber é o seguinte
1
Claro, sem risco. Não é que qualquer usuário aleatório que possa instalar / remover pacotes possa estragar o sistema.
vonbrand
não, porque o próprio sistema usa um sistema de travamento.
precisa saber é o seguinte