Sudo n'utilise pas le même PATH
en tant qu'utilisateur actuel pour des raisons de sécurité. En /etc/sudoers
il y a une option secure_path
qui spécifie le chemin utilisé lors de l'exécution de commandes avec sudo.Mine ressemble à ceci :
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
À partir de la page de manuel sudo :
secure_path Path used for every command run from sudo. If you don't trust the people running sudo to have a sane PATH environment variable you may want to use this. Another use is if you want to have the “root path” be separate from the “user path”. Users in the group specified by the exempt_group option are not affected by secure_path. This option is not set by default.
Le pip3
la commande n'est probablement pas dans le chemin défini par le sudoers
dossier. Vous pouvez soit ajouter le chemin au secure_path
ou fournissez le chemin complet vers le pip3
commande comme celle-ci :
sudo /path/to/pip3 install django