Solution 1 :
Si vous pouvez vivre avec le remplacement du secure_path
valeur au lieu de l'ajouter, vous pouvez utiliser une solution beaucoup plus simple. Généralement sudo a un répertoire de configuration comme /etc/sudoers.d
où vous pouvez déposer des fichiers de configuration supplémentaires.
Créez simplement un fichier avec votre secure_path
complet valeur :
Defaults secure_path="<default value>:/usr/local/bin"
Cela écrase la valeur de la configuration principale. Si la valeur du chemin est la même pour toutes vos machines, cela peut facilement être déployé avec des scripts ou un package.
Cela présente l'avantage supplémentaire que vous n'avez pas à vérifier et éventuellement à fusionner les fichiers de configuration lorsque le package sudo est mis à jour à l'avenir.
Solution 2 :
en supposant que vous savez que la ligne avec secure_path existe, une simple commande sed pour le faire
sed -i -e '/secure_path/ s[=.*[&:/usr/local/bin[' /etc/sudoers
ou un peu plus sophistiqué (plus de contrôle de syntaxe en entrée) :
sed -i -r -e '/^\s*Defaults\s+secure_path/ s[=(.*)[=\1:/usr/local/bin[' /etc/sudoers