web-dev-qa-db-fra.com

Comment mettre à jour une connexion Network Manager à partir de la ligne de commande?

J'ai un tas de machines Ubuntu sur mon réseau local Ethernet et je dois modifier la passerelle par défaut.

Je préférerais ne pas perdre mon temps, interrompre le travail des gens, cliquer avec le bouton droit de la souris sur une applet, préférant utiliser ssh, ce qui peut être automatisé :-)

Je sais que je peux modifier la passerelle en direct par défaut avec ip route replace default via 1.2.3.4, mais cela ne met pas à jour la connexion stockée de NM.

Dans mon cas, chaque machine aura seulement une connexion câblée stockée.

Comment puis-je mettre à jour l'adresse IP de la passerelle stockée à partir de la ligne de commande?

5
artfulrobot

Toutes les configurations de Network Manager sont dans /etc/NetworkManager/system-connections/

Sur ceci, vous trouverez Wired connection 1 qui est probablement le fichier de configuration de votre connexion lan. Vous pouvez l'éditer

Sudo nano /etc/NetworkManager/system-connections/Wired connection 1

[802-3-ethernet]
duplex=full
mac-address=00:22:64:4E:6F:70

[connection]
id=Wired connection 1
uuid=57a2a340-c113-406f-9abc-eb816e58b3db
type=802-3-ethernet
timestamp=1430138708

[ipv6]
method=auto

[ipv4]
method=manual
dns=xxx.xxx.xxx.243;8.8.8.8;
dns-search=eunet.rs;
address1=xxx.xxx.47.5/24,xxx.xxx.47.254

Vous pouvez modifier ip, network mask ou gateway. Une fois les modifications apportées, enregistrez et redémarrez NM avec la commande

Sudo service network-manager restart
4
2707974

J'ai accepté la réponse de 2707974 (nom génial), mais ici, pour tous ceux qui souhaitent automatiser ce processus avec une ligne unique pour passer de 1.2.3.4 à 5.6.7.8

Sudo find /etc/NetworkManager/system-connections/ -type f -name "Wired*" \
 | while read c ; do Sudo sed -i 's/1\.2\.3\.4/5.6.7.8/g' "$c" ; done ;  \
 Sudo service network-manager restart

Bien sûr, cela suppose que 1.2.3.4 ne se trouve que dans les fichiers par rapport à la chose appropriée - donc pour moi, c'était la passerelle par défaut et l'adresse IP ne s'est produite qu'une seule fois.

1
artfulrobot