Portál AbcLinuxu, 7. května 2025 10:00
Řešení dotazu:
Btrfs používám od roku 2010 a není to žádný pokus, je to prostě normální filesystém jako každý jiný, jen s vestavěným RAIDem a s checksumy. ZFS funguje skvěle na Illumosu, ale na Linuxu mu Btrfs natrhne prdel co do výkonnosti.
FUD ohledně (údajné, smyšlené, před lety odstraněné) nespolehlivosti nějakého filesystému k řešení problému tazatele příliš nepřispívá.
Děje se jen to, co obvykle dělá Linux při problémech s diskem — nekonečné resetování disku a snaha vadné sektory přečíst. To postihuje všechny filesystémy bez rozdílu. Jednou dojde na timeout, ale obvykle to trvá dlouho.
# btrfs scrub start /mnt/btrfs_rootPo jeho skončení se podíváme do /var/log/messages, kde uvidíme mimo jihého i hlášky typu:
Nov 23 09:04:57 micro kernel: btrfs: i/o error at logical 3280823517184 on dev /dev/sdc1, sector 782226816, root 256, inode 260, offset 9871937536, length 4096, links 1 (path: web/virtual_web_server.img)Tyto hlášky si vyfiltrujeme, ořízneme a získáme seznam všech postižených souborů. Pokud bychom potřebovali některý soubor alespoň zčásti zachránit, použijeme:
# dd if=/mnt/btrfs-root/virtuals/web/virtual_web_server.img of=/mnt/test-disk/backup/virtuals/web/virtual_web_server.img bs=4096 ibs=4096 conv=noerror,syncKde bs a ibs nastavíme podle hodnoty parametru "length" z logu. Po zkopírování všechny postižené soubory smažeme. Následně již můžeme disk vyřadit z btrfs pomocí:
# btrfs device delete /dev/sdc1 /mnt/btrfs_root, které proběhne již v pořádku. Výsledek je - zachránili jsme všechna nepoškozená data, filesystém se nerozpadl a reklamační si může užít chybující disk :). Předpokladem samozřejmě je, že metadata jsou v pořádku (nejlépe použít RAID1, aby byla vždy duplikována), viz:
# btrfs fi df /mnt/btrfs-root/ Data: total=4.97TB, used=3.98TB System, RAID1: total=32.00MB, used=596.00KB System: total=4.00MB, used=0.00 Metadata, RAID1: total=144.48GB, used=366.00MB
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.