Btrfs ztratilo část volného místa

Re:Btrfs ztratilo část volného místa
« Odpověď #30 kdy: 07. 06. 2016, 12:10:04 »
tak zmatena cisla dela jenom stary kernel, ne? ja bych btrfs radeji provozoval na 4.6 nez na kernelu rady 3...

Kód: [Vybrat]
root@web6:~# uname -a
Linux web6 4.6.0-040600rc7-generic #201605081830 SMP Sun May 8 22:32:57 UTC 2016 x86_64 GNU/Linux
root@web6:~# btrfs subvolume list /
ID 283 gen 303818 top level 5 path @
ID 285 gen 18548 top level 283 path .snapshots/manual-2016-04-14-1623-very_clear_system
ID 286 gen 18549 top level 283 path .snapshots/manual-2016-04-15-1717-installed_and_configured
ID 287 gen 18550 top level 283 path .snapshots/manual-2016-04-19-0206-first_websites_incl_webman
ID 308 gen 303619 top level 283 path .snapshots/manual-2016-05-20-00-50-all_ok
ID 309 gen 303619 top level 283 path .snapshots/manual-2016-05-31-1725-all_ok
root@web6:~# btrfs qgroup show /
qgroupid rfer                 excl
-------- ----                 ----
0/5      16384                18446744073649876992
0/259    1193369600           0
0/260    1463951360           0
0/272    0                    0
0/273    12769861632          10737438720
0/274    18446744065036468224 0
0/275    18446744065125613568 18446744073709539328
0/276    18446744065125924864 18446744073709543424
0/277    18446744065128497152 18446744073709539328
0/278    18446744066230890496 0
0/279    18446744066230161408 18446744073709539328
0/280    18446744066221613056 0
0/281    18446744066252259328 18446744073569497088
0/282    18446744066447921152 0
0/283    3836088320           1323204608
0/284    18446744066164314112 18446744073709408256
0/285    1193598976           176877568
0/286    1464197120           180932608
0/287    2064633856           316268544
0/288    18446744065077616640 18446744073708093440
0/289    18446744065090887680 18446744073708716032
0/290    18446744065051447296 18446744073684271104
0/291    18446744066179928064 18446744073707323392
0/292    18446744066049306624 18446744073692155904
0/293    18446744066344050688 18446744073707667456
0/294    18446744066315300864 210194432
0/295    18446744066311512064 18446744073709023232
0/296    18446744066059468800 21733376
0/297    0                    0
0/301    3958255616           233730048
0/302    4273758208           346615808
0/303    3581575168           751820800
0/304    2835787776           94531584
0/305    18446744070282821632 0
0/308    3289006080           958746624
0/309    3950317568           1336872960

navic na zacatku jsi mel metadata jak DUP tak single, to neni asi dobre

vono myslim mkfs.btrfs detekuje SSD, nebo HDD a na SSD dela system/metadata single a na HDD DUP, toto jako by bylo v polovine convertu nebo co

asi bych udelal, nebo mkfst.btrfs znova

Kód: [Vybrat]
btrfs balance start -mconvert=single /

Ok, díky, zkusím.


Sten

Re:Btrfs ztratilo část volného místa
« Odpověď #31 kdy: 07. 06. 2016, 12:57:50 »
U toho bezproblémového užívání po tři roky bych uvítal zmínku o distribuci a kernelu v průběhu těchto tří let. Díky.

Debian 7. Jádro je 3.16 (plus debianní bezpečnostní backporty), v záznamech jsem jej našel i před dvěma lety, jestli tam bylo od počátku, to už nevím (ale při pohledu do debianního seznamu balíčků tam pravděpodobně bylo 3.12).

Už to asi chápu. Klasické df do "Used" z nějakého důvodu nezapočítává duplikovaná metadata, která u mne dle "btrfs fi df" zabírají 940 MB:

Ona je otázka, co by to Used mělo vlastně znamenat. Ve starších jádrech btrfs uvádí, kolik dat tam skutečně je, tedy kolik bude potřeba uložit při archivaci pomocí btrfs-send. V novějších jádrech to uvádí, kolik dat to zabírá na úložišti.

Re:Btrfs ztratilo část volného místa
« Odpověď #32 kdy: 08. 06. 2016, 13:01:47 »
Pro info: Zkusil jsem "btrfs balance" s různými parametry. První dvě varianty po chvíli napsaly "No space left on device", kdežto poslední se dokončila bez problémů:

Kód: [Vybrat]
time btrfs balance start / ; btrfs balance start -dusage=100 / ;  btrfs balance start -dusage=99 /

Také jsem před tím Metadata zesinglil, což by prakticky nemělo vadit, jelikož se jedná o SSD VPS, snad leda v případě zálohování binární kopií na klasický mechanický disk:

Kód: [Vybrat]
btrfs balance start -mconvert=single -v -f /

A výsledek?

Kód: [Vybrat]
root@web6:~# btrfs fi df /
Data, single: total=10.00GiB, used=9.07GiB
System, single: total=32.00MiB, used=16.00KiB
Metadata, single: total=1.25GiB, used=754.52MiB
GlobalReserve, single: total=224.00MiB, used=0.00B
root@web6:~# df /
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/vda1       13619200 10509080   2767944  80% /

13619200 = 10509080 + 2767944 + "zmizelých" 342176 kB (dříve 998336 kB)

Ok, df nevěřit. V tom případě je důležitější jiný údaj z toho řádku, na který imho aplikace a systém hledí při zápisu do souborů: Available: 2767944 kB

