A volte mentre si lavora su server Linux è necessario eseguire il backup dei file di configurazione, il modo tradizionale per eseguire il backup è copiare lo stesso file con un nome diverso o inserire alcuni caratteri alla fine di quel file.
Ma usando Git possiamo gestire facilmente il backup dei file di configurazione. In questo post dimostreremo come questo può essere ottenuto usando Git. Ho eseguito i seguenti test su CentOS 7 e RHEL 7.
Passaggio:1 Installa Git, se non è installato.
[[email protected] ~]# yum install git
Controlla la versione Git
[[email protected] ~]# git --version git version 1.8.3.1 [[email protected] ~]#
Imposta i seguenti parametri per evitare errori di commit.
[[email protected] network-scripts]# git config --global user.name "Pradeep" [[email protected] network-scripts]# git config --global user.email "[email protected]"
Puoi sostituire il nome utente in base al tuo ambiente.
Passo:2 Ora inizializza il database git.
Poiché sto per eseguire il backup del file di configurazione di rete, per questo devo inizializzare il database Git solo nella directory di configurazione di rete.
[[email protected] ~]# cd /etc/sysconfig/network-scripts [[email protected] network-scripts]# git init Initialized empty Git repository in /etc/sysconfig/network-scripts/.git/ [[email protected] network-scripts]#
Come possiamo vedere che ".git ” viene creata nella cartella.
Passaggio:3 Esegui il backup utilizzando i comandi seguenti
[[email protected] network-scripts]# git add ifcfg-enp0s3 [[email protected] network-scripts]# [[email protected] network-scripts]# git commit ifcfg-enp0s3 [master (root-commit) 1269758] Changes on 26 Oct 2015 1 file changed, 16 insertions(+) create mode 100644 ifcfg-enp0s3 [[email protected] network-scripts]#
Quando eseguiamo il secondo comando, ti verrà chiesto di inserire alcuni commenti come "Modifiche del 26 ottobre 2015" e salvare il file.
Usa il comando seguente per visualizzare i registri git.
[[email protected] network-scripts]# git log commit 1269758e5f5b2fa3e0ad1fe507abaf73b646a33d Author: Pradeep <[email protected]> Date: Mon Oct 26 00:03:08 2015 -0400 Changes on 26 Oct 2015 [[email protected] network-scripts]#
Nota:prova a inserire alcuni caratteri spazzatura all'interno del file "ifcfg-enp0s3 ”
Fase:4 Ora ripristina il file di configurazione di rete dal database git
[[email protected] network-scripts]# git reset --hard 1269758e5f5b2fa3e0ad1fe507abaf73b646a33d HEAD is now at 1269758 Changes on 26 Oct 2015 [[email protected] network-scripts]#
Usa lo stesso git id mostrato sopra. L'ID Git sarà diverso per la tua configurazione.
Verifica se il file è stato ripristinato correttamente o meno dal database git.
Leggi anche : 9 esempi di comandi "diff" in Linux