Btrfs

Come risparmiare spazio su disco utilizzando la deduplicazione Btrfs

Come risparmiare spazio su disco utilizzando la deduplicazione Btrfs
La deduplicazione è una funzionalità software utilizzata per rimuovere blocchi di dati duplicati (blocchi di dati ridondanti) da un filesystem per risparmiare spazio su disco. Il filesystem Btrfs è un moderno filesystem Copy-on-Write (CoW) che supporta la deduplicazione.

Se hai bisogno di conservare molti dati ridondanti (i.e., backup di file, database) sul tuo computer, quindi la funzione Copy-on-Write (CoW) e la deduplicazione del filesystem Btrfs possono far risparmiare un'enorme quantità di spazi su disco.

In questo articolo, ti mostrerò come risparmiare spazio su disco utilizzando la funzione di deduplicazione Btrfs. Quindi iniziamo.

Prerequisiti:

Per provare gli esempi di questo articolo,

Ho un disco rigido da 20 GB sdb sulla mia macchina Ubuntu. Ho creato 2 partizioni sdb1 e sdb2, su questo disco rigido. userò la partizione sdb1 in questo articolo.

$ sudo lsblk -e7

Il tuo disco rigido o SSD potrebbe avere un nome diverso dal mio, così come le partizioni. Quindi, assicurati di sostituirli con i tuoi d'ora in poi.

Se hai bisogno di assistenza per l'installazione del filesystem Btrfs su Ubuntu, controlla il mio articolo Installa e usa Btrfs su Ubuntu 20.04 LTS.

Se hai bisogno di assistenza sull'installazione del filesystem Btrfs su Fedora, controlla il mio articolo Installa e usa Btrfs su Fedora 33.

Creazione di un filesystem Btrfs:

Per sperimentare la compressione dei dati a livello di filesystem Btrfs, è necessario creare un filesystem Btrfss.

Per creare un filesystem Btrfs con l'etichetta dati sul sdb1 partizione, eseguire il seguente comando:

$ sudo mkfs.btrfs -L dati /dev/sdb1

Montare un filesystem Btrfs:

Crea una directory /dati con il seguente comando:

$ sudo mkdir -v /data

Per montare il filesystem Btrfs creato sul sdb1 partizione sul /dati directory, eseguire il seguente comando:

$ sudo mount /dev/sdb1 /data

Il filesystem Btrfs dovrebbe essere montato, come puoi vedere nello screenshot qui sotto.

$ df -h /dati

Installazione degli strumenti di deduplicazione su Ubuntu 20.04 LTS:

Per deduplicare un filesystem Btrfs, è necessario installare il dupremove programma sul tuo computer.

Se stai usando Ubuntu 20.04 LTS, quindi puoi installare dupremove dal repository ufficiale dei pacchetti di Ubuntu.

Innanzitutto, aggiorna la cache del repository del pacchetto APT con il seguente comando:

$ sudo apt update

Installa il dupremove pacchetto con il seguente comando:

$ sudo apt install duperemove -y

Il dupremove pacchetto dovrebbe essere installato.

Installazione degli strumenti di deduplicazione su Fedora 33:

Per deduplicare un filesystem Btrfs, è necessario installare il dupremove programma sul tuo computer.

Se stai usando Fedora 33, puoi installarlo dupremove dal repository ufficiale dei pacchetti di Fedora.

Innanzitutto, aggiorna la cache del repository del pacchetto DNF con il seguente comando:

$ sudo dnf makecache

Installa il dupremove pacchetto con il seguente comando:

$ sudo dnf install duperemove

Per confermare l'installazione, premere e poi premere .

Il dupremove pacchetto dovrebbe essere installato.

Testare la deduplicazione su un filesystem Btrfs:

In questa sezione, farò un semplice test per mostrarti come la funzionalità di deduplicazione del filesystem Btrfs rimuove i dati ridondanti dal filesystem e salva spazio su disco.

Come potete vedere,

  1. ho copiato un file QGIS-OSGeo4W-3.14.0-1-Setup-x86_64.EXE al /dati directory. Il file è 407 MB in misura.
  2. Il file memorizzato sul /dati la directory ha una dimensione di 407 MB.
  3. Solo il file consumato circa 412 MB di spazio su disco dal filesystem Btrfs montato sul /dati directory.

Come potete vedere,

  1. Ho copiato lo stesso file nel /dati directory e l'ho rinominata in QGIS-OSGeo4W-3.14.0-1-Setup-x86_64.2.EXE.
  2. Il file memorizzato sul /dati la directory è adesso 814 MB in misura.
  3. I file consumati circa 820 MB di spazio su disco dal filesystem Btrfs montato sul /dati directory.

Per eseguire l'operazione di deduplicazione sul filesystem Btrfs montato sul /dati directory, eseguire il seguente comando:

$ sudo duperemove -dr /data

I blocchi di dati ridondanti dal filesystem Btrfs montati sul /dati la directory dovrebbe essere rimossa.

Come potete vedere,

  1. ho i file QGIS-OSGeo4W-3.14.0-1-Setup-x86_64.EXE e QGIS-OSGeo4W-3.14.0-1-Setup-x86_64.2.EXE nel /dati directory.
  2. Il file memorizzato sul /dati la directory è adesso 814 MB in misura.
  3. I file consumati circa 412 MB di spazio su disco dal filesystem Btrfs montato sul /dati directory.

