Sommario:

Backup del server: 6 passaggi
Backup del server: 6 passaggi

Video: Backup del server: 6 passaggi

Video: Backup del server: 6 passaggi
Video: How to set up a Windows Backup Server 2024, Dicembre
Anonim

Di JohntronJohntron parlaSegui di più dell'autore:

Costruisci il tuo firewall gateway own
Costruisci il tuo firewall gateway own
Crea il tuo firewall gateway own
Crea il tuo firewall gateway own

Informazioni su: sviluppatore di software, co-fondatore di Placethings e tecnologo. Attualmente frequenta la scuola di specializzazione nel programma Emerging Media and Communications presso l'Università del Texas a Dallas. Maggiori informazioni su Johntron »

Scopri come eseguire il backup della tua casella *nix su un disco rigido esterno (o su un'unità nastro senza troppi sforzi). Mi occupo dell'installazione del supporto di backup, dell'utilizzo di "dump", del ripristino e del backup dei file da un server remoto a un disco rigido esterno. Per eseguire il backup di un PC Windows, leggi l'articolo di lifehacker.com qui.: Fai un `dump`Fase 3: `ripristinaFase 4: Backup remotiFase 5: AutomazioneIl logo di FreeBSD è un marchio di The FreeBSD Foundation ed è utilizzato da John Syrinek con il permesso di The FreeBSD Foundation.

Passaggio 1: prepara le cose

Prima di eseguire un backup, è necessario disporre di qualcosa su cui eseguire il backup. Tradizionalmente, si trattava di unità a nastro; tuttavia, un disco rigido esterno (di qualità) funzionerà perfettamente. Non è necessario utilizzare un disco rigido esterno, ma con un'unità esterna si ha la comodità di poter portare il disco rigido a casa (o in un'altra posizione fuori sede). Ho usato un paio di Western Digital MyBook. Circuit City ha avuto uno sconto dell'80% su (selezionate) unità esterne e ho ottenuto due unità da 250 GB a un prezzo stracciato. Nella mia esperienza, Western Digital ha unità di altissima qualità (il che significa che durano per sempre). Questo li rende ottimi per un backup. Se stai per affrontare la seccatura di eseguire il backup di qualcosa, non vuoi che il tuo supporto di backup ti rovini addosso. OK, proprio come il mio altro articolo, userò FreeBSD®; tuttavia, la maggior parte delle cose che tratterò possono essere eseguite in qualsiasi versione di Linux, Unix o BSD. (Salta il paragrafo successivo se hai già il supporto USB 2.0 o non stai utilizzando un'unità USB esterna) I MyBook sono Unità USB 2.0. FreeBSD 5.4-STABLE non ha il driver EHCI (fondamentalmente la cosa che ti dà USB 2.0) abilitato di default. Questa è una soluzione semplice, anche se alcuni potrebbero pensare che ricompilare il kernel sia spaventoso (non lo è). Se sei uno dei tipi eccessivamente cauti, ti consiglio di fare un backup PRIMA di ricompilare il kernel. USB 2.0 potrebbe non essere abilitato, ma USB 1.1 funziona ancora. È solo molto più lento. Per abilitare EHCI, leggi questa pagina del Manuale. Probabilmente dovrai anche fare riferimento a questa sezione del Manuale che spiega come ricompilare effettivamente il kernel. Se stai usando un'unità esterna, o anche un'unità interna, dovrai montare l'unità prima di poterla usare. Questo viene fatto con il comando `mount` ed è piuttosto semplice. Ecco la pagina man di mount. Se mount si lamenta di non essere in grado di determinare il tipo di filesystem, probabilmente dovrai formattare l'unità. Per fare ciò, dovrai conoscere il dispositivo corretto da formattare. Per me era /dev/da0, ma per te potrebbe essere diverso. Consulta la documentazione della tua distribuzione. Dopo aver determinato a quale dispositivo è collegato il tuo disco rigido esterno, dovrai eseguire l'effettiva formattazione dell'unità (beh, partizione). Se hai bisogno di aiuto per partizionare il tuo disco, chiedimi pure. FreeBSD usa mkfs per creare filesystem su partizioni. Qualsiasi tipo di filesystem funzionerà, ma ho scelto di usare UFS perché è quello che FreeBSD usa per impostazione predefinita. FAT32 è probabilmente il più compatibile con altri sistemi operativi, ed Ext3 è quello che la maggior parte delle versioni Linux sta usando oggi (o almeno l'hanno fatto l'ultima volta che ho usato Linux). Quindi, ho usato questo comando per montare il mio disco: mount -t ufs /dev /da0 /backupOK, dovresti avere il supporto di backup pronto per l'uso. In caso contrario, basta chiedere:) Procedi al passaggio 2. Il marchio FreeBSD è un marchio registrato di The FreeBSD Foundation ed è utilizzato da John Syrinek con il permesso di The FreeBSD Foundation.

Passaggio 2: fai una "discarica"

Facciamo il backup delle nostre cose. Ci sono alcuni modi per farlo. Dump e Tar sono probabilmente i due più comuni, ed entrambi hanno i loro punti di forza e di debolezza. Dump è senza dubbio il modo più affidabile per eseguire il backup del sistema; tuttavia, può solo eseguire il backup di intere partizioni. Tar è veloce e facile da usare su singole cartelle, ma richiede del tempo per eseguire il backup di volumi più grandi. Tar comprime anche i file, aggiungendo un livello di complessità che potrebbe danneggiare i tuoi backup. Leggi questa pagina per maggiori informazioni Ho deciso di utilizzare dump a causa dell'affidabilità. Lo spazio di archiviazione non era un problema e poiché ho cron che esegue automaticamente i backup per me mentre dormo, non devo preoccuparmi dei tempi. Una delle peculiarità di dump è che esegue il backup di intere partizioni. Ciò significa che è necessario eseguire il dump di ogni partizione singolarmente (ad es. le partizioni /usr, /var e /tmp, nonché la partizione /). Dump consente di specificare anche il "livello" di backup. Eseguirò backup settimanali e notturni. Per i miei backup settimanali, utilizzo il livello 0, e per i miei backup notturni, utilizzo il livello 2. Se utilizzi un'unità a nastro o se desideri risparmiare spazio di archiviazione, considera l'utilizzo di uno schema di backup Tower of Hanoi (Google it (Ricorda, /backup è dove ho montato il mio HD esterno)I comandi che ho usato per i dump settimanali sono:

  • dump -0Lna -C 100 -f /backup/settimanale/root /
  • dump -0Lna -C 100 -f /backup/weekly/usr /usr
  • dump -0Lna -C 100 -f /backup/settimanale/var /var
  • dump -0Lna -C 100 -f /backup/settimanale/tmp /tmp

I comandi che ho usato per i dump notturni sono:

  • dump -2Lna -C 100 -f /backup/nightly/root /
  • dump -2Lna -C 100 -f /backup/nightly/usr /usr
  • dump -2Lna -C 100 -f /backup/nightly/var /var
  • dump -2Lna -C 100 -f /backup/nightly/tmp /tmp

In realtà ho usato il comando `date` per nominare i miei file, ma l'ho omesso per semplicità. Un dump usando il comando `date` sarebbe simile a questo:dump -0Lna -C 100 -f /backup/weekly/usr/`date "+%Y-%B-%d"` /usrNaturalmente, avrai bisogno per creare qualsiasi directory di destinazione di backup appropriata prima di eseguire il comando dump, ma dovresti essere in grado di capirlo. E ora dovresti avere un'istantanea del tuo sistema, o almeno sapere come crearne uno. Il passaggio successivo è come utilizzare il ripristino e come creare floppy "fixit". NON SALTA QUESTO PASSO o stai perdendo tempo.

Passaggio 3: `ripristinare`

È passato un po' di tempo dall'ultima volta che ho dovuto ripristinare un backup, quindi abbi pazienza.

Per ripristinare un backup, devi avere una sorta di sistema operativo minimo per trasferire il backup dal tuo supporto di backup alla macchina live, una macchina LIVE (ad esempio, nessun hardware difettoso) e i tuoi backup stessi. Per il sistema operativo minimale, utilizzo lo stesso CD che ho usato per installare FreeBSD. Sysinstall ha una modalità "Fixit" per ripristinare i backup. Se si dispone di hardware non standard, potrebbe essere necessario creare il proprio disco di avvio personalizzato. Questo non sarà trattato in questo articolo, ma consiste fondamentalmente nel creare un kernel barebone e metterlo su un disco di avvio. Nota: un kernel FreeBSD 5.4 MOLTO minimale è di circa 2,3 MB, il che significa che non si adatta a un singolo floppy. Quindi, in pratica, se la cacca colpisce la ventola (ger ger ger), si avvia dal CD, si entra in modalità "Fixit", si monta il disco rigido e si esegue il comando di ripristino. Credo che tu debba montare e smontare le partizioni che stai ripristinando una alla volta. Inoltre, le tabelle delle partizioni devono essere pulite, il che significa che potrebbe essere necessario utilizzare `bsdlabel` per correggere le partizioni. Comando di ripristino: (dopo aver montato una partizione pulita e aver cambiato la directory della partizione di destinazione) restore vrf /dev/da0 Si noti che è possibile ripristinare parti (singoli file o directory) dei backup creati utilizzando dump, se necessario.

Passaggio 4: backup remoti

I backup remoti possono essere eseguiti utilizzando rdump, scp o software personalizzato. La maggior parte delle società di hosting fornisce (a pagamento) backup notturni. Lo consiglio vivamente se apprezzi i tuoi dati. Ho avuto due server dedicati che mi hanno cagato addosso da due host diversi. Sebbene questi backup siano in genere archiviati su un'unità separata, di solito si trovano nello stesso edificio, quindi se succede qualcosa all'edificio (il che è improbabile, ma sicuramente possibile), allora sei SOL. Questo è il motivo per cui ti consiglio di creare il tuo backup off-site (relativo al sistema di cui viene eseguito il backup) e backup locali notturni. Tieni presente che ho dovuto aggiungere l'estensione.txt per caricare lo script (puoi rimuoverlo). Poiché la società che ospita la mia macchina remota esegue backup "tar" notturni, ho deciso di copiare questi file su una macchina locale ogni notte base. Ho scritto uno script di shell basato su PHP (perché è quello che so) che sostanzialmente sincronizza i file di backup di un sistema remoto con una copia locale. Scarica nuovi file, (facoltativamente) scarica nuovamente i file di backup con discrepenze nelle dimensioni dei file e rimuove le copie locali che non esistono sul sistema remoto. Ciò consente di risparmiare larghezza di banda, tempo e spazio di archiviazione. Fondamentalmente è solo un wrapper `diff` per `scp`. La fonte si trova in fondo a questa pagina. Se lo usi, assicurati di chmod per avere i permessi di esecuzione (chmod u=+rx fetchbackups). Raccomando che l'utente operatore esegua questo script (chown operator fetchbackups). I metodi di backup remoto alternativi includono l'uso di `scp` su un'intera directory, l'uso di `rdump` o, come hanno sottolineato i client, l'uso di `rsnapshot` o `backuppc`. Se non si dispone dell'accesso root al server remoto, alcuni di questi metodi potrebbero non essere possibili e `scp` spesso richiede molto tempo e larghezza di banda.

Passaggio 5: automazione

Quindi hai deciso di fare un'istantanea del tuo sistema e ora vuoi farlo ogni notte. Cron funziona alla grande per questo ed è piuttosto semplice da configurare.

I lavori Cron sono semplicemente comandi che vengono eseguiti regolarmente. Possono funzionare mensilmente, ogni notte o anche alle 7:30 del lunedì mattina. I lavori cron sono specificati nel file crontab. In FreeBSD questo file si trova in /etc/crontab Visualizza le pagine man per /etc/crontab per capire come funziona Ho allegato il mio crontab a questa pagina (rimuovi l'estensione.txt). Tutto quello che fai è aggiungere i tuoi lavori cron e salvare il file. Il file viene rivalutato ogni minuto, quindi hai finito.

Passaggio 6: Conclusione e considerazioni finali

Spero che tu sia riuscito a eseguire il backup delle tue macchine. Quelle che seguono sono solo alcune note sull'argomento.

Se sei serio sui backup, allora TEST TEST TEST. Assicurati che le tue procedure di backup e ripristino siano impeccabili. I backup che non puoi ripristinare sono inutili. Un problema che ho riscontrato è stato impostare la dimensione della cache troppo grande. Questo può (fondamentalmente) DoS il tuo sistema e causarne il blocco. La tua cache dovrebbe essere sempre una frazione della tua RAM per essere efficace (la mia è un quinto) e non dovrebbe MAI superare la dimensione dello spazio di swap. 32 MB è ciò che consiglia la pagina man di dump. Sebbene queste informazioni possano essere obsolete, avere una cache di grandi dimensioni non farà molta differenza se hai tutta la notte per eseguire il backup del sistema. Se hai automatizzato i backup, assicurati che funzionino. Sarebbe un vero incubo per il tuo sistema andare in crash e POI rendersi conto che i tuoi cron di backup hanno smesso di funzionare 6 mesi fa a causa di spazio su disco insufficiente. I lavori Cron automatizzano semplicemente il processo di "compiacimento". Se esegui i backup manualmente, non accontentarti e dimentica. Rendilo una routine. Non fare affidamento nemmeno sui lavori cron, perché possono fallire. I backup sono solo copie dei tuoi file. Ciò significa che i backup dovrebbero essere protetti altrettanto, se non meglio, dei tuoi sistemi live. Conserva il tuo disco rigido esterno in un luogo sicuro (ad esempio lontano dall'acqua E dai ladri). Esegui i cronjob di backup come utente "operatore". Questo è un account limitato che esiste per cose come questa. Assicurati inoltre che gli utenti normali non possano eseguire backup. Se ritieni di poter essere potenzialmente il bersaglio di un attacco sofisticato (o anche se non lo fai), crittografa sempre i dati trasferiti durante i backup remoti. A causa della quantità di informazioni, nonché della regolarità dei backup (se utilizzi i cronjob), gli hacker possono impiegare il loro tempo a rubare le tue informazioni. La crittografia è facile, quindi usala. Assicurati che gli utenti normali non possano eseguire backup sui propri dispositivi. Inoltre, `scp` richiede l'autenticazione. Consiglio vivamente chiavi pubbliche/private precondivise. Non vuoi che la tua password venga trasmessa ogni volta che viene eseguito un backup.

Consigliato: