Začal semestr, začal i podzim a kromě hub rostou jako po dešti i veřejné dílny v Praze. Nedávno strahováci referovali o hackerspacu Bordel, nyní se otevřela dílna Dejvice Lab jen kousek od ČVUT. Na blížící Virtuální Bastlírně tak uslyšíte nejen report z návštěvy dílny HWLab, ale i řadu novinek, událostí a úsměvných momentů, které se za poslední měsíc ve světě techniky, ale i vědy udály. Připojte se tedy již v úterý 13.10. od 20:00 a zapojte se do
… více »Byl vydán LineageOS 24 (Mastodon). LineageOS (Wikipedie) je svobodný operační systém pro chytré telefony, tablety a set-top boxy založený na Androidu. Jedná se o nástupce CyanogenModu. LineageOS 24 je založený na Androidu 17.
Společnost Valve publikovala na svém GitLabu nákresy a schémata zapojení headsetu Steam Frame. Pro nekomerční účely.
Soutěž Pwn2Own Ireland 2026 skončila 9. října. Bezpečnostní výzkumníci získali celkem 1 262 000 dolarů na odměnách. Během soutěže bylo předvedeno zneužití 98 zero-day zranitelností. Testování zahrnovalo různé kategorie zařízení a software. Výzkumníci předváděli prakticky fungující útoky podle pravidel soutěže. Výsledky následně slouží výrobcům při přípravě oprav. Mezi pokořenými jsou: Samsung Galaxy S26, OpenAI Codex, Oracle Autonomous AI Database, Google Pixel 10, u iPhone 17 neuspěli.
Programovací jazyk Python byl vydán v nové verzi 3.15.0. Podrobný přehled novinek v aktualizované dokumentaci.
BIGWORDS.PAGE je open-source webová aplikace, která po otevření odkazu v prohlížeči vykreslí přes celou obrazovku jednoduché informační sdělení. Zpráva i její nastavení jsou uložené v části URL za znakem #, například odkaz https://bigwords.page/#abclinuxu zobrazí jako velký bílý nápis 'abclinuxu' na černém pozadí. Obsah odkazu lze upravovat i vestavěným editorem, ten umožňuje nastavovat formátování a vizuální efekty textu, časovače, QR kódy a obrázky. Zdrojový kód je dostupný pod licencí MIT na GitHubu.
V neděli 11. října proběhne rotace klíče kořenové zóny. Podruhé v historii. Ondřej Filip na blogu CZ.NIC: "Pokud je pro Vás DNS protokol spíše výzva, ale přesto spravujete nějakou síť či DNS resolver, zkuste si jednoduchý test, který připravila firma Cloudflare na této adrese. Obzvláště zbystřit byste měli, pokud uvidíte nějaká červená políčka."
Vláda Spojených států se rozhodla vyřadit americkou softwarovou společnost Microsoft a několik dalších velkých technologických podniků z programu, který umožňuje kvalifikovaným zahraničním pracovníkům získat povolení k trvalému pobytu. Oznámila to včera administrativa amerického prezidenta Donalda Trumpa. Opatření zdůvodnila rozsáhlým zneužíváním programu, který je dlouhodobě terčem kritiky ze strany Trumpových příznivců, neboť prý znevýhodňuje americké pracovníky.
Datové centrum největší ruské technologické společnosti Jandex v Rjazaňské oblasti se stalo cílem dronového útoku a zastavilo provoz. Jandexu se někdy přezdívá „ruský Google“. Provozuje nejoblíbenější internetový vyhledávač v Rusku nebo aplikace pro objednávky jídla a taxi. Využívají jej desítky milionů lidí v rusky mluvících zemích.
Francouzská společnost Mistral AI představila Mistral Large 4 (interně přezdívaný 'le Chonk', volně přeloženo 'pořádný macek'), 'open-weight multimodální hybridní instruct-and-reasoning model s architekturou granulárního MoE, nativně podporující více jak 160 jazyků'. Model má přes jeden bilión parametrů, z nichž při práci využívá 49 miliard, kontextové okno o délce milion tokenů a obrazový enkodér o 1,6 miliardách parametrů.
… více »Souborový systém je způsob organizace dat na záznamovém médiu. Zahrnuje jednak způsob fyzického uložení dat a také poskytuje vysokoúrovňový přístup k nim. Existují stovky různých systémů. Počínaje klasickými diskovými, jako je primitivní FAT nebo transakční a žurnálovací ext3. Dále sem patří síťové souborové systémy, jako například NFS nebo Coda. Existují i databázové, jakým je BFS (BeOS FS). V Unixu a v Linuxu zvlášť je také silná tradice používání pseudo filesystémů, jako procfs, relayfs nebo sysfs. No a také existuje řádka souborových systémů, které jsou velmi speciální.
Linux zdědil z Unixu skvělý mechanismus zvaný Virtual File System,
zkráceně VFS. Toto je aplikací jednoho ze základních unixových principů,
oddělit mechanismus od postupu. V praxi to znamená, že všechen kód je
soustředěn v příslušném modulu (například xfs.ko, který
implementuje abstraktní rozhraní VFS. Přidání nového podporovaného
souborového systému je snadné, stačí napsat nový modul.
Ovšem důsledkem je, že linuxové jádro samo o sobě neumí pracovat s
žádným souborovým systémem. Jenže při bootu se musí
připojit kořenový souborový systém, ale naše jádro nekodáže načíst z disku
potřebné moduly. Proto musíme do jádra podporu pro kořenový fs zakompilovat
natvrdo. Anebo použít initrd (initial ram disk), což je v
podstatě diskový oddíl, který se při startu připojí jako kořenový adresář a
který obsahuje potřebné moduly pro jádro. Jádro tedy musí umět pouze
filesystém ramdisku, což je ve většině případů ext2.
Poměrně horkou novinkou je FUSE, která je v hlavním jádře od verze 2.6.14 (v době psaní tohoto článku byla stabilní 2.6.1521). Tato zkratka znamená Filesystem in USErspace a jeho myšlenka pochází už z Plan9. Ve zkratce umožňuje uživatelským programům používat další, speciální souborové systémy. Mezi ně patří třeba GmailFS, který interně používá poštovní schránku na serveru gmail.google.com, BitTorrent File System, nebo SshFS. Zatím je dostupný pro linuxová jádra 2.4 a 2.6 a jako port pro jádra FreeBSD.
Dost bylo obecné teorie a přejděme zpět k tématu, kterým jsou LiveCD. V minulém díle (LiveCD - 1 (úvod, isolinux)) jsme se seznámili se souborovým systémem ISO 9660. Ten je ovšem pro unixový systém nepoužitelný. Především proto, že neobsahuje podporu pro POSIXová práva. Rozšíření RockRidge a ISO Layer 2 sice možnosti tohoto filesystému zvětšily, ale zůstává další problém: omezená velikost místa na disku. Plná instalace Slackware zabere 3GB, a to je distribuce obsahující velmi málo software (ve srovnání s distribucemi jako Debian, Gentoo nebo SUSE).
Naštěstí ve světě Linuxu existuje mnoho komprimovaných souborových systémů. Díky tomu můžeme do omezeného místa na CD-ROM dostat daleko více software, ovšem za cenu větší zátěže procesoru při běžném procházení.
Celé jméno je compressed ROM filesystem. Je součástí
jádra od verze 2.3 (respektive 2.4). Jak už napovídá název, jedná se o
komprimovaný read-only souborový systém. Některé konvenční distribuce
(například Debian) používají initrd právě v tomto formátu. Byl
využíván staršími verzemi Slax (3 a starší) nebo v embedded zařízeních
jako handheldy a podobně.
mkfs.cramfs source destination
Stejně jako mnoho dalších komprimovaných filesystémů používá knihovnu zlib. Bohužel trpí spoustou omezení:
Alias compressed loopback device není souborový systém,
ale modul, který poskytuje komprimované read-only loopback zařízení.
Vytvořil jej Paul Russell (autor ipchains a
iptables) pro distribuci Linuxcare, pro jádra 2.2. Mohou být
naformátovány libovolným souborovým systémem (podobně jako tradiční
loopback zařízení). Asi nejznámější distribucí, která tyto obrazy používá,
je Knoppix (a jeho deriváty). Samotný Klaus Knopper je správcem patchů pro
jádra 2.4 a 2.6, protože ve vanilla jádře tento modul není.
# vytvoreni obrazu mkisofs -r -l datadir | \ create compressed fs - 65536 > isoimg.z # pripojeni (linuxrc distribuce Knoppix) insmod cloop.o file=/cdrom/KNOPPIX/KNOPPIX mount -r /dev/cloop /mnt/knoppix
Data jsou komprimována po jednotlivých blocích (opět pomocí
zlib), typická velikost na LiveCD se pohybuje kolem 256kB.
Ovšem i cloop má svoje problémy:
create_compressed_fs, což je utilita, která vytváří obraz,
nepodporuje proudové zpracování. Celý komprimovaný obraz se musí vejít do
operační paměti.cloop je velmi pomalý při častých čtení, například
v systémech s malou operační pamětí (neustálé načítání a rozbalování
bloků) nebo při nahrávání programu s velkým množstvím sdílených
knihoven.Je klasický iso 9660 s podporou transparentní komprese a dekomprese (jak
jinak než pomocí knihovny zlib). V jádře se objevil ve verzi
2.4.14. O vytváření obrazů se stará balík nástrojů
zisofs-tools, které spravuje H. Peter Anvin, správce zavaděčů
syslinux a isolinux, s nimiž jsme se setkali už v
minulém díle. Tento
způsob komprese používala distribuce Slax ve verzi 4.x.
Použití programu mkzfree(1), kde input je
vstupní adresářová struktura a output je výstupní
komprimovaná struktura. Výsledek může být zpracován klasickými nástroji,
jako mkisofs, nebo growisofs.
mkzftree source destination
-z |
Stupeň komprese (1-9, výchozí 9) |
-u |
Rozbalit, užitečné v systémech, které nativně nepodporují zisofs |
-x |
Nepřistupovat na jiné oddíly, pouze vytvořit přípojné body |
-X |
Nepřistupovat na jiné oddíly a přípojné body nevytvářet. |
Toto je pouze patch ovladače souborového systému ext2, který přidává
podporu transparentní komprese na úrovni souborů. Do konfiguračního souboru
přidává volbu EXT2_COMPR_FL. Pro jeho použití není potřeba
daný oddíl znovu přeformátovat, protože dokáže zcela transparentně používat
jak komprimované, tak nekomprimované soubory. Ovšem jeho vlastnosti nejsou
ty nejlepší pro LiveCD a nenašel jsem žádné, které by používalo tento
souborový systém.
Phillip Lougher uvolnil v roce 2002 první verzi tohoto komprimovaného
filesystému, který odstraňuje nevýhody cramfs. První verze byla pro jádro 2.4.19;
bohužel až do teď nebyl tento souborový systém do vanilla jádra začleněn. Ale GregKH už před časem
zařadil patch do genpatches, což je patchset pro
gentoo-sources (výchozí jádro distribuce Gentoo).
V čem se tedy liší od cramfs?
Preferuje velikost bloku 32kB (od verze 2 64kB), která má mnohem lepší
kompresní poměr než 4kB. Jádro nativně podporuje 4kB bloky a tak tento
souborový systém dává zbytek dat explicitně do cache. Komprimuje i
informace z adresářů a inodů, které, opět pro větší kompresi, shlukuje
dohromady. Podporuje 32bitové uid/guid (cramfs má uid 16b a guid 8b),
velikost souboru je až 2^32B (cramfs 2^24). A v neposlední řadě podporuje
časové značky (timestamps).
Pro práci s tímto souborovým systémem je nutné mít program
mksquashfs z balíku squashfs-tools. Ten má
poněkud nezvyklou syntaxi:
mksquashfs source1 source2 ... dest [options] \ [-e list of exclude dirs/files]
Kde sourceX označují zdrojové adresáře, dest
je cílový soubor, options jsou volby a na konci je, uvozen
parametrem -e, seznam souborů adresářů, jež se mají
vynechat.
-all-root, nebo -root-owned |
všechny soubory v novém filesystému bude vlastnit uživatel root |
-be, nebo -le |
explicitně nastav velký (b), nebo malý (l) endián |
-ef <exclude_file> |
seznam souborů, adresářů, které nebudou v cílovém systému; jeden na každý řádek |
-noI, -noD, -noF |
nekomprimuj tabulku inodů (I), datové bloky (D), fragmentované bloky (F) |
V tomto díle jsme se seznámili s různými komprimovanými souborovými systémy pro LiveCD. Přestože jich je hezká řádka, tak v současnosti se používají především SquashFS a cloop. Právě ty umožňují, aby se na miniCD vešlo přes 500MB, což je případ Slax.
Tématem příštího dílu bude podpora pro zápis, a tudíž se bude točit hlavně kolem souborového systému UnionFS.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej: