Estou com problemas para configurar um script Python que deve ser executado como root, mas sem solicitar senha.
Não é a primeira vez que faço isso, mas dessa vez falha no Debian 12
O que eu já tentei:
- tente com um executável em vez de um script: mesmo comportamento
- tente em outro sistema Debian 12: mesmo comportamento
- experimente no Linux Mint, Fedora: funcionando sem problemas
Portanto, não há erro de digitação ou problema de ordem de linhas em /etc/sudoers ...
Aqui está a última linha do meu arquivo /etc/sudoers:
ivan All=(ALL) NOPASSWD: /usr/bin/veracrypt, /home/ivan/helloSudo.sh
Exemplo:
ivan@miniLab:~$ sudo ./helloSudo.sh
[sudo] Mot de passe de ivan :
sudo: il est nécessaire de saisir un mot de passe
ivan@miniLab:~$ sudo veracrypt
[sudo] Mot de passe de ivan :
sudo: il est nécessaire de saisir un mot de passe
=> então a senha é necessária para helloSudo.sh
everacrypt
olaSudo.sh:
#!/bin/bash
python3 /home/ivan/hello.py
olá.py
import os
import getpass
msg=f"Hello World from {getpass.getuser()}"
print (msg)
ivan@miniLab:~$ sudo /usr/bin/veracrypt
[sudo] Mot de passe de ivan :
sudo: il est nécessaire de saisir un mot de passe
=> mesmo problema ao fornecer o caminho completo!
Acabei de tentar em uma nova instalação do Debian 12, e funciona. Então, minhas 2 instalações existentes do Debian 12 têm um problema.
Alguma ideia de como descobrir o que está acontecendo?
ivan@miniLab:~$ sudo -l
[sudo] Mot de passe de ivan :
Entrées Defaults correspondant pour ivan sur miniLab :
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin, use_pty
Paramètres par défaut de runas ou spécifiques aux commandes pour ivan :
Defaults!/usr/lib/*/libexec/kf5/kdesu_stub !use_pty
L'utilisateur ivan peut utiliser les commandes suivantes sur miniLab :
(ALL : ALL) ALL
=> em inglês
ivan@miniLab:~$ sudo -l
[sudo] ivan password :
Corresponding Defaults entries for ivan on miniLab:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin, use_pty
Default runas or command-specific parameters for ivan :
Defaults!/usr/lib/*/libexec/kf5/kdesu_stub !use_pty
The ivan user can use the following commands on miniLab:
(ALL : ALL) ALL
Após corrigir o erro de digitação, sudo -l agora retorna:
...
L'utilisateur ivan peut utiliser les commandes suivantes sur miniLab :
(ALL : ALL) ALL
(ALL) NOPASSWD: /usr/bin/veracrypt, /home/ivan/helloSudo.sh
Da pergunta:
Observe a caixa da palavra
All
. Deve serALL
, com duas maiúsculasL
.