Comment ajouter une ligne au fichier de configuration système avec sudo?

8

J'ai besoin d'ajouter une ligne à un fichier de configuration (par exemple /etc/resolv.conf). Si j'utilise

sudo echo "nameserver 192.168.1.6" >> /etc/resolv.conf

Je reçois un message d'erreur Accès refusé. Le problème est que bash écrit dans un fichier depuis mon compte, pas depuis un compte root.

Existe-t-il un moyen de le faire fonctionner?

Je sais qu'il existe une "solution" pour écrire mes commandes dans un fichier et les exécuter en batch mais c'est très inconfortable :-(

izidor
la source
<3 'écho sudo'. "Tu ne m'emmènes pas dans une ville funky?" :)
crb

Réponses:

20
sudo /bin/sh -c 'echo "nameserver 192.168.1.6" >> /etc/resolv.conf'
Saurabh Barjatiya
la source
13

echo "nameserver 192.168.1.6" | sudo tee -a /etc/resolv.conf

l'autre reçoit
la source