Como posso configurar o Centro de Software para permitir que usuários não-root instalem itens dos repositórios de operações do Ubuntu sem precisar digitar sua senha?
Estou ciente das implicações de segurança e estou disposto a correr o risco. O Fedora 12 foi enviado com algo parecido com isto. (Ao modificar a configuração do PolicyKit, acredito)
software-center
software-installation
policykit
tempestade de neve
fonte
fonte
Respostas:
Você pode modificar as permissões do PolicyKit para permitir que os usuários acessem o back-end do aptdaemon usado pelo Software Center.
dpkg --listfiles aptdaemon
mostra que/usr/share/polkit-1/actions/org.debian.apt.policy
é o arquivo que especifica as ações possíveis no backend do aptdaemon.Procurando nesse arquivo, as
< action id="">
tags especificam as ações possíveis. Você provavelmente desejaorg.debian.apt.install-packages
permitir que os usuários instalem novos pacotes do arquivo morto eorg.debian.apt.update-cache
atualize as listas de pacotes.Veja
man pklocalauthority
quais documentos como definir permissões locais nas ações do PolicyKit. A inserção do seguinte/etc/polkit-1/localauthority/50-local.d/10-allow-users-to-install.pkla
permitirá que qualquer usuário conectado à máquina local instale pacotes após digitar sua própria senha (mesmo quando não estiver no grupo de administradores) e atualize o cache do pacote sem digitar nenhuma senha.fonte
/usr/share/polkit-1/actions/org.kubuntu.qaptworker.policy
Identity=*
para que isso funcionasse, adaptado de askubuntu.com/a/123260 . Além disso, existe alguma maneira de obter mais saída de log do kit de políticas, por exemplo/var/log/auth.log
(ou qualquer outro arquivo de log)? Eu só recebemauthentication fails
mensagens, mas nenhuma razão para que ele falhou ...Atualmente, não acho que seja possível fazê-lo através da GUI, mas o seguinte deve funcionar, embora seja um pouco arrogante. YMMV.
Adicione a seguinte linha ao / etc / sudoers (use
sudo visudo
para editar o arquivo):Então você só precisa criar e adicionar usuários específicos ao
packageinstallers
grupo:Agora
jdoe
pode fazer o seguinte:e você pode editar o item de menu da área de trabalho do Centro de Software para que ele
software-center
prefira o comando comgksudo
.O PolicyKit pode permitir que você faça isso sem o sudo, mas está além do meu entendimento neste momento.
fonte
A resposta do RAOF se aplica apenas ao Ubuntu. O Kubuntu usa o QAptWorker como back-end (observado para Natty e Oneiric). Para permitir instalações não raiz, crie
/etc/polkit-1/localauthority/50-local.d/10-allow-non-root-install-packages.pkla
contendo:Eu queria permitir que alguns usuários não administradores instalassem o software sem conceder diretamente o acesso ao sudo. Isso foi realizado inserindo as próximas linhas nos dois grupos de configuração:
Se houver um grupo que deve receber permissão, use em
unix-group
vez deunix-user
.fonte
sudo -i
eu nem ter acesso ao/etc/polkit-1/localauthority
(Ubuntu 17.10): "Não tentarei processar o diretório / etc / polkit-1 /Se você precisar apenas de uma permissão genérica para permitir / não permitir a instalação de pacotes, vá para o PolicyKit.
Infelizmente, o PolicyKit não tem controle fino sobre o pacote para instalar. Se você deseja dar aos usuários permissão para instalar apenas um conjunto restrito de aplicativos, use
sudo
e instale algo como softwarechannels ...Também procurei algo assim, mas como não encontrei nada, codifiquei essa solução fácil "softwarechannels", disponível aqui no GitHub
É um sistema muito simples para permitir que usuários comuns (não administradores) instalem pacotes de catálogos restritos.
Basta definir 'canais' (grupos de pacotes) em um arquivo de texto simples e conceder aos seus usuários permissões para iniciar canais de softwares.
Eles verão apenas pacotes nos canais correspondentes aos seus grupos unix.
fonte