Voglio controllare la versione di tutta la mia fetta


3

Sto noleggiando una fetta (ovvero un VPS) da Slicehost. Ho passato un giorno o due a riempire i /usrmiei pacchetti preferiti, /etccon config e script di init, e così via. Ora voglio:

  1. salvare l'intera configurazione da qualche parte (ad esempio, per caricare su un'altra macchina).
  2. guarda quali modifiche ho apportato a quali file
  3. annulla le modifiche, le revisioni dei tag e tutto ciò che è utile per il controllo della versione

Salvare un'immagine del disco mi dà (1), ma non (2) e (3).

L'uso di Subversion ( svn import / svn://someotherhost) potrebbe darmi tutti e tre, ma mi aspetto problemi se effettivamente provo a controllare un progetto /e a mantenere le directory .svn nelle aree di proprietà di root. E per caricare il mio setup su un nuovo slice, dovrei prima installare un client svn.

C'è un buon modo per fare quello che voglio fare?

Risposte:


5

Presumo che tu stia utilizzando una delle distribuzioni di sindaco Se avessi bisogno di fare lo stesso di te, userei git per tutto ciò che riguarda i file di configurazione (/ etc, / usr / local / etc, ecc.) Eviterei i file bin della versione a meno che non si stiano compilando i propri pacchetti.

E vorrei utilizzare il gestore pacchetti nativo di ogni distribuzione per replicare l'installazione dello stesso profilo pacchetto.

Nel caso di distro basate su debian questo è davvero facile:

dpkg --get-selections | grep '[[:space:]]install$'| awk '{print $1}' > packages-installed

e quindi nel nuovo sistema:

cat packages-installed | xargs sudo apt-get install

Saluti


Mi piace molto questo metodo. Penso che se hai una versione esplicita del tuo sistema operativo, non dovresti davvero controllarlo.
JP Silvashy,

Un elemento che aggiungerei è quello di mantenere una cronologia permanente dei comandi, in modo da poter sempre ripetere l'ordine di installazione e ciò che è stato installato. Un ordine diverso potrebbe potenzialmente creare problemi.
John Gardeniers,

Mi piace il trucco dpkg / apt-get! Penso che ci proverò.
Tom

2

Mi aspetto che git o qualche altro vcs distribuito farebbe un lavoro migliore in questo caso poi svn. Potresti voler cercare la fonte per etckeeper che fondamentalmente tiene traccia di / etc con git e un paio di altri dvcs. Probabilmente Etckeeper potrebbe essere esteso o modificato per tracciare l'intero filesystem.


1

Vedo due soluzioni non ovvie.

Backup tramite BackupPC , che consente di verificare facilmente le versioni precedenti e ripristinarle. Può essere fatto da remoto o localmente.

Gestione della configurazione tramite burattino . Non controllo la versione di tutti i file sul server. Versione controllo moduli fantoccio e manifest che descrivono quali modifiche dovrebbero essere applicate al server. Evito di toccare i server a mano e, se lo faccio, duplico le modifiche in marionetta.

Uso entrambi. La configurazione proviene da fantoccio, con versione con git e la versione di "dati utente" (pagine web servite, home directory ecc.) È gestita da backuppc.


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.