Você pode permitir que o usuário execute apenas "top -s", este é o modo seguro e desativa a capacidade de matar coisas.
user ALL = NOPASSWD: /usr/bin/top -s
Eu uso o Ubuntu Server 10.04. Eu tenho usuários que normalmente não têm acesso ao sudo. Quando esse usuário está usando o comando top ele vê apenas processos para o usuário atual. Eu adicionei uma linha para /etc/sudoers
:
user ALL = NOPASSWD: /usr/bin/top
Mas agora temos acesso não somente a uma lista de processos do sistema, mas também a matá-los, o que não é desejado.
Existe alguma outra maneira de fazer isso?
Normalmente, o top exibirá todos os processos no sistema. O fato de seu top não estar fazendo isso sugere que algo foi feito para restringi-lo - existem correções de kernel que adicionam essa funcionalidade. Você precisa descobrir o que foi adicionado ao seu sistema.
bofh ALL=(root) NOPASSWD: /usr/bin/top
funciona bem para mim, só posso sudo top; talvez você tenha outras regras de sudo que o ajudem a matar procs também?
se você está falando sobre o direito de matar um processo com o topo bem, isso é normal; top usa kill () internamente para finalizar o processo solicitado; uma vez que você executar o top como root, você também fará o syscalls envolvido como usuário root