Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
lpi2:btrfs [2024/05/20 15:02] ingo_wichmann |
lpi2:btrfs [2025/01/28 07:52] (aktuell) ingo_wichmann |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | Paket: btrfs-progs | + | ====== btrfs ====== |
+ | Status: | ||
+ | * https://btrfs.readthedocs.io/en/stable/Status.html | ||
+ | * https://silvenga.com/posts/btrfs-and-lessons-learned/ | ||
+ | Paket: | ||
+ | * Debian: ''btrfs-progs btrfsmaintenance'' | ||
+ | |||
+ | ===== Dateisystem anlegen ===== | ||
ext? nach btrfs konvertieren: | ext? nach btrfs konvertieren: | ||
man btrfs-convert | man btrfs-convert | ||
+ | |||
+ | oder besser: | ||
Dateisystem anlegen und mounten: | Dateisystem anlegen und mounten: | ||
mkfs.btrfs /dev/sda2 | mkfs.btrfs /dev/sda2 | ||
+ | btrfs filesystem show | ||
mkdir /mnt/btrfs | mkdir /mnt/btrfs | ||
mount /dev/sda2 /mnt/btrfs | mount /dev/sda2 /mnt/btrfs | ||
- | time cp -a /usr/share/ /mnt/btrfs | ||
cd /mnt/btrfs | cd /mnt/btrfs | ||
- | | + | |
- | Informationen über das Dateisystem anzeigen: | + | Beispieldaten hinein kopieren: |
+ | time cp -a /usr/share/ . | ||
+ | |||
+ | ===== Daten komprimieren ===== | ||
+ | Daten komprimieren: (( https://github.com/systemd/systemd/issues/9112 )) | ||
+ | btrfs filesystem df -h . | ||
+ | -> ''Data, single: total=2.01GiB, used=1.53GiB'' | ||
+ | btrfs filesystem defragment -czstd -r share/ | ||
+ | btrfs filesystem df -h . | ||
+ | -> ''Data, single: total=3.01GiB, used=740.17MiB'' | ||
+ | btrfs filesystem usage . | ||
+ | ===== Subvolumes ===== | ||
+ | Informationen über das top-level Subvolume anzeigen: | ||
btrfs subvolume show . | btrfs subvolume show . | ||
- | -> Subvolume ID: 5 | + | -> ''Subvolume ID'': 5 |
btrfs subvolume list . | btrfs subvolume list . | ||
Zeile 22: | Zeile 43: | ||
btrfs subvolume list . | btrfs subvolume list . | ||
btrfs subvolume show subvol1 | btrfs subvolume show subvol1 | ||
- | -> Subvolume ID: 256 | + | -> ''Subvolume ID'': 256 |
- | -> Parent ID: 5 | + | -> ''Parent ID'': 5 |
time mv ./share/ ./subvol1/ | time mv ./share/ ./subvol1/ | ||
| | ||
Zeile 33: | Zeile 54: | ||
mount -o subvol=/subvol2 /dev/sda2 /mnt/subvol2 | mount -o subvol=/subvol2 /dev/sda2 /mnt/subvol2 | ||
+ | ===== Snapshots ===== | ||
Snapshot erstellen: | Snapshot erstellen: | ||
time btrfs subvolume snapshot subvol2 snap1 | time btrfs subvolume snapshot subvol2 snap1 | ||
Zeile 51: | Zeile 73: | ||
btrfs filesystem du -s --human-readable snap1 | btrfs filesystem du -s --human-readable snap1 | ||
+ | ===== Subvolume zum default-Volume machen ===== | ||
+ | cd /mnt/btrfs | ||
+ | Snapshot des root-Volumes erstellen: | ||
+ | btrfs subvolume snapshot . 2025011300 | ||
+ | Daten (nicht Subvolumes!) aus root-Volume löschen: | ||
+ | ls 2025011300 | xargs echo rm -rf | ||
+ | -> prüfen, das da keine Verzeichnisse mit verschachtelten Subvolumes enthalten sind | ||
+ | ls 2025011300 | xargs rm -rf | ||
+ | btrfs subvolume show 2025011300 | ||
+ | -> ''Subvolume ID'' kopieren, z.B. 258 | ||
+ | btrfs subvolume set-default 256 2025011300/ | ||
+ | |||
+ | testen: | ||
+ | ls | ||
+ | cd .. | ||
+ | umount btrfs | ||
+ | mount btrfs | ||
+ | ls btrfs | ||
+ | |||
+ | ===== Subvolume mounten ===== | ||
+ | mkdir /mnt/subvol | ||
+ | mount -o subvolid=5 /dev/sda2 /mnt/subvol | ||
+ | |||
+ | ===== Datenträger tauschen ===== | ||
+ | btrfs device usage . | ||
+ | btrfs device add /dev/sda6 . | ||
+ | btrfs device usage . | ||
+ | btrfs device add /dev/sda2 . | ||
+ | btrfs device usage . | ||
+ | |||
+ | ===== SuSE ===== | ||
++++ SuSE default root layout | | ++++ SuSE default root layout | | ||
SuSE default: | SuSE default: |