[[oktatas:linux|< Linux]]
====== Btrfs ======
* **Szerző:** Sallai András
* Copyright (c) Sallai András, 2019
* [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]]
* Web: http://szit.hu
===== A Btrfs fájlrendszerről =====
A Btrfs a B-tree file system rövidítése. A Linux következő generációs fájlrendszerének szánták.
Fejlesztők:
* Facebook
* Fujitsu
* Fusion-IO
* Intel
* Linux Foundation
* Netgear
* Oracle Corporation
* Red Hat
* STRATO AG
* SUSE
A Btrfs képes az egész merevlemezt használni, azaz leváltható vele
a DOS vagy a GPT particionálási séma. Létrehozhatók vele RADI tömbök:
RAID 0, RAID 1, RAID 10, RAID 5 és RAID 6.
===== A fájlrendszer tulajdonságai =====
* Maximális kötetméret: 16 EiB
* Maximális fájlméret: 16 EiB
* Fájlok maximális napok száma: 2^64
* Maximális fájlnév hossz: 255 ASCII karakter
Tárolt dátumok:
* létrehozás -- otime
* módosítás -- mtime
* tulajdonság módosítás -- ctime
* elérés -- atime
===== Attribútumok =====
^ Kar ^ Leírás ^
| a | Csak hozzáfűzés. |
| A | Nem változik az elérésidő. |
| c | Adatömörítés. |
| C | Nincs CoW (Copy on Write; \\ Ha egy adategységet másolunk, nem történik módosítás, \\ akkor csak egy hivatkozás jön létre az eredeti adatokra, amíg nem módosul az új adat.) |
| d | Nincs dump (például dump, fájlrendszer backup) |
| D | Szinkronizált könyvtárfrissítés. \\Részletekért lásd a man 2 open O_SYNC és O_DSYNC részét. |
| i | Immutable fájl. A fájl módosítása nem lehetséges. |
| S | Szinktronizált frissítés. \\Részletekért lásd a man 2 open O_SYNC és O_DSYNC részét. |
| X | Nincs tömörítés |
===== Használat =====
A btrfs fájlrendszerhez a **btrfs-progs** csomagban találunk néhány eszközt.
apt install btrfs-progs
A sdb1 sávozása (formázása) BTRFS fájlrendszerre:
mkfs.btrfs /dev/sdb1
==== Címke ====
Címke megtekintése beállítása szintaxis:
btrfs filesystem label [|] [<új címke>]
A címkézéshez le kell csatolni a fájlrendszert. Például:
umount /mnt/a
A címke megtekintése:
btrfs filesystem label /dev/sdb1
Címke beállítása:
btrfs filesystem label /dev/sdb1 adatok
==== Átméretezés ====
Átméretezés szintaxis
btrfs filesystem resize [:][+/-][kKmMgGtTpPeE]|[:]max
Átméretezendő partíciónak csatolva kell lennie. Az átméretezés a partíció valód méretét nem változtatja,
csak a használható partíciót állíthatjuk be.
Az eredeti méretből vegyünk le 1G-t:
btrfs filesystem resize -1G /mnt/a
Az lsblk parancs az eredeti méretet mutatja.
lsblk
...
sdb 8:16 0 8G 0 disk
|-sdb1 8:17 0 4G 0 part /mnt/a
...
A df kimenetében viszont csak 3 GiB látszik:
df -h
...
/dev/sdb1 3,0G 17M 2,6G 1% /mnt/a
...
Az 1G visszaadható, ha "-" karakter helyett "+" karaktert írunk:
btrfs filesystem resize +1G /mnt/a
===== Források =====
* [[https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs(5)]]
* https://www.computerhope.com/jargon/c/copy-on-write.htm
* man btrfs (Debian 10)
* man btrfs-filesystem (Debian 10)