Como executar o programa Python instalado em todo o sistema através de pip sem privilégios de root?

3

Eu tenho dois computadores Ubuntu diferentes que possuem várias contas de usuário. Eu queria testar a versão mais recente do programa de backup Attic , então usei pip3 para instalá-lo - com sucesso. No entanto, não consigo executar o programa como um usuário normal.

Se eu fizer uma instalação local com pip3 --user , o programa funcionará como esperado. Mas como tenho vários usuários, seria muito complicado lidar com várias instalações locais. Eu gostaria de ter uma instalação em todo o sistema com usuários normais capazes de executar o programa.

Suponho que isso seja sobre permissões. Como alguém permitiria que os pacotes pip3 instalados, que não são instalações locais, fossem usados por usuários comuns, ou seja, sem usar o sudo ou a conta raiz?

Editar:

Parece que consegui dar certo, embora minha solução pareça muito hacky e não sei se será que não sobrevive a uma atualização de pacote. Eu examinei cuidadosamente o caminho do arquivo que leva a /usr/local/lib/python3.4/dist-packages/attic e usei chmod para dar ao grupo "outro" as permissões apropriadas, já que elas não tinham nenhum ! Eu também usei chmod nos arquivos py individuais, dando a eles 644 .

Eu deixarei a questão ser aberta, pois certamente deve haver outra maneira melhor.

Uma coisa leva a outra ... Eu aparentemente, há algum tempo, alterei o padrão UMASK para 007 . Não tenho ideia se essa é a causa do problema em questão, mas acho que poderia ser. Não quero alterar o valor de volta para descobrir, pois gosto muito da privacidade que o valor atual fornece.

Acho que vou escrever um script de shell que defina as permissões corretas para todos os arquivos Attic (isto é, permitindo que "outros" r e em alguns casos x ) e, em seguida, crie um alias como sudo pip3 install --upgrade Attic && sudo ~/.local/bin/fix-attic-permissions em ~/.bashrc .

    
por Leutra 17.08.2014 / 21:14

0 respostas