Come esportare e migrare le impostazioni di NetworkManager su un nuovo sistema?


14

Come esportare e migrare le impostazioni di NetworkManager su un nuovo sistema?

I casi d'uso sono:

  • reinstallare una macchina
  • spostamento della configurazione di rete dal laptop al sistema desktop (o viceversa)

Tutte le impostazioni devono essere migrate, tra cui:

  • connessioni di rete predefinite e personalizzate
  • connessioni wifi con password
  • Configurazioni VLAN
  • Configurazioni VPN (se possibile con chiavi)

Ho controllato su Arch wiki e non c'è nulla sulla migrazione, quindi vi chiedo ragazzi e ragazze qui.

Risposte:


10

Ogni connessione configurata in NetworkManager è memorizzata in un file in

/etc/NetworkManager/system-connections

Di solito, è possibile copiare i file necessari da una macchina a un'altra (ovviamente per root).

Attenzione : alcuni file di configurazione potrebbero fare riferimento a risorse esterne. Ad esempio in uno dei miei file openvpn ho una linea come cert=/home/andcoz/somedir/somefile.crt. Devi copiare qualsiasi file di riferimento.


7
Questa risposta è incompleta. NetworkManager assegna un UUID a ciascuna connessione di sistema che sembra essere basata sull'indirizzo MAC dell'interfaccia. Se si modifica l'hardware, NetworkManager non utilizzerà le vecchie connessioni di sistema perché l'UUID non corrisponde più a ciò che si aspetta.
divestoclimb

Ho controllato la directory / etc / NetworkManager / connessioni di sistema sul mio laptop e lì vedo solo connessioni VPN. Ma non vedo alcuna impostazione cablata o wifi lì. Proverò a spostarmi su una connessione VPN e riferirò se funziona o no. Quindi, se funziona, risponde a 1/4 della domanda. Grazie.
valentt,

3
@divestoclimb c'è qualche guida che spiega come rinominare l'UUID dal vecchio sistema a quello nuovo?
valentt,

1
@divestoclimb ha ragione, queste connessioni non verranno rilevate se si esegue la migrazione a un nuovo hardware, solo per una reinstallazione sullo stesso hardware funzionerà. Mi piacerebbe sapere una soluzione qui, proprio come valentt!
djvdorp,

L'UUID è solo un identificatore generato casualmente. Devi essere sicuro che ogni connessione abbia un identificatore univoco (su ogni macchina).
andcoz,

3

Come menzionato da altri, i file di connessione Wi-Fi nella system-connectionsdirectory hanno incluso l'indirizzo MAC dell'interfaccia. Questa necessità deve corrispondere alla configurazione corrente, quindi la procedura è:

  1. copia tutti i file dalla vecchia macchina alla nuova macchina dalla / alla directory:

    /etc/NetworkManager/system-connections
    
  2. cambia la voce dell'indirizzo MAC in ciascun file dal vecchio MAC al nuovo MAC. Come root:

    cd /etc/NetworkManager/system-connections
    sed -i -e 's/<old mac>/<new mac>/ *
    
  3. Nel caso, riavvia il gestore di rete:

    systemctl restart NetworkManager
    

Vecchio Mac che puoi controllare da uno qualsiasi dei file che hai copiato, nuovo Mac se non sei sicuro di poter controllare ip link(o dal file che probabilmente è stato creato quando hai installato il sistema per la connessione che hai usato per copiare i file).

Nota: sopra presuppone che tu abbia una singola interfaccia Wi-Fi sia nella vecchia che nella nuova configurazione, ma la stessa logica dovrebbe funzionare con più interfacce.


1
Qual è la linea di MAC per i file conf VPN? Vedo solo UUID. Come posso rigenerare il nuovo UUID su una nuova macchina?
32r34wgf3e

1

Le impostazioni wireless (almeno su Fedora) sono mantenute in questa directory:

/etc/sysconfig/network-scripts 

Ci sono due file per connessione wifi. Il primo file è denominato ifcfg-YOURSSIDcontiene le impostazioni della rete wifi e keys-YOURSSIDcontiene la password della rete wireless.

Inoltre c'è una domanda correlata che spiega questo: dove sono memorizzate le impostazioni WiFi di NetworkManager?


0

Gli altri post sono giusti, ma ci sono piccole modifiche in alcuni punti.
Le risposte sono conservate

/etc/Networkmanager/system-connections

È possibile rimuovere la linea mac-addresso modificarla tramite

cd /etc/NetworkManager/system-connections
sed -i -e 's/<old mac>/<new mac>/' *

Puoi ottenere il nuovo indirizzo Mac tramite

ip a

A seconda della memoria in cui sono stati conservati i file, i diritti sui file potrebbero essere errati, basta impostarli tramite:

chmod 0600 *
chown root:root *

Infine riavvia Network Manager

systemctl restart NetworkManager

Funziona allo stesso modo con Ubuntu 18.04.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.