- - Come creare snapshot con BtrFS su Linux

Come creare snapshot con BtrFS su Linux

Ti auguro di creare istantanee di dati sul tuo LinuxPC nel caso in cui qualcosa venga eliminato? Con il file system BtrFS, puoi farlo. Prima di poter creare uno snapshot BtrFS, è necessario disporre di un dispositivo a blocchi su Linux che utilizza il file system BtrFS. Se stai cercando di trasformare un'unità esistente in un'unità BtrFS per dati errati, segui le istruzioni di seguito. Vuoi usare BtrFS come file system di root invece? Assicurati di selezionare "installazione personalizzata" durante il processo di installazione e seleziona BtrFS come file system preferito.

Oltre ad avere un dispositivo a blocchi con il file system BtrFS formattato su di esso, l'utente deve anche installare il file btrfs-progs pacchetto.

Nota: potrebbe essere necessario eseguire il lsblk comando per determinare quale dispositivo a blocchi formattare.

BtrFS su Linux

Per formattare un'unità, eseguire prima il backup di tutti i dati su di essa e quindi aprire un terminale. Nel terminale guadagna la radice usando: sudo -s. Con l'accesso root, utilizzare il mkfs comando per creare un nuovo file system sul dispositivo. In questo esempio, useremo / Dev / sdd1

mkfs.btrfs -f /dev/sdd1

Risoluzione dei problemi

L'unità non funziona dopo la formattazione in BtrFS? Potrebbe essere necessario creare una nuova tabella delle partizioni. Ecco come farlo:

parted /dev/sdd
mklabel gpt
mkpart primary btrfs 1MiB 100%

Esci dallo strumento parted con:

quit

Quindi, rieseguire il comando di formattazione.

mkfs.btrfs -f /dev/sdd1

Crea istantanee con BtrFS

Prima di scattare istantanee, devi crearne alcunesotto-volumi. Il file system principale di Linux è BtrFS? Salta questo passaggio e vai direttamente alla configurazione dei sotto-volumi. Segui questa parte del processo solo se stai utilizzando un'unità secondaria con il file system BtrFS, dovrai montarla. In questo esempio, il disco rigido sarà / Dev / sdd.

sudo -s
mkdir /btrfs
mount -t btrfs /dev/sdd1 /btrfs

La cartella principale di BtrFS è stata creata, montata,ed è pronto per partire. È tempo di creare un sottovolume. Che cos'è un sottovolume? È una funzione speciale fornita con il file system BtrFS che consente ai volumi creati di funzionare in modo simile a un dispositivo a blocchi (think / dev / sda1, ecc.).

La realtà è che in realtà non si bloccanodispositivi. Invece, sono directory fantasiose che sfruttano una tecnologia chiamata "spazi dei nomi". Senza essere troppo complicato, BtrFS sfrutta questa tecnologia dello spazio dei nomi per consentire agli utenti di creare un sacco di volumi secondari individuali e montabili che agiscono e si comportano in modo simile ai dispositivi a blocchi.

Per creare il tuo volume secondario, segui questi passaggi. In questo esempio, mostreremo una struttura di sottovolume di base che inizia nella cartella principale / btrfs. Tieni presente che puoi creare i tuoi volumi dove vuoi, purché sia ​​fatto su un file system BtrFS.

Innanzitutto, ottieni una shell di root. Questi comandi potrebbero essere eseguiti con i privilegi di sudo, ma dato che l'interazione con il file system (come root) può essere noiosa, è meglio ottenere subito root. Uso sudo -s o accedi al root usando su. Quindi fa:

btrfs subvolume create /btrfs/vol_a

Il primo comando crea un sottovolume BtrFS in / mnt / btrfs sulla nostra / Dev / sdd1 esempio di guida. Se lo desideri, puoi fermarti qui e utilizzarlo come volume per salvare tutti i dati importanti. In alternativa, puoi creare volumi sub-sub (quanti ne vuoi). Per creare un volume all'interno di un volume, devi:

btrfs subvolume create /btrfs/vol_a/vol_b

Per creare un'istantanea, prima spostare / copiare tutti i dati importanti in un volume secondario. Per esempio:

cp -R ~/Documents /btrfs/vol_a/

quindi, utilizzare il file system per creare un'istantanea.

btrfs subvolume snapshot /btrfs/vol_a/ /btrfs/vol_a/backup_1

Nota: sostituire "Backup_1"Con qualunque cosa tu voglia chiamare la tua istantanea. Etichettali chiaramente in modo da poterli riordinare in seguito.

Ripristina qualsiasi snapshot con: mv /btrfs/vol_a/ /mnt/btrfs/vol_a/backup_1

Montare sottovolumi come dispositivi a blocchi

Parte del bello dei sottovolumi è la possibilità di montarli tutti individualmente, come dispositivi indipendenti. Per fare ciò, prima elencare tutti i volumi noti usando il comando btrfs.

btrfs subvolume list /btrfs

Passare attraverso l'elenco e trovare il numero ID nel sottovolume, quindi montarlo con il comando mount. Quindi, smontalo una volta ottenuto l'ID.

mount -o subvolid=XXX /dev/sdX /btrfs

Sostituisci XXX con l'ID e / dev / sdX conguidare dove si trova il volume da montare. Tieni presente che non puoi montare un sottovolume sulla stessa partizione della partizione di livello superiore. Montare invece su un'altra partizione o unità formattata BtrFS. Per esempio:

mount -o subvolid=38 /dev/sdc1 /btrfs

Subvol 38 si trova in / Dev / sdd1, ma / Dev / sdc1 è anche BtrFS, quindi le istantanee possono essere montate lì. Non è necessario che ciò avvenga su singole unità. Invece, potresti montarlo su / Dev / sdc2, e così via.

Imposta il volume secondario predefinito

L'impostazione del volume secondario predefinito BtrFS è utile, comefacilita l'interazione con esso. Per impostare un valore predefinito, utilizzare innanzitutto il comando elenco sottovolume per trovare l'ID. Prendi l'ID e collegalo al comando set-default:

btrfs subvolume set-default XXX /btrfs

Per sbarazzarsi di un valore predefinito che hai impostato, usa lo stesso, tranne che invece di utilizzare un ID volume dall'elenco dei volumi secondari, utilizza il numero 0. Questo ripristinerà le impostazioni di fabbrica, quindi sarai libero di utilizzare altri volumi secondari come valori predefiniti.

btrfs subvolume set-default 0 /btrfs

Elimina un volume secondario

Se in qualsiasi momento desideri sbarazzarti di un volume,puoi eliminarlo usando BtrFS. Per favore, non cancellare il volume secondario manualmente dal disco rigido, con comandi come "rmdir" o "rm -rf". È meglio usare gli strumenti del file system BtrFS.

Per eliminare un volume, procedere come segue:

btrfs subvolume delete /btrfs/volume-name
</ P>

Commenti