Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 160 (pdf).
Izrael od února zakáže dětem používat v prostorách základních škol mobilní telefony. Podle agentury AFP to uvedlo izraelské ministerstvo školství, které zdůraznilo negativní dopady, které na žactvo používání telefonů má. Izrael se tímto krokem přidává k rostoucímu počtu zemí, které dětem ve vzdělávacích zařízeních přístup k telefonům omezují.
Internetová společnost Google ze skupiny Alphabet pravděpodobně dostane příští rok pokutu od Evropské komise za nedostatečné dodržování pravidel proti upřednostňování vlastních služeb a produktů ve výsledcích vyhledávání. V březnu EK obvinila Google, že ve výsledcích vyhledávání upřednostňuje na úkor konkurence vlastní služby, například Google Shopping, Google Hotels a Google Flights. Případ staví Google proti specializovaným
… více »Byl oznámen program a spuštěna registrace na konferenci Prague PostgreSQL Developer Day 2026. Konference se koná 27. a 28. ledna a bude mít tři tracky s 18 přednáškami a jeden den workshopů.
Na webu československého síťařského setkání CSNOG 2026 je vyvěšený program, registrace a další informace k akci. CSNOG 2026 se uskuteční 21. a 22. ledna příštího roku a bude se i tentokrát konat ve Zlíně. Přednášky, kterých bude více než 30, budou opět rozdělené do tří bloků - správa sítí, legislativa a regulace a akademické projekty. Počet míst je omezený, proto kdo má zájem, měl by se registrovat co nejdříve.
Máirín Duffy a Brian Smith v článku pro Fedora Magazine ukazují použití LLM pro diagnostiku systému (Fedora Linuxu) přes Model Context Protocol od firmy Anthropic. I ukázkové výstupy v samotném článku obsahují AI vygenerované nesmysly, např. doporučení přeinstalovat balíček pomocí správce balíčků APT z Debianu místo DNF nativního na Fedoře.
Projekt D7VK dospěl do verze 1.0. Jedná se o fork DXVK implementující překlad volání Direct3D 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.
Byla vydána nová verze 2025.4 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení na blogu.
Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) zveřejnil Národní politiku koordinovaného zveřejňování zranitelností (pdf), jejímž cílem je nejen zvyšování bezpečnosti produktů informačních a komunikačních technologií (ICT), ale také ochrana objevitelů zranitelností před negativními právními dopady. Součástí je rovněž vytvoření „koordinátora pro účely CVD“, jímž je podle nového zákona o kybernetické … více »
Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.12. Přehled novinek i s náhledy a videi v oficiálním oznámení.
- nas s 1 diskom - pridam druhy disk a skonvertujem na raid1 - sfailujem jeden z diskov a overim, ze su data ok - nahradim vadny disk novym a dam balancePodme na to...
truncate -s 8G disk1 truncate -s 8G disk2 losetup /dev/loop1 disk1 losetup /dev/loop2 disk2 mkfs.btrfs /dev/loop1 mkdir mnt mount /dev/loop1 mntStav po vytvoreni:
btrfs f show; btrfs f df mnt/
Label: none uuid: 68ef4445-cbf1-44d3-81c4-95d281f8a302
Total devices 1 FS bytes used 192.00KiB
devid 1 size 8.00GiB used 855.12MiB path /dev/loop1
Btrfs v3.17
Data, single: total=8.00MiB, used=64.00KiB
System, DUP: total=8.00MiB, used=16.00KiB
System, single: total=4.00MiB, used=0.00B
Metadata, DUP: total=409.56MiB, used=112.00KiB
Metadata, single: total=8.00MiB, used=0.00B
Zapisem nejaky bordel (~7GB) ...
for i in `seq 1 60`; do dd if=/dev/zero of=mnt/file$i bs=1M count=100; done
btrfs f show; btrfs f df mnt/
Label: none uuid: 72ecda87-023e-45d6-ae07-2a9aea1b93af
Total devices 1 FS bytes used 5.85GiB
devid 1 size 8.00GiB used 7.33GiB path /dev/loop1
Btrfs v3.17
Data, single: total=6.51GiB, used=5.84GiB
System, DUP: total=8.00MiB, used=16.00KiB
System, single: total=4.00MiB, used=0.00B
Metadata, DUP: total=409.56MiB, used=6.77MiB
Metadata, single: total=8.00MiB, used=0.00B
Fajn, pridam dalsi disk a spravim z toho raid-1 ...
btrfs d add /dev/loop2 mnt/
btrfs f show; btrfs f df mnt/
Label: none uuid: 72ecda87-023e-45d6-ae07-2a9aea1b93af
Total devices 2 FS bytes used 5.87GiB
devid 1 size 8.00GiB used 7.33GiB path /dev/loop1
devid 2 size 8.00GiB used 0.00B path /dev/loop2
Btrfs v3.17
Data, single: total=6.51GiB, used=5.86GiB
System, DUP: total=8.00MiB, used=16.00KiB
System, single: total=4.00MiB, used=0.00B
Metadata, DUP: total=409.56MiB, used=6.78MiB
Metadata, single: total=8.00MiB, used=0.00B
... a ide sa na to ...
btrfs balance start -dconvert=raid1 -mconvert=raid1 mnt/ ERROR: error during balancing 'mnt/' - No space left on device There may be more info in syslog - try dmesg | tailWOW! WTF ?!!
Ok, tak znovu a s prazdnejsim diskom. Vsetko zmazat, vsetko znovu vytvorit a ...
for i in `seq 1 45`; do dd if=/dev/zero of=mnt/file$i bs=1M count=100; done
btrfs d add /dev/loop2 mnt/
btrfs f show; btrfs f df mnt/
Label: none uuid: bc2b1521-d8af-4b9e-ae3a-bfaa112dbb78
Total devices 2 FS bytes used 4.40GiB
devid 1 size 8.00GiB used 5.71GiB path /dev/loop1
devid 2 size 8.00GiB used 0.00B path /dev/loop2
Btrfs v3.17
Data, single: total=4.88GiB, used=4.40GiB
System, DUP: total=8.00MiB, used=16.00KiB
System, single: total=4.00MiB, used=0.00B
Metadata, DUP: total=409.56MiB, used=5.11MiB
Metadata, single: total=8.00MiB, used=0.00B
btrfs balance start -dconvert=raid1 -mconvert=raid1 mnt/
Done, had to relocate 11 out of 11 chunks
btrfs f show; btrfs f df mnt/
Label: none uuid: bc2b1521-d8af-4b9e-ae3a-bfaa112dbb78
Total devices 2 FS bytes used 4.40GiB
devid 1 size 8.00GiB used 6.33GiB path /dev/loop1
devid 2 size 8.00GiB used 6.33GiB path /dev/loop2
Btrfs v3.17
Data, RAID1: total=6.05GiB, used=4.40GiB
System, RAID1: total=32.00MiB, used=16.00KiB
Metadata, RAID1: total=256.00MiB, used=4.66MiB
Takze konverzia zo single na raid1 nic moc ... Skutocne je nutne na zmirrorovanie dat z jedneho disku na druhy mat volnych ~50% disku? Ako to ten MD len robi clovece ... A je nutne, aby na disku, ktory ma 8GB a 4.4GB suborov bolo "used 6.33GiB"? Uznavam ze je mozne, ze takto velke percenta naskakali prave preto, ze disk je relativne maly, no testovat to s TB dat sa mi nechcelo.
No, podme zfailovat disk ...
umount mnt/
losetup -d /dev/loop2
mount -o degraded /dev/loop1 mnt/
btrfs f show; btrfs f df mnt/
Label: none uuid: bc2b1521-d8af-4b9e-ae3a-bfaa112dbb78
Total devices 2 FS bytes used 4.40GiB
devid 1 size 8.00GiB used 6.33GiB path /dev/loop1
devid 2 size 8.00GiB used 6.33GiB path /dev/loop2
warning, device 2 is missing
warning devid 2 not found already
Btrfs v3.17
Data, RAID1: total=6.05GiB, used=4.40GiB
System, RAID1: total=32.00MiB, used=16.00KiB
Metadata, RAID1: total=256.00MiB, used=4.66MiB
... a nahradime ho novym:
truncate -s 8G disk3
losetup /dev/loop3 disk3
btrfs d add /dev/loop3 mnt/
btrfs f show; btrfs f df mnt/
Label: none uuid: bc2b1521-d8af-4b9e-ae3a-bfaa112dbb78
Total devices 3 FS bytes used 4.40GiB
devid 1 size 8.00GiB used 6.33GiB path /dev/loop1
devid 2 size 8.00GiB used 6.33GiB path /dev/loop2
devid 3 size 8.00GiB used 0.00B path /dev/loop3
warning, device 2 is missing
warning devid 2 not found already
Btrfs v3.17
Data, RAID1: total=6.05GiB, used=4.40GiB
System, RAID1: total=32.00MiB, used=16.00KiB
Metadata, RAID1: total=256.00MiB, used=4.66MiB
... este vyhodit ten mrtvy ...
btrfs d del missing mnt/
Label: none uuid: bc2b1521-d8af-4b9e-ae3a-bfaa112dbb78
Total devices 2 FS bytes used 4.40GiB
devid 1 size 8.00GiB used 5.28GiB path /dev/loop1
devid 3 size 8.00GiB used 5.28GiB path /dev/loop3
Btrfs v3.17
Data, RAID1: total=5.00GiB, used=4.40GiB
System, RAID1: total=32.00MiB, used=16.00KiB
Metadata, RAID1: total=256.00MiB, used=4.66MiB
Zda sa, ze tu uz je vsetko OK.
No, nie som z toho moc odviazany pravdupovediac, takze nabuduce ZFS ...
Tiskni
Sdílej:
Skutocne je nutne na zmirrorovanie dat z jedneho disku na druhy mat volnych ~50% disku?
Není. Alokační grupa BTRFS je 1GB, to znamená, že pokud na tom disku bylo 7GB dat, tak už tam nemuselo být dostatek místa pro přesuny 1GB balíků dat.
BTRFS je stavěno na velký disky (tuhle facebook řešil rychlost mazání xTB souborů), zkoušet to na 8GB není ten nejlepší scénář.
Já mám 4+3TB disky v BTRFS raid1 a výměna disků a konverze (raid 1 - raid10) je no problémo. Při 80% zaplnění.
Mam raid-1 pole zo sda,sdb,sdc,sdd. Umre mi sdc, ale nemam ziaden dalsi volny sata port, takze musim vymenit sdc za nove sdc. Ide to?
Jde. Prostě vytáhneš vadný sdc, uděláš btrfs device delete missing (umount, mount -o degraded, delete ... - pokud už to někdo neopravil) a potom device add , balance a je to. Taky mám plný sata sloty a 3TB seagaty odcházej (zatím teda jen dva). Jen je blbý, že se to nedá udělat za běhu a musí tam být ten umount, mount -o degraded. (Alespoň na 3.16, na 4.2 jsem to zatím netestoval.)
Total devices 3 FS bytes used 2.00GiB
devid 1 size 8.00GiB used 1.28GiB path /dev/loop1
devid 2 size 8.00GiB used 2.28GiB path /dev/loop2
devid 3 size 8.00GiB used 3.00GiB path /dev/loop3
warning, device 2 is missing
warning devid 2 not found already
root@debian:~/tmp# btrfs d delete missing mnt/
... a zasek, nic sa nedeje, ziadna io aktivita, proste nic.
Ten výpis je nějaký divný. Píše dev 2 missing, ale dev 2 ve výpisu je.
Ráno se na to zkusím u ranní kávy mrknout, toto si obvykle zkouším ve virtuálce, s loopy jsem nikdy příliš nepracoval (jen readonly mount iso souboru). Teď jsem v rychlosti došel k tomuto:
losetup -d /dev/loop2 losetup -a /dev/loop1: [0209]:257 (/home/test/disk1) /dev/loop3: [0209]:259 (/home/test/disk3)
loop2 chybí, což je správně. Jenže:
mount /dev/loop1 /mnt/btest
Neprojde, což se dá očekávat. Potom:
mount /dev/loop1 /mnt/btest -o degraded btrfs fi show /mnt/btest Total devices 2 FS bytes used 2.93GiB devid 1 size 100.00GiB used 4.03GiB path /dev/loop1 devid 2 size 100.00GiB used 4.03GiB path /dev/loop2
Kde se tam vzala /dev/loop2?
Nevím, s loopy nepracuji, nevím, jak je vidí kernel. Userspace programy (fdisk) vidí loop1 (správně upozorní na btrfs signaturu), loop3 jako čisté blokové zařízení (ten jsem ještě nepoužil), ale na loop2 nemůže (správně) přistupovat. Kernel ovladač btrfs jej však vidí. Důvod neznám.
Toto se u reálného zařízení nestalo, to tam prostě bezpečně není. Takže to vyzkoušej když tak ve virtuálce (vypnout, odebrat zařízení, zapnout), tady se to evidentně hádá s loopem.
Total devices 3 FS bytes used 2.93GiB
devid 1 size 8.00GiB used 1.28GiB path /dev/sdb
devid 3 size 8.00GiB used 3.00GiB path /dev/sdd
*** Some devices missing
warning, device 2 is missing
b d delete missing mnt/... zasek, nic sa nedeje. Mam ten pocit, ze tomuto (zjavne stale experimentalnemu) fs svoje data nezverim, aj ked featury ma dost lakaju ...
Počáteční stav, tři disky na hraní:
/dev/sdb /dev/sdc /dev/sdd
Vytvoříme btrfs single
mkfs.btrfs /dev/sdb
mount /dev/sdb /mnt/test
Dáme tam pár dat:
for i in `seq 1 30`; do dd if=/dev/zero of=file$i bs=1M count=100; doneJak jsme na tom:
btrfs fi show
Label: none uuid: 01396906-eb6f-43d5-9b38-59bca8363b6e
Total devices 1 FS bytes used 2.84GiB
devid 1 size 100.00GiB used 5.04GiB path /dev/sdb
Přidáme disk a uděláme raid1:
btrfs device add /dev/sdc /mnt/test
Label: none uuid: 01396906-eb6f-43d5-9b38-59bca8363b6e
Total devices 2 FS bytes used 2.93GiB
devid 1 size 100.00GiB used 5.04GiB path /dev/sdb
devid 2 size 100.00GiB used 0.00B path /dev/sdc
btrfs balance start -mconvert=raid1 -dconvert=raid1 /mnt/test
Label: none uuid: 01396906-eb6f-43d5-9b38-59bca8363b6e
Total devices 2 FS bytes used 2.93GiB
devid 1 size 100.00GiB used 6.03GiB path /dev/sdb
devid 2 size 100.00GiB used 6.03GiB path /dev/sdc
Potud vše ok. Vyrveme disk sdc, původní sdd se nám přečísluje na sdc:
ls /dev/sd* /dev/sdb /dev/sdc
Zkusíme to namountovat:
mount /dev/sdb /mnt/test
mount: wrong fs type, bad option, bad superblock on /dev/sdb,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so.
Nejde, máme málo disků, takže degraded:
root@debian:~# mount /dev/sdb /mnt/test -o degraded
Label: none uuid: 01396906-eb6f-43d5-9b38-59bca8363b6e
Total devices 2 FS bytes used 2.93GiB
devid 1 size 100.00GiB used 6.03GiB path /dev/sdb
*** Some devices missing
Správně, nějaké zařízení chybí. Takže odstraníme missing:
btrfs device delete missing /mnt/test ERROR: error removing the device 'missing' - unable to go below two devices on raid1
Správně nejde, nemáme disky na požadovaný raid level. Strčíme tam nový disk:
btrfs device add /dev/sdc /mnt/test
btrfs device delete missing /mnt/test
Label: none uuid: 01396906-eb6f-43d5-9b38-59bca8363b6e
Total devices 2 FS bytes used 2.93GiB
devid 1 size 100.00GiB used 4.03GiB path /dev/sdb
devid 3 size 100.00GiB used 4.03GiB path /dev/sdc
Přemountíme do normálního režimu:
umount /mnt/test mount /dev/sdb /mnt/test
A vše je ok:
Label: none uuid: 01396906-eb6f-43d5-9b38-59bca8363b6e
Total devices 2 FS bytes used 2.93GiB
devid 1 size 100.00GiB used 4.03GiB path /dev/sdb
devid 3 size 100.00GiB used 4.03GiB path /dev/sdc
).
Tím chci říct, že v případě nestandardní situace není třeba panikařit a hned sahat po záloze. Ze spousty situací se lze jednoduše dostat.
Trochu mi to připomíná postgresql před zavedením autovacuum (a to není zase tak dlouho), kde se vacuum (full) analyze volalo z cronu, a když nevolalo, tak db postupně vyplnila veškerý pozorovatelný vesmír. Dneska už to nikdo neřeší, autovacuum běží by default. Stejně tak časem jistě bude proces pro uvolňování prázdných bloků v btrfs.
Jak se btrfs staví k situaci, kdy z disku nejde přečíst sektor (a disk jej, dokud do něj nezapíšeš, nepřealokuje)?Teoreticky by měl data přečíst z jiného disku. Bohužel, desktoptové disky čtou tak dlouho až přečtou a s tím btrfs nic neudělá. Jak správně píšeš, raid disky mají TLER a chybu vrátí rozumně rychle.
Nevím, já mám btrfs 5+ let, začínal jsem kdysi na 2.6.18 CentOS5Tak to jsi dobrej střelec :). Já jsem se odvážil teprve nedávno a zatím dobré, jenom když to něco dělá (třeba teď ten balance), tak jsou v IO na systému několikasekundové lagy (např. :w ve vimu zřetelně trvá, i když edituju soubor na jiné partition stejného disku). To se při resyncu MD nedělo. WTF moment byl, když jsem zjistil, že mi -o compress=zlib nekomprimuje accesslogy. Nechápu. S compress-force to funguje.
Tak to jsi dobrej střelec :).Tento článek je z roku 2011, pochopitelně jsem s tím začal před psaním. Trochu mě mrzí, že se tady na abíčku vytratila paměť a lidi (i stálice na portálu) k sobě vzájemně přistupují jako tabula rasa. Ale tak zapomenout může každý. Taky zapomínám.
A je nutne, aby na disku, ktory ma 8GB a 4.4GB suborov bolo "used 6.33GiB"?To není used ve smysl zabraného místa soubory, ale velikost fs na daném blokovém zařízení. Když pustíš
balance -dusage=0, tak projde "prázdné" bloky a toto číslo se sníží. Po nějaké době provozu bude ve výpisu fi show used stejně velký jako je blokové zařízení pod ním. Opět, pomocí balance, nebo třeba resize (btrfs umí za běhu zmenšit použité místo na daném blokovém zařízení a toto zařízení můžeš potom zmenšit (třeba lvreduce, pokud je to nad lvm)), můžeš toto číslo snížit. Ale není k tomu důvod.