Il dupremove programma rimosso blocchi di dati ridondanti (duplicati) dal filesystem Btrfs montato sul mounted /dati directory e ha salvato molti spazi su disco.

Montaggio automatico di un filesystem Btrfs all'avvio:

Per montare il filesystem Btrfs che hai creato, devi conoscere l'UUID del filesystem Btrfs.

Puoi trovare l'UUID del filesystem Btrfs montato sul /dati directory con il seguente comando:

$ sudo btrfs filesystem show /data

Come puoi vedere, l'UUID del filesystem Btrfs che voglio montare all'avvio è e39ac376-90dd-4c39-84d2-e77abb5e3059. Sarà diverso per te. Quindi, assicurati di sostituirlo con il tuo d'ora in poi.

Apri il /etc/fstab file con il nano editor di testo come segue:

$ sudo nano /etc/fstab

Digita la seguente riga alla fine del /etc/fstab file:

UUID=e39ac376-90dd-4c39-84d2-e77abb5e3059 /data btrfs default 0 0

NOTA: Sostituisci l'UUID del filesystem Btrfs con il tuo. Inoltre, cambia l'opzione di montaggio e l'algoritmo di compressione come preferisci.

Quando hai finito, premi + X seguito da e per salvare il /etc/fstab file.

Affinché le modifiche abbiano effetto, riavvia il computer con il seguente comando:

$ sudo reboot

Una volta avviato il computer, il filesystem Btrfs dovrebbe essere montato nel mounted /cartella dati, come puoi vedere nello screenshot qui sotto.

$ df -h /dati

Esegui automaticamente la deduplica utilizzando Cron Job:

Per rimuovere i dati ridondanti dal filesystem Btrfs, devi eseguire il dupremove comanda ogni tanto.

Puoi eseguire automaticamente il dupremove comando orario, giornaliero, settimanale, mensile, annuale o all'avvio utilizzando un cron job.

Per prima cosa, trova il percorso completo del dupremove comando con il seguente comando:

$ che dupremove

Come puoi vedere, il percorso completo del dupremove il comando è /usr/bin/dupremove. Ricorda il percorso perché ti servirà in seguito.

Per modificare il file crontab, esegui il seguente comando:

$ sudo crontab -e

Seleziona un editor di testo che ti piace e premi .

userò il nano editor di testo. Quindi, digiterò 1 e premi .

Il file crontab dovrebbe essere aperto.

Per eseguire il dupremove comando sul /dati directory ogni ora, aggiungi la seguente riga alla fine del file crontab.

@hourly /usr/bin/duperemove -dr /data >> /var/log/duperemove.log

Per eseguire il dupremove comando sul /dati directory ogni giorno, aggiungi la seguente riga alla fine del file crontab.

@daily /usr/bin/duperemove -dr /data >> /var/log/duperemove.log

Per eseguire il dupremove comando sul /dati directory ogni settimana, aggiungi la seguente riga alla fine del file crontab.

@weekly /usr/bin/duperemove -dr /data >> /var/log/duperemove.log

Per eseguire il dupremove comando sul /dati directory ogni mese, aggiungi la seguente riga alla fine del file crontab.

@monthly /usr/bin/duperemove -dr /data >> /var/log/duperemove.log

Per eseguire il dupremove comando sul /dati directory ogni anno, aggiungi la seguente riga alla fine del file crontab.

@yearly /usr/bin/duperemove -dr /data >> /var/log/duperemove.log

Per eseguire il dupremove comando sul /dati directory all'avvio, aggiungi la seguente riga alla fine del file crontab.

@reboot /usr/bin/duperemove -dr /data >> /var/log/duperemove.log

NOTA: correrò il dupremove comando all'avvio in questo articolo.

Quando hai finito, premi + X seguito da e per salvare il file crontab.

Dovrebbe essere installato un nuovo cron job.

Affinché le modifiche abbiano effetto, riavvia il computer con il seguente comando:

$ sudo reboot

Come la dupremove il comando viene eseguito in background, l'output del comando verrà memorizzato nel /var/log/dupremove.log file.

$ sudo ls -lh /var/log/duperemove*

Come puoi vedere, il /var/log/dupremove.log il file contiene il dupremove dati di registro. Significa che il cron job sta funzionando bene.

Conclusione:

In questo articolo, ti ho mostrato come installare il dupremove Strumento di deduplicazione Brtfs su Ubuntu 20.04 LTS e Fedora 33. Ti ho anche mostrato come eseguire la deduplicazione Btrfs usando lo strumento duperemove ed eseguire automaticamente lo strumento duperemove usando un cron job.

Come mostrare l'overlay OSD in app e giochi Linux a schermo intero
Giocare a giochi a schermo intero o utilizzare app in modalità a schermo intero senza distrazioni può tagliarti fuori dalle informazioni di sistema ri...
Le 5 migliori carte di acquisizione del gioco
Abbiamo tutti visto e amato i giochi in streaming su YouTube. PewDiePie, Jakesepticye e Markiplier sono solo alcuni dei migliori giocatori che hanno g...
Come sviluppare un gioco su Linux
Un decennio fa, non molti utenti Linux avrebbero previsto che il loro sistema operativo preferito un giorno sarebbe diventato una piattaforma di gioco...