Y a-t-il des considérations particulières à éditer un fichier en tant que root? Quelle est la façon la plus sûre de procéder?
Évidemment, si vous savez comment exécuter une commande en tant que root , vous pouvez exécuter un éditeur. Mais ce n'est pas la méthode la plus pratique ou la plus sûre.
sudoedit
(ou son synonyme sudo -e
) est un mode de sudo où vous modifiez une copie temporaire d'un fichier dans votre éditeur préféré, et cette copie est déplacée en place lorsque vous avez terminé la modification.
sudoedit /etc/fstab
Remarque: il y a quelques fichiers que vous ne devez pas modifier directement.
Ne modifiez jamais /etc/sudoers
directement. Utilisez toujours la visudo
commande pour cela. Si vous faites une erreur dans la syntaxe du fichier sudoers, vous pourriez être verrouillé hors du compte root! Lorsque vous exécutez visudo
, il vous permet de modifier une copie temporaire du fichier et effectue une vérification de la syntaxe avant de remplacer le fichier réel par vos modifications.
Le même principe est applicable à l'utilisateur, le groupe, le mot de passe de l' utilisateur et des bases de données de mots de passe de groupe, /etc/passwd
, /etc/group
, /etc/shadow
et /etc/gshadow
, respectivement. Sur les systèmes où ils sont disponibles, utilisez les vipw
, vigr
commandes pour /etc/passwd
et /etc/group
. Pour modifier les bases de données de mots de passe, passez l'option -s. Par exemple, pour modifier /etc/gshadow
, utilisez vigr -s
.
crontab -e
(car cela peut également faire une vérification de la syntaxe).Assurez-vous toujours de conserver une sauvegarde du fichier que vous modifiez. Certaines personnes aiment mettre un horodatage après cela. Cela garantit que vous pouvez toujours revenir en arrière (enfin, espérons-le) si le système tombe en panne à la suite du changement. En plus de la commande listée par strugee, la plupart des configurations vous permettront d'exécuter vos éditeurs habituels (vi, vim, nano, emacs). Sachez simplement si le fichier est en lecture seule ou non.
la source
rcs
etetckeeper
.sudoedit
.