Ajouter une ligne sous la ligne xxx
xunil2003
Messages postés
765
Date d'inscription
Statut
Membre
Dernière intervention
-
imer33 Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
imer33 Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Avec un script bash, je voudrais ajouter la ligne :
Juste en dessous de la ligne :
du fichier /etc/sudoers
Comment dois je procéder ?
Merci.
Avec un script bash, je voudrais ajouter la ligne :
serveur ALL=NOPASSWD:
Juste en dessous de la ligne :
root ALL=(ALL) ALL
du fichier /etc/sudoers
Comment dois je procéder ?
Merci.
A voir également:
- Ajouter une ligne sous la ligne xxx
- Partager photos en ligne - Guide
- Waptrick xxx - Télécharger - Divers TV & Vidéo
- Aller à la ligne excel - Guide
- Mètre en ligne - Guide
- Apparaitre hors ligne instagram - Guide
5 réponses
Bonsoir,
J'ai fait :
Mais ça marche pas ?
Merci.
J'ai fait :
root@debian:/home/serveur# sed -i.bak '/root ALL=(ALL:ALL) ALL/a\serveur ALL=(root) ALL' /etc/sudoers
root@debian:/home/serveur#
Mais ça marche pas ?
root@debian:/home/serveur# cat /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults timestamp_timeout=0
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d
root@debian:/home/serveur#
Merci.
Bonjour,
Il n'existe pas ce fichier .
Quand je modifie le fichier /etc/sudoers avec nano ça marche.
Mais pas avec votre solution ?
Même en super-utilisateur ça marche pas.
Là je n'ai pas compris pourquoi il est dit :
Le but pour moi est de réaliser un script bash d'auto-configuration .
Merci.
Il n'existe pas ce fichier .
root@debian:/home/serveur# ls /etc/sudoers.d/
README
root@debian:/home/serveur#
root@debian:/home/serveur# sed -i.bak '/root ALL=(ALL:ALL) ALL/a\serveur ALL=(root) ALL' /etc/sudoers.d
sed: impossible d'éditer /etc/sudoers.d: ce n'est pas un fichier régulier
root@debian:/home/serveur#
Quand je modifie le fichier /etc/sudoers avec nano ça marche.
Mais pas avec votre solution ?
Même en super-utilisateur ça marche pas.
Là je n'ai pas compris pourquoi il est dit :
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
Le but pour moi est de réaliser un script bash d'auto-configuration .
Merci.
Gogole est ton ami : https://stackoverflow.com/questions/323957/how-do-i-edit-etc-sudoers-from-a-script
Bonjour,
Finalement j'ai fait comme ceci pour mon serveur arm Debian Wheezy 3.0.4 :
Merci.
Finalement j'ai fait comme ceci pour mon serveur arm Debian Wheezy 3.0.4 :
cp -v /etc/sudoers /etc/sudoers.bak
echo
touch /tmp/sudoers.new
echo '
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults timestamp_timeout=0
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
serveur ALL=(root) ALL # sudo avec un mot de passe demandé
#serveur ALL=NOPASSWD: ALL # sudo sans mot de passe demandé
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d' > /tmp/sudoers.new
cp -v /tmp/sudoers.new /etc/sudoers
rm -v /tmp/sudoers.new
Merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Je te propose cette solution. Le script doit être exécuté en root :
J'ai testé sur ma machine et ca fonctionne.
:)
Je te propose cette solution. Le script doit être exécuté en root :
# On récupére le n° de position de la ligne "root ALL=(ALL) ALL" dans le fichier noLigne=$(cat /etc/sudoers | grep -n ^root | grep ALL=\(ALL:ALL\)\ ALL | cut -d':' -f 1) # Le premier grep récupére toutes les lignes qui commencent par root # Le 2° grep filtre sur le reste de la chaine # Le cut filtre la sortie pour ne garder que le n° de ligne # # Maintenant on utiliser sed pour ajouter la ligne aprés : nouvelleLIGNE="serveur ALL=NOPASSWD:" /bin/sed -i "${noLigne}a${nouvelleLIGNE}" /etc/sudoers # Si on avait voulu insérer une ligne avant on aurait utiliser : # /bin/sed -i "${noLigne}i${nouvelleLIGNE}" /etc/sudoers #
J'ai testé sur ma machine et ca fonctionne.
:)