Výše zmíněné Btrfs příkazy pomohly. Bohužel nevím jak moc přesně, protože jsem před balance a mconvert=single něco ručně smazal, ale smazal jsem rozhodně méně než uvolněných více než 2 GB. Brzy ještě zkusím zda "btrfs check" stále píše chybu.

Každopádně teď už vím co v takové situaci příště dělat. Děkuji všem moc za rady.

Trubicoid2

Re:Btrfs ztratilo část volného místa
« Odpověď #33 kdy: 09. 06. 2016, 07:24:59 »
Ještě máš moc metadat, ve výpisu btrfs fi df total proti used, tak pusť ještě -musage=99

100 by to jako parametr ani nemělo brát myslím

Trubicoid2

Re:Btrfs ztratilo část volného místa
« Odpověď #34 kdy: 09. 06. 2016, 08:11:32 »
Pěkný článek o SMR, kde je vysvětleno, proč se to tak chová http://diit.cz/clanek/recenze-8tb-seagate-archive


Re:Btrfs ztratilo část volného místa
« Odpověď #35 kdy: 09. 06. 2016, 22:30:01 »
Tak se objevil ještě jeden problém, který může s tím vším souviset.

Po tom opakovaném spouštění "btrfs mconvert" a "btrfs balance" s různými parametry jsem si řekl, že na závěr vytvořím read-only snapshot. Jenže ouha:

Kód: [Vybrat]
root@web6:/# btrfs subvolume snapshot -r /.snapshots/manual-2016-06-09-2136-all_ok /
ERROR: error accessing '/.snapshots/manual-2016-06-09-2136-all_ok'

Tušíte někdo jak to vyřešit? Z dob před řešením volného místa mám vytvořené a dostupné 4 snapshoty, ale nový prostě nevytvořím, i když používám stejný způsob. Chybu "error accessing" znám v souvislosti s pokusem o smazání snapshotu vytvořeného utilitou apt-btrfs-snapshot, kterou jsem myslím dříve používal, ale tu jsem jednak odinstaloval a pak se nyní jedná o vytvoření a ne smazání snapshotu.

Volné místo by být mělo, navíc by ho nemělo být moc potřeba:

Kód: [Vybrat]
root@web6:/# btrfs fi df /
Data, single: total=9.00GiB, used=8.73GiB
System, single: total=64.00MiB, used=16.00KiB
Metadata, single: total=1.50GiB, used=759.33MiB
GlobalReserve, single: total=224.00MiB, used=2.59MiB
root@web6:/# df -h /
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        13G  9.7G  2.7G  79% /

Lol Phirae

Re:Btrfs ztratilo část volného místa
« Odpověď #36 kdy: 09. 06. 2016, 23:43:11 »
Asi mi něco uniká, ale co má ksakru za smysl v dnešní době řešit 200MB místa na disku za cenu totálního rozmrdání filesystému (jehož defaultní nastavení jsou asi defaultní proto, že to dává nějaký smysl)?

 ::) ::) ::)

Re:Btrfs ztratilo část volného místa
« Odpověď #37 kdy: 10. 06. 2016, 00:10:55 »
Asi mi něco uniká, ale co má ksakru za smysl v dnešní době řešit 200MB místa na disku za cenu totálního rozmrdání filesystému (jehož defaultní nastavení jsou asi defaultní proto, že to dává nějaký smysl)?

 ::) ::) ::)

Odpovím citáty:

Chtěl bych začít používat Btrfs všude kde mám nyní ext4, včetně ještě letos plánovaného datového RAID úložiště na více než 10 TB dat. Proto bych se rád naučil tento problém vyřešit jiným způsobem než zkopírovat data jinam, pak Btrfs partitionu znova vytvořit a na konec vrátit data zpět. U jedné VPS s 11 GB to problém není, ale však chápete.

Předem děkuji za jakékoliv konstruktivní rady.

navic na zacatku jsi mel metadata jak DUP tak single, to neni asi dobre

Re:Btrfs ztratilo část volného místa
« Odpověď #38 kdy: 10. 06. 2016, 14:14:55 »
Jenže ouha:

Kód: [Vybrat]
root@web6:/# btrfs subvolume snapshot -r /.snapshots/manual-2016-06-09-2136-all_ok /
ERROR: error accessing '/.snapshots/manual-2016-06-09-2136-all_ok'

Jsem už z toho všeho nějak zmatený, moje chyba.

Tímto se omlouvám čtenářům a s radostí i souborovému systému Btrfs a děkuji za pomoc s vyřešením problémů. Najdete níže rozdíl v parametrech oproti kódu v citátu výše? ;-)

Kód: [Vybrat]
root@web6:/# btrfs subvolume snapshot -r / /.snapshots/manual-2016-06-09-2136-all_ok
Create a readonly snapshot of '/' in '/.snapshots/manual-2016-06-09-2136-all_ok'

e3k

Re:Btrfs ztratilo část volného místa
« Odpověď #39 kdy: 10. 06. 2016, 22:02:23 »
ked som sa este venoval btfrs tak pisali na tych internetoch ze iba btrfs samotne rozumie tomu kolko miesta vlastne ma:
Kód: [Vybrat]
$ sudo btrfs fi show
Label: none  uuid: 12345678-1234-5678-1234-1234567890ab
Total devices 2 FS bytes used 304.48GB
devid    1 size 427.24GB used 197.01GB path /dev/sda1
devid    2 size 465.76GB used 197.01GB path /dev/sdc1

https://btrfs.wiki.kernel.org/index.php/FAQ#How_much_free_space_do_I_have.3F