Como eu permito que um usuário padrão atualize os módulos do kernel para o VMware?

3

Eu configurei o VMWare Player para minha esposa. De vez em quando (principalmente após uma atualização do kernel), o VMWare Player precisa ser compilado no kernel.

Minha esposa não está ativada (se alguém estragar o SO, vai ser eu ). Eu gostaria de lhe dar permissão para fazer isso, mas apenas para esse programa.

Isso é possível? Pode ser feito com segurança (para o sistema operacional)? Como isso pode ser feito?

Editar: tentei adicionar o seguinte ao visudo

  

guijunkette ALL = (TODOS) NOPASSWD: / usr / bin / vmware-modconfig

Ao executar com o usuário, depois de digitar sua senha, ocorreu o seguinte erro:

Então, no final, nenhum charuto.

Edit: Eu desisti do VMWare Player e mudei para o VirtualBox. Fiz uma instalação limpa.

    
por GUI Junkie 02.07.2012 / 17:35

1 resposta

3

  

Nota: Se você deseja que o VMWare Player efetue a atualização automaticamente, não acho que seja possível através de sudoers ; isso é porque o VMWare usa seu próprio front end gráfico para verificar se o usuário tem privilégios de sudo irrestritos ...

     

Um rastreamento mostra que é assim que a atualização da GUI é chamada quando você inicia o VMWare Player e detecta um novo kernel:

/usr/lib/vmware/bin/vmware-gksu --sudo-mode --message=Please enter your password to proceed. '/usr/bin/vmware-modconfig' --icon='vmware-player' --appname='VMware' --gcc='/usr/bin/gcc' --headers='/lib/modules/3.2.0-27-generic/build/include'  
     

Como você já tentou, simplesmente adicionar /usr/bin/vmware-modconfig não funciona.

Assumiremos que o nome de usuário do seu cônjuge é guijunkette . O script para gerenciar os módulos do kernel VMWare é /usr/bin/vmware-modconfig ; À luz da observação acima, é melhor invocar isso explicitamente no terminal; Para facilitar a vida da sua esposa, incluí um atalho na área de trabalho para que ela nem precise abrir o terminal.

  1. sudo visudo
  2. Na linha 25, abaixo da linha %sudo ALL=(ALL:ALL) ALL , insira:

    guijunkette  ALL=(ALL) NOPASSWD: /usr/bin/vmware-modconfig --console --install-all
    
  3. Saia do editor

Para reconstruir os módulos, ela agora pode executar sudo vmware-modconfig --console --install-all sem solicitar uma senha.

Atalho na área de trabalho

O que você pode fazer é criar o seguinte arquivo da área de trabalho na pasta ~/Desktop da sua esposa e sempre que o VMWare Player exibir a mensagem "Você deve ...", peça para ela clicar em Cancelar, executar este atalho e iniciar o VMware Jogador (com sucesso) novamente:

[Desktop Entry]
Name=Update VMWare Modules
GenericName=VMWare Updater
Comment=Update VMWare modules for a new kernel (console mode)
Exec=sudo vmware-modconfig --console --install-all
Terminal=true
Icon=/usr/lib/vmware/share/icons/hicolor/48x48/actions/vm-upload.png
Type=Application
StartupNotify=true

Cole isto, por ex. /home/guijunkette/Desktop/vmwareupdater.desktop e lembre-se de chmod +x .

Aqui está uma demonstração:

    
por ish 02.07.2012 / 18:17