J'avais déjà vu un utilisateur Ubuntu utiliser une commande Sudo dans un terminal. Avant de demander un mot de passe, le message suivant a été affiché:
user1@linuxbox:~$ Sudo apt-get update
Please do not run this command if you have not been granted Sudo rights.
[Sudo] password for user1:
Je souhaite afficher un message similaire sur mon système lorsqu'un utilisateur exécute une commande Sudo. Que dois-je modifier/modifier pour afficher un message similaire lorsqu'un utilisateur exécute une commande Sudo sur le terminal?
Vérifiez si votre Sudo prend en charge l’option lecture_file
man sudoers | grep lecture_file
Voici ce que dit l'homme sudoers dans mon cas:
lecture_file Chemin d'accès à un fichier contenant une autre conférence Sudo qui sera utilisée à la place de la conférence standard si le fichier nommé existe. Sudo utilise par défaut une lecture intégrée.
Ainsi, pour changer le texte, ajoutez-le à un fichier, par exemple /etc/sudoers.lecture
et pointez-le à partir de /etc/sudoers
:
Defaults lecture_file = /etc/sudoers.lecture
Pour afficher la conférence sur chaque invocation de Sudo, ajoutez également le texte suivant à /etc/sudoers
:
Defaults lecture = always
Ecrivez un "script wrapper" autour de la commande Sudo
.
En gros, vous remplacez la commande standard Sudo
par un script contenant une fonction appelée Sudo()
. Cette fonction fait d'abord écho à votre message personnalisé, puis appelle la commande standard Sudo /usr/bin/Sudo
.
Ce script serait quelque chose comme:
#!/bin/bash
Sudo(){
echo "This is a custom message."
/usr/bin/Sudo "$@"
}
Vous devez vous assurer que le script est dans le chemin de l'utilisateur. Ici (sous "Assembler tous les éléments") est une bonne explication de la façon de procéder. Google "script wrapper" pour d'autres exemples.