4 069
contributi
Nessun oggetto della modifica |
|||
(7 versioni intermedie di 3 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Versioni compatibili|}} | {{Versioni compatibili|Squeeze|Wheezy|Jessie|Stretch}} | ||
== Introduzione == | == Introduzione == | ||
In un server è fondamentale avere il completo controllo della directory < | In un server è fondamentale avere il completo controllo della directory <code>/etc</code>, dove risiedono tutti i file di configurazione del sistema. | ||
<br/> | <br/> | ||
Un metodo molto semplice, efficace e poco faticoso è utilizzare il software '' | Un metodo molto semplice, efficace e poco faticoso è utilizzare il software ''etckeeper''. Questo software e’ una collezione di script bash che consentono di tenere sotto controllo tramite un sistema di revisione distribuito la nostra directory <code>/etc</code>, dove sono appunto presenti i file di configurazione della maggior parte dei nostri servizi in Linux. | ||
== Installazione == | == Installazione == | ||
L'installazione è molto semplice: | L'installazione è molto semplice: | ||
<pre> | <pre> | ||
apt-get install etckeeper bzr | # apt-get install etckeeper bzr | ||
</pre> | </pre> | ||
Il pacchetto '' | Il pacchetto ''etckeeper'' si appoggia, per tenere traccia dei cambiamenti, a un software di controllo versione: possiamo scegliere quello che preferiamo tra Git, Subversion, Bazaar, etc. | ||
<br/> | <br/> | ||
In questa guida la scelta è caduta su Bazaar, un software leggero e adatto a installazioni piccole o di singoli server. | In questa guida la scelta è caduta su Bazaar, un software leggero e adatto a installazioni piccole o di singoli server. | ||
Riga 20: | Riga 20: | ||
# nano /etc/etckeeper/etckeeper.conf | # nano /etc/etckeeper/etckeeper.conf | ||
</pre> | </pre> | ||
e | e impostiamo il software di controllo versione che intendiamo usare: | ||
<pre> | <pre> | ||
# The VCS to use. | # The VCS to use. | ||
Riga 30: | Riga 30: | ||
lasciando immodificate le altre linee del file. | lasciando immodificate le altre linee del file. | ||
<br/><br/> | <br/><br/> | ||
Per inizializzare | Per inizializzare etckeeper lanciamo il comando: | ||
<pre> | <pre> | ||
# etckeeper init | # etckeeper init | ||
</pre> | </pre> | ||
In caso apportassimo delle modifiche al file di configurazione < | In caso apportassimo delle modifiche al file di configurazione <code>/etc/etckeeper/etckeeper.conf</code>, potremo (se lo desideriamo) reinizializzare la configurazione: | ||
<pre> | <pre> | ||
# etckeeper uninit | # etckeeper uninit | ||
Riga 40: | Riga 40: | ||
# etckeeper init | # etckeeper init | ||
</pre> | </pre> | ||
tenendo presente che una reinizializzazione, azzera tutte le informazioni archiviate da | tenendo presente che una reinizializzazione, azzera tutte le informazioni archiviate da etckeeper. | ||
<br/> | <br/> | ||
<br/> | <br/> | ||
etckeeper farà il primo commit automaticamente quando verrà installato un software che modifica la directory < | etckeeper farà il primo commit automaticamente quando verrà installato un software che modifica la directory <code>/etc directory</code>, ma se non vogliamo aspettare, possiamo lanciare il primo commit manualmente: | ||
<pre> | <pre> | ||
# etckeeper commit "Initial commit" | # etckeeper commit "Initial commit" | ||
Riga 49: | Riga 49: | ||
== Utilizzo == | == Utilizzo == | ||
Per impostazione predefinita, | Per impostazione predefinita, etckeeper effettua un commit ogni giorno. | ||
<br/> | <br/> | ||
Possiamo comunque effettuare manualmente dei commit, ad esempio dopo aver apportato delle modifiche ai file di configurazione di qualche servizio. | Possiamo comunque effettuare manualmente dei commit, ad esempio dopo aver apportato delle modifiche ai file di configurazione di qualche servizio. | ||
<br/> | <br/> | ||
Supponiamo di aver modificato il file < | Supponiamo di aver modificato il file <code>/etc/hosts</code>. Con il comando: | ||
<pre> | <pre> | ||
# bzr status /etc/ | # bzr status /etc/ | ||
Riga 83: | Riga 83: | ||
# bzr log /etc/hosts | # bzr log /etc/hosts | ||
</pre> | </pre> | ||
ci mostrerà tutte le versioni archiviate del file < | ci mostrerà tutte le versioni archiviate del file <code>/etc/hosts</code>: | ||
<pre> | <pre> | ||
root@server1:~# bzr log /etc/hosts | root@server1:~# bzr log /etc/hosts | ||
Riga 120: | Riga 120: | ||
# bzr log /etc | # bzr log /etc | ||
</pre> | </pre> | ||
ci mostrerà le versioni dell'intera directory < | ci mostrerà le versioni dell'intera directory <code>/etc</code>: | ||
<pre> | <pre> | ||
root@server1:~# bzr log /etc | root@server1:~# bzr log /etc | ||
Riga 164: | Riga 164: | ||
</pre> | </pre> | ||
<br/> | <br/> | ||
Per ripristinare il file < | Per ripristinare il file <code>/etc/hosts</code> alla versione 3 occorre: | ||
<pre> | <pre> | ||
# bzr revert --revision 3 /etc/hosts | # bzr revert --revision 3 /etc/hosts | ||
</pre> | </pre> | ||
Se vogliamo ripristinare l'intera directory/< | Se vogliamo ripristinare l'intera directory/<code>/etc</code> alla versione 2: | ||
<pre> | <pre> | ||
# bzr revert --revision 2 /etc | # bzr revert --revision 2 /etc | ||
Riga 174: | Riga 174: | ||
== Monitorare i pacchetti installati == | == Monitorare i pacchetti installati == | ||
Possiamo aggiungere a etckeeper anche la lista dei pacchetti installati nel sistema, utilizzando un piccolo script: | Possiamo aggiungere a etckeeper anche la lista dei pacchetti installati nel sistema, utilizzando un piccolo [[script]]: | ||
<pre> | <pre> | ||
dpkg --get-selections > /etc/package.list | # dpkg --get-selections > /etc/package.list | ||
cp /etc/apt/sources.list /etc/sources.list | # cp /etc/apt/sources.list /etc/sources.list | ||
apt-key exportall > /etc/Repo.keys | # apt-key exportall > /etc/Repo.keys | ||
</pre> | </pre> | ||
Inserito in cron, questo script creerà una lista aggiornata dei pacchetti installati nel sistema, che sarà poi inserita nel controllo di versione di etckeeper. | Inserito in [[cron]], questo script creerà una lista aggiornata dei pacchetti installati nel sistema, che sarà poi inserita nel controllo di versione di etckeeper. | ||
<br/> | <br/> | ||
Potremo ripristinare le modifiche con: | |||
<pre> | |||
# apt-key add /etc/Repo.keys | |||
# cp ~/sources.list /etc/apt/sources.list | |||
# apt-get update | |||
# apt-get install dselect | |||
# dpkg --set-selections < /etc/package.list | |||
# apt-get dselect-upgrade -y | |||
</pre> | |||
{{Autori | |||
|Autore=[[Utente:Ferdybassi|Ferdybassi]] | |||
}} | |||
[[Categoria:Monitoraggio]] | [[Categoria:Monitoraggio]] | ||
[[Categoria:Backup&restore]] | [[Categoria:Backup&restore]] |