[archlinux] snapshot & btrfs

Pubblicità
Sul fstab aggiungi l'opzione di mount del subvol @snapshot. Ma perché creare un subvol per gli snapshot? questa non l'ho capita...
mount /dev/sda1 /mnt/btrfsradice
ed hai tutta la radice con i subvol:
sudo btrfs subvolume snapshot /mnt/btrfsradice/@ o @home /mnt/btrfsradice/@nomesnap
dovrebbe funzionare cosi.
Ubuntu-specific subvolume layout in 11.04 and later
In Ubuntu 11.04 and later, the installer sets up btrfs with a specific layout:

The default subvolume to mount is always the top of the btrfs tree (subvolid=5).

Subvolumes are created below the top of the btrfs tree as needed, e.g. for / and /home, it creates subvolumes named @ and @home. This means that specific options are needed in order to mount the subvolumes, instead of the default btrfs tree top:

  • The @ subvolume is mounted to / using the kernel boot option rootflags=subvol=@

  • The @home subvolume (if it is used), is mounted via the mount option subvol=@home in fstab.


How to work with snaphots in Ubuntu's layout
In order to work with snapshots of / or /home in the Ubuntu layout it is very convenient to mount the btrfs filesystem at a separate location, and work from the top of the btrfs tree, rather than from the mounted subvolumes.

sudo mount /dev/sdX# /mnt


Create snapshots
To create a snapshot use

sudo btrfs subvolume snapshot /mnt/@ /mnt/@_snapshot
this will create a snapshot of the @ subvolume named @_snapshot located also in the top of the btrfs tree.



Rollback to a snapshot
To roll back to a snapshot, you simply need to change its name to the name that ubuntu mounts, using

sudo mv /mnt/@ /mnt/@_badroot
sudo mv /mnt/@_snapshot /mnt/@
and reboot.



Delete a snapshot
To delete a snapshot use

sudo btrfs subvolume delete /mnt/@_badroot
btrfs snapshots are subvolumes in themselves, and self-contained, deleting the old @ subvolume like this is fine, provided we have a replacement.
 
# UUID=038bc12a-a751-4264-8861-20cbe428e5ca LABEL=archlinux
/dev/sda2 /snapshot btrfs rw,relatime,noauto,compress=lzo,ssd,space_cache,subvolid=259,subvol=/@snapshot,subvol=@snapshot 0 0
.1 Se @snapshot è montata in /snapshot, perché la vuoi rimontare in /mnt/snapshot?
.2 Monti la radice (mount -t btrfs -o subvol=/ /dev/sda2 /mnt/btrfs/) e poi crei/fai subvol dedicati o snap a tuo piacimento;
.3 Secondo me no. Tanto per darti un' idea - posso montare la radice dove voglio e creare snap, subvol dedicati/diversificati dove buttarci gli snap. Quei pochi snap che ho fatto, gli ho creati in una partizione ntfs in un disco esterno, montando la radice del sistema (subvol=/), creando una cartella snap e creando gli snap-con-data;
.4 Te lo dico domani. :P
Quindi questo post non è servito a nulla?
 
.1 Se @snapshot è montata in /snapshot, perché la vuoi rimontare in /mnt/snapshot?
.2 Monti la radice (mount -t btrfs -o subvol=/ /dev/sda2 /mnt/btrfs/) e poi crei/fai subvol dedicati o snap a tuo piacimento;
.3 Secondo me no. Tanto per darti un' idea - posso montare la radice dove voglio e creare snap, subvol dedicati/diversificati dove buttarci gli snap. Quei pochi snap che ho fatto, gli ho creati in una partizione ntfs in un disco esterno, montando la radice del sistema (subvol=/), creando una cartella snap e creando gli snap-con-data;
.4 Te lo dico domani.
Quindi questo post non è servito a nulla?

oh no quel post è servito eccome, perché è quello che mi ha messo il tarlo xD

3. ma dico io... posso usare @snapshot invece di un subvol creato in /mnt/btrfs? :boh::boh::boh:

1. perché non so come dirgli di snappare lì

2. okay, risolto il punto 1 :asd:
 
Ma... se dai # mount -t btrfs -o subvol=/ /dev/sda2 /mnt/snapshot che succede?
...e perché bisogna creare un subvol per snappare? Se per esempio dai...
Codice:
# mkdir /mnt/prova
# mount -t btrfs -o subvol=/ /dev/sda2 /mnt/prova
# btrfs subvolume snapshot -r /mnt/btrfs/@ /mnt/prova/snap-root
Non dovrebbe snappare? E se poi smonti /mnt/prova, non dovrebbero scomparire gli snap?
 
Ma... se dai # mount -t btrfs -o subvol=/ /dev/sda2 /mnt/snapshot che succede?
...e perché bisogna creare un subvol per snappare? Se per esempio dai...
Codice:
# mkdir /mnt/prova
# mount -t btrfs -o subvol=/ /dev/sda2 /mnt/prova
# btrfs subvolume snapshot -r /mnt/btrfs/@ /mnt/prova/snap-root
Non dovrebbe snappare? E se poi smonti /mnt/prova, non dovrebbero scomparire gli snap?

