Guida verificata con Ubuntu: 22.04 24.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

La seguente guida illustra l'ottimizzazione di un subvolume per un filesystem Btrfs su Ubuntu.
Per altre informazioni di carattere più generale sull'argomento consultare questa guida.

Creare vari subvolumi può comportare alcuni vantaggi:

Subvolume cartella /var/tmp

  1. Montare la radice su /mnt (la cartella montata è di esempio, si può scegliere o creare altre cartelle per il montaggio):

    sudo mount -t btrfs -o --options-source /dev/sda2 /mnt
  2. Creare subvolume della cartella:

    sudo btrfs subvolume create /mnt/@vartmp
  3. Impostare i permessi della cartella tramite il bit sticky:

    sudo chmod 1777 /mnt/@vartmp
  4. Copiare il contenuto della cartella nel subvolume:

    sudo cp -a /mnt/@/var/tmp/* /mnt/@vartmp/
  5. Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/fstab e scriverci le opzioni di montaggio:

    UUID=UUID /var/tmp btrfs noatime,subvol=@vartmp
  6. Fare clic su Ctrl+S per salvare e su Ctrl+Q per chiudere l'editor.

  7. Smontare il filesystem:

    sudo umount /mnt

Subvolume cartella /var/cache

  1. Montare la radice su /mnt (la cartella montata è di esempio, si può scegliere o creare altre cartelle per il montaggio):

    sudo mount -t btrfs -o --options-source /dev/sda2 /mnt
  2. Creare subvolume della cartella:

    sudo btrfs subvolume create /mnt/@varcache
  3. Copiare il contenuto della cartella nel subvolume:

    sudo cp -a /mnt/@/var/cache/* /mnt/@varcache/
  4. Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/fstab e scriverci le opzioni di montaggio:{{{:

    UUID=UUID /var/cache  btrfs noatime,subvol=@varcache
  5. Fare clic su Ctrl+S per salvare e su Ctrl+Q per chiudere l'editor.

  6. Smontare il filesystem:

    sudo umount /mnt

Subvolume cartella /var/log

  1. Montare la radice su /mnt (la cartella montata è di esempio, si può scegliere o creare altre cartelle per il montaggio):

    sudo mount -t btrfs -o --options-source /dev/sda2 /mnt
  2. Creare subvolume della cartella:

    sudo btrfs subvolume create /mnt/@varlog
  3. Copiare il contenuto della cartella nel subvolume:

    sudo cp -a /mnt/@/var/log/* /mnt/@varlog/
  4. Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/fstab e scriverci le opzioni di montaggio:

    UUID=UUID /var/log btrfs noatime,compress=zstd:1,subvol=@varlog
  5. Fare clic su Ctrl+S per salvare e su Ctrl+Q per chiudere l'editor.

  6. Smontare il filesystem:

    sudo umount /mnt

Subvolume flatpak

È utile in caso di ripristino di sistema da uno snapshot, poiché le applicazioni flatpak non vengono ripristinate.

  1. Montare la radice su /mnt (la cartella montata è di esempio, si può scegliere o creare altre cartelle per il montaggio):

    sudo mount -t btrfs -o --options-source /dev/sda2 /mnt
  2. Creare subvolume della cartella:

    sudo btrfs subvolume create /mnt/@varlibflatpak
  3. Copiare il contenuto della cartella nel subvolume:

    sudo cp -a /mnt/@/var/lib/flatpak/* /mnt/@varlibflatpak/
  4. Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/fstab e scriverci le opzioni di montaggio:

    UUID=UUID /var/lib/flatpak btrfs noatime,compress=zstd:1,subvol=@varlibflatpak
  5. Fare clic su Ctrl+S per salvare e su Ctrl+Q per chiudere l'editor.

  6. Smontare il filesystem:

    sudo umount /mnt

Subvolume VM gestite da VirtManager

  1. Montare la radice su /mnt (la cartella montata è di esempio, si può scegliere o creare altre cartelle per il montaggio):

    sudo mount -t btrfs -o --options-source /dev/sda2 /mnt
  2. Creare subvolume della cartella:

    sudo btrfs subvolume create /mnt/@varlibvirt

    Da libvirt version 6.6.0 non è più necessario disattivare il COW manualmente, se rileva Btrfs come filesystem, viene disattivato in automatico per le nuove immagini.

    Non disattivare COW se si utilizza una configurazione di mirroring (raid1, raid1cN, raid10, ecc.). Per ulteriore dettagli: https://github.com/kdave/btrfs-progs/issues/481

  3. Disattivare il COW sul subvolume:

    sudo chattr +C /mnt/@varlibvirt
  4. Copiare il contenuto della cartella nel subvolume:

    sudo cp -a /mnt/@/var/lib/libvirt/images/* /mnt/@varlibvirt/
  5. Aprire con i privilegi di amministrazione e con un editor di testo il file /etc/fstab e scriverci le opzioni di montaggio:

    UUID=UUID /var/lib/libvirt/images/ btrfs noatime,subvol=@varlibvirt
  6. Fare clic su Ctrl+S per salvare e su Ctrl+Q per chiudere l'editor.

  7. Smontare il filesystem:

    sudo umount /mnt

Subvolume immagini di GNOME-Boxes

Per la versione di flatpak che si trova sullo store flathub, il percorso alle immagini VM è /.var/app/org.gnome.Boxes/data/gnome-boxes/images.

Con GNOME-Boxes già installato seguire i seguenti passaggi.

  1. Creare la cartella temporanea:

    sudo mkdir /home/utente/boxtmp
  2. Copiare il contenuto della cartella:

    sudo cp -a /home/username/.local/share/gnome-boxes/images/* /home/username/boxtmp/
  3. Elimina la cartella /images per creare il subvolume:

    sudo rm -r /home/username/.local/share/gnome-boxes/images
  4. Creare subvolume della cartella:

    sudo btrfs subvolume create /home/username/.local/share/gnome-boxes/images
  5. Ripristinare il contenuto della cartella /images:

    sudo cp -a /home/username/boxtmp/* /home/username/.local/share/gnome-boxes/images/

Se GNOME-Boxes non è già installato, prima d'installarlo creare il subvolume /home/username/.local/share/gnome-boxes/images e successivamente installare GNOME-Boxes.

Ulteriori risorse


CategoryAmministrazione

Hardware/DispositiviPartizioni/Btrfs/OttimizzazioneSubvolume (l'ultima modifica è del 26/01/2026 12.01.51, fatta da andreas-xavier)