Je sais déjà que je dois ajuster le fichier / etc / sudoers, mais j'aimerais voir des informations complètes ainsi qu'une solution qui ne nécessiterait pas mon utilisation de l' vi
éditeur.
Mise à jour: n'essayez jamais, jamais, de modifier le fichier avec autre chose visudo
.
Réponses:
Exécuter
sudo visudo
et ajouter cette ligne:Voir
man 5 sudoers
.-1
provoque le mot de passe pour ne jamais expirer. Vous pouvez changer le nombre en ce que vous voulez en quelques minutes.La page de manuel de "
sudo
indique quesudo -v
" prolonge le délai d'attente sudo de 5 minutes supplémentaires ".L'exécution de 'sudo visudo' au lieu de modifier le fichier directement amène le système à valider le fichier sudoers avant de valider les modifications. Par exemple, si vous laissez un caractère errant quelque part, lorsque vous enregistrez et quittez, le message "il y a une erreur dans le fichier sudoers, que voudriez-vous faire?" ... donc vous donner une chance de revenir et de modifier. En fait, cela m'est arrivé il y a 10 minutes.
la source
visudo
exécute quelques contrôles de base sur le fichier sudoers avant de sauvegarder. Si vous gâchez le fichier en l'utilisantvi
directement, vous risquez d'empêcher l'utilisation de sudo, ce qui rend très difficile l'annulation du changement.visudo
entoure l'éditeur par défaut du système (je devinerais que l'utilisateur root par défaut si la racine a remplacé la valeur par défaut), n'a donc rien à voir avec vi bar le nom. Sur mon système (pas de pomme d'ailleurs), je prends du nano. Essayezexport EDITOR='/bin/nano'
ou quel que soit l'éditeur que vous préférez, utilisez ensuite visudo.Soyez vraiment prudent de modifier
/etc/sudoers
directement!Par exemple, j'ai essayé la suggestion ci-dessus directement:
sudo sh -c 'echo "\nDefaults timestamp_timeout=-1">>/etc/sudoers'
qui a foiré mon
/etc/sudoers
dossier (sur une machine virtuelle CentOS Virtualbox). Aurait du être:sudo sh -c 'echo -e "\nDefaults timestamp_timeout=-1">>/etc/sudoers'
Heureusement, j'ai eu accès au compte root, connecté en tant que root, utilisé
visudo
et réparé le problème! Donc, je suis d'accord avec les commentaires ci-dessus à utiliser à lavisudo
place.la source
Toutes les informations pour les sudoers se trouvent sur le terminal avec la commande
Vous pouvez même utiliser du texte simple pour éditer des fichiers, mais les privilèges rendent cela difficile. sudoers est
-r--r----- (Octal 0440)
Cela indique qu'Apple ne veut vraiment pas que vous jouiez avec le fichier. C'est vraiment la sécurité de base du système d'exploitation.
Les options de modification sont vi, emacs ou mon préféré BBEdit.
la source
visudo
le fichier plutôt que de le modifier vous-même. En outre, cela n'a rien à voir avec OS X. C'est standard * nix. De plus, si vous souhaitez utiliser un éditeur autre que celui par défaut, définissez simplement la$EDITOR
variable d'environnement avant d'appelervisudo
. par exempleEDITOR=nano sudo visudo
.Désactivez sudo timeout avec cette commande:
Pour réactiver le délai d'expiration sudo avec cette méthode:
la source
sudo
devriez avoir un moyen unique de changer cela sans avoir à éditer un fichier!