Idealmente, se você estiver personalizando quais comandos podem ser executados via sudo , você deve fazer essas alterações em um arquivo separado em /etc/sudoers.d/ , em vez de editar o arquivo sudoers diretamente. Você também deve sempre usar visudo para editar o (s) arquivo (s). Você NUNCA deve conceder os comandos NOPASSWD on ALL .
Exemplo:
sudo visudo -f /etc/sudoers.d/mynotriskycommand
Insira sua permissão de concessão de linha:
myuser ALL= NOPASSWD: /path/to/your/program
Em seguida, salve e saia e visudo avisará se você tiver erros de sintaxe.
Você pode executar sudo -l para ver as permissões concedidas a seu usuário, se qualquer um dos comandos NOPASSWD específicos do usuário aparecer ANTES de qualquer comando %groupyouarein ALL=(ALL) ALL na saída, será solicitada sua senha.
Se você estiver criando muitos desses arquivos sudoers.d, talvez queira criá-los com nomes por usuário, para que sejam mais fáceis de visualizar. Tenha em mente que a ordenação dos NOMES DE ARQUIVO e das REGRAS dentro do arquivo é muito importante, o ÚLTIMO carregado carrega, seja MAIS ou MENOS permissivo que as entradas anteriores.
You can control the file name ordering by using a prefix of 00-99 or aa/bb/cc, though also keep in mind that if you have ANY files that don't have numeric prefix, they will load after the numbered files, overriding the settings. This is because depending on your language settings the "lexical sorting" the shell uses sorts numbers first and then may interleave upper and lowercase when sorting in "ascending" order.
Tente executar printf '%s\n' {{0..99},{A-Z},{a-z}} | sort e printf '%s\n' {{0..99},{A-Z},{a-z}} | LANG=C sort para ver se o idioma atual imprime AaBbCc etc ou ABC then abc para determinar qual seria o melhor prefixo de letra "último" a usar.