domani provo, ora non ho il pc con me :)

è questo il punto... DOVREBBE snappare e DOVREBBE smontare gli snapshot e metterli al sicuro.
il problema è che se il DOVREBBE non funziona, in caso di catastrofe (corrispettivo non da idiota di sudo rm -r /), dico addio a tutto xD

ma cmq, vedo di liberare un hdd e poi sfaterò quel DOVREBBE :asd:
 
3. ma dico io... posso usare @snapshot invece di un subvol creato in /mnt/btrfs? :boh::boh::boh:
Il subvolume @snapshot è montato in /snapshot giusto o sbaglio io?
Prendendola per buona, se tenti di montare una qualsiasi cosa in /snapshot il risultato è scontato, ma se invece crei una cartella sotto /snapshot il risultato cambia. Tieni a mente se pur creando gli snap nel subvol @snapshot, questi comunque faran parte della radice e non verran salvati nel subvol @snapshot. Te ne accorgi lanciando il comando btrfs subvol list /.
 
Il subvolume @snapshot è montato in /snapshot giusto o sbaglio io?
Prendendola per buona, se tenti di montare una qualsiasi cosa in /snapshot il risultato è scontato, ma se invece crei una cartella sotto /snapshot il risultato cambia. Tieni a mente se pur creando gli snap nel subvol @snapshot, questi comunque faran parte della radice e non verran salvati nel subvol @snapshot. Te ne accorgi lanciando il comando btrfs subvol list /.

ni: viene montato in /snapshot, ma non in automatico.

anyway, penso di rimuovere il subvol @snapshot e procedere come hai indicato tu in OT

relativamente alla mia configurazione
- Creo la cartella in /mnt/btrfs per montare @
# mkdir /mnt/btrfs
- Monto la radice /
# mount -t btrfs -o subvol=/ /dev/sda2 /mnt/btrfs/
- Creo un subvol ove andrò a depositare gli snapshots e lo chiamo snap
# btrfs subvolume create /mnt/btrfs/snapshot
- Snappo la radice / che sappiamo essere nel subvol @
# btrfs subvolume snapshot -r /mnt/btrfs/@ /mnt/btrfs/snapshot
- Smonto /mnt/btrfs che sappiamo essere il punto di mount del subvol=/ (metto al sicuro gli snapshot)
# umount /mnt/btrfs

1. come mai è subvol=/ e non subvol=@?
 
1. come mai è subvol=/ e non subvol=@?
Di preciso non lo so, ma credo si debba montare il livello superiore per poter accedere ai sottolivelli.
Quindi se elimini @snapshot che ci fai con lo spazio libero perché è come una partizione separata, giusto? Se usi send/receive puoi usarla come deposito snapshots.
Comunque finora la mia attenzione era volta a farli gli snap, per dire, non so manco come fare per caricarli in caso di bisogno. :P
 
Di preciso non lo so, ma credo si debba montare il livello superiore per poter accedere ai sottolivelli.
Quindi se elimini @snapshot che ci fai con lo spazio libero perché è come una partizione separata, giusto? Se usi send/receive puoi usarla come deposito snapshots.
Comunque finora la mia attenzione era volta a farli gli snap, per dire, non so manco come fare per caricarli in caso di bisogno. :P

:lol: pialla tutto, poi vedrai che un modo lo trovi :asd:

@lele.deb invoco te per la questione spazio libero dopo rimozione del subvol. confermi che resta spazio? :look:
 
Snappa snappa :asd:
OT Mia nipotuzza mi dice che tolgono ABS da Arch... rimaniamo senza freni. :shocked:
tua nipote usa arch? wow, presentamela xD

Due to high maintenance cost of scripts related to the Arch Build
System, we have decided to deprecate the `abs` tool and thus rsync
as a way of obtaining PKGBUILDs.

The `asp` tool, available in [extra], provides similar functionality to
`abs`. `asp export pkgname` can be used as direct alternative; more
information about its usage can be found in [the documentation][asp].
Additionally Subversion sparse checkouts, as described [here][svn], can
be used to achieve a similar effect. For fetching all PKGBUILDs, the
best way is cloning the [svntogit][git] mirrors.

While the `extra/abs` package has been already dropped, the rsync
endpoint (rsync://rsync.archlinux.org/abs) will be disabled by the end
of the month.

[asp]: https://github.com/falconindy/asp/blob/master/man/asp.1.txt
[svn]: https://www.archlinux.org/svn/
[git]: https://git.archlinux.org/svntogit/

URL: https://www.archlinux.org/news/deprecation-of-abs-tool-and-rsync-endpoint/
_______________________________________________
arch-announce mailing list
arch-announce@archlinux.org
https://lists.archlinux.org/listinfo/arch-announce
 
Pubblicità
Pubblicità
Indietro
Top