Byla vydána verze 1.96.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Společnosti IBM a Red Hat představily Project Lightwell s investicí 5 miliard dolarů. Jedná se o důvěryhodné clearingové centrum pro bezpečnost open source softwaru a zabezpečení dodavatelských řetězců s novým AI modelem a globální skupinou více než 20 000 softwarových inženýrů. Služby centra budou dostupné prostřednictvím komerčních předplatných. Project Lightwell staví na iniciativách jako Anthropic Glasswing nebo OpenAI Trust Access for Cyber.
Open source 3D herní a simulační engine Open 3D Engine (O3DE) byl vydán v nové verzi 26.05. Podrobný přehled novinek v poznámkách k vydání.
Český stát by v budoucnu mohl provozovat vlastní alternativu ke komunikačním aplikacím typu WhatsApp, Signal, Telegram, Facebook Messenger a podobně. Cílem je zajistit bezpečnou datovou komunikaci pro stát a jeho důležité subjekty, jako jsou bezpečnostní složky, ministerstva a další organizace.
Už za týden, ve čtvrtek 4. června, se v Národní technické knihovně v pražských Dejvicích uskuteční další konference věnovaná tématům spojeným s IPv6 - Den IPv6. Program akce a registrační formulář jsou k dispozici na webu akce. Kapacita konference je omezená, proto organizátoři doporučují, aby se vážní zájemci přihlásili včas (k dnešnímu dni zbývá přibližně 30 volných míst). Konferenci Den IPv6 2026 organizují i letos společně sdružení CESNET, CZ.NIC a NIX.CZ.
Zařízení Steam Deck OLED bylo znovu naskladněno, ale vlivem rostoucích cen pamětí a úložišť má novou, vyšší cenovku. Steam Deck OLED 512 GB stojí nově 779 EUR (stál 569 EUR) a Steam Deck OLED 1 TB stojí 919 EUR (stál 679 EUR). Samotné zařízení se nijak nezměnilo a nové ceny tedy pouze odráží aktuální náklady na komponenty a další globální logistické výzvy, se kterými se potýká celá branže.
Český telekomunikační úřad zahajuje novou etapu využívání vysokofrekvenčního rádiového spektra v pásmu 26 GHz. Toto pásmo bude od 1. 7. 2026 otevřeno pro provoz moderních bezdrátových sítí, zejména sítí páté generace (5G), pevných bezdrátových přístupových sítí (FWA) a lokálních či průmyslových sítí určených například pro výrobní areály, logistická centra nebo technologické kampusy. Současně s otevřením pásma 26 GHz přistoupil ČTÚ ke zpřístupnění informací o využívání rádiových kmitočtů v tomto pásmu.
Logitech představil myš Signature Comfort Plus M850 L s polstrovanou opěrkou dlaně pro větší pohodlí a sadu s touto myší a klávesnicí s integrovanou opěrkou dlaní Signature Comfort Plus Combo MK880.
Gaël Duval se rozepsal o novinkách a plánech Murena a /e/OS. Počet uživatelů telefonů Murena a mobilního operačního systému /e/OS bez aplikací a služeb od Googlu se blíží 100 000. Ambicí je, aby se /e/OS stal třetí mobilní platformou v Evropě i na světě, s potenciálem dostat se i na PC. Blíží se vydání nové verze 4 s funkcemi zálohování a obnova, import e-mailů z Gmailu a rozpoznávání hlasu. Murena Workspace přinese videohovory, elektronický podpis a správu zařízení (MDM).
Dnes a zítra probíhá Ubuntu Summit 26.04. Na programu je řada zajímavých přednášek. Sledovat je lze na YouTube. Úvodní slovo měli Mark Shuttleworth a Jon Seager.
V minulých dílech proběhly diskuse, zda termín volume by neměl být v článcích překládán jako svazek. Oslovil jsem tedy několik administrátorů i uživatelů AFS a všichni se shodli na anglickém volume. Český jazyk má oproti angličtině skloňování a použití neskloňovaného tvaru může při četbě působit rušivým dojmem, proto jej v textu navíc skloňuji. Dalším důvodem je, že většina dokumentace k AFS je v angličtině a český ekvivalent mi nepřišel tak zavedený jako anglický. Chtěl jsem se tím vyhnout případným nedorozuměním, na což je vhodnější opět anglický termín. Tento odstavec neznamená, že pojem svazek zavrhuji, ale technická dokumentace by měla být konzistentní a přitom zachovat dobrou čtivost, kterou nebudou narušovat hrubky, špatné skloňování nebo struktura textu. Berte to tak, že jako autor (ať to zní sebevíc despoticky) jsem se rozhodl pro termín volume, který hodlám dále používat.
Tak jako každý souborový systém, i tento má své limity. Maximální velikost
jednotlivých partition (/vicepX) může být 16 zettabytů (2^64 KB), u starších
verzí to bývaly 2 TB. Doporučovaná maximální velikost volumu a zároveň
největšího souboru v AFS je do 2 TB (2^41 bytů). Větší volumy lze vytvářet,
ale není to příliš praktické a mohou se vyskytnout drobné problémy, například
nemožnost nastavit kvótu. Název volumu je omezen na 22 znaků, ve skutečnosti
je to 32 znaků, ale 10 je vyhrazeno pro systémové přípony
(známe už .readonly nebo .backup).
Vývojáři OpenAFS připravují prodloužení názvu volumu.
Dalším limitem je počet souborů v jednom adresáři. Maximum je sice stanoveno na 64 tisíc, ale v praxi se doporučuje 16-24 tisíc v závislosti na délce názvů souborů.
AFS používá pro řízení přístupu Access Control List (ACL), které se aplikují na adresář (ve vývoji je možnost přiřadit ACL jednotlivým souborům). Na každý adresář lze aplikovat až 20 přístupových pravidel. Pokud potřebujete více, musíte si vytvořit skupinu. Toto omezení má významné pozitivum – nutí vás udržovat pořádek. V AFS, na rozdíl od unixových skupin, si může uživatel vytvořit a spravovat vlastní skupiny, což je jedna ze zajímavých vlastností.
Při tom všem nesmíte zapomínat na limity souborového systému na partitionách (/vicepX), doporučuje se souborový systém XFS či ZFS, ale je možné použít i jiné. Volnost pro výběr souborového systému platí pro servery, u klientů je výběr omezen a záleží na operačním systému klienta. Z vlastní zkušenosti doporučuji vyhnout se na produkčních serverech ReiserFS a Ext2/3, protože mají dlouho trvající kontroly konzistence a tím výrazně snižují dostupnost serveru.
Existují dva důležité volumy, které byste měli mít replikované.
Volume root.afs obsahuje přípojné body (mount pointy) pro
klienty. Tento volume je vstupním bodem do AFS stromu. Klient se může
rozhodnout, zda použije předpřipravený od administrátora, nebo jej bude
dynamicky vytvářet z informací v souboru CellServDB či speciálních záznamů
uvedených v DNS.
Druhý volume root.cell je kořenem vaší AFS buňky. Do tohoto
volumu připojujete další volumy a tak vytváříte adresářovou strukturu.
Pro oba volumy platí, že by neměly obsahovat vlastní data, ale pouze
mount pointy. Zároveň by měly být replikovány na co nejvíce serverů, protože
je budou používat všichni klienti.
Níže je příklad základní struktury AFS stromu. Inspiraci lze také nalézt v ostatních buňkách, ty se naučíme připojovat v příštím díle.
/
`-- afs # volume root.afs
`-- foo.bar # volume root.cell
|-- amd64_linux26 # volume sw.amd64_linux26
|-- common # volume common
|-- i386_linux26 # volume sw.i386_linux26
|-- public # volume public
`-- users # volume users
|-- l # adresář "l" ve volumu users
| |-- list # volume user.list
| `-- lojza # volume user.lojza
`-- m # adresář "m" ve volumu users
`-- moula # volume user.moula
První dva adresáře v AFS stromu nám zajišťují
volumy root.afs a root.cell.
V třetí úrovni je to už jen na vás. Nejčastěji zde naleznete adresáře
(mount pointy na volumy) s názvy:
commonetc.publicrl pro skupinu
system:anyuser, o právech a skupinách bude samostatný díl.usersusers/l/lojza
nebo users/l/lo/lojza. Důvodem je snížení počtu mount pointů ve
stejném adresáři a tím zkrácení doby čekání klienta na kompletní výpis
obsahu. Pro každého uživatele se předpokládá samostatný volume.@sys, více v dalších odstavcích.
Mount pointy jsou pojmenovanými odkazy na jiné volumy, které se na první
pohled tváří jako adresář. Je to podobné jako mount point, který vytvoříte
příkazem mount v Unixu – do daného adresáře se připojí souborový
systém, jen s tím rozdílem, že v AFS budeme takto propojovat volumy.
Ve skutečnosti existuje několik typů mount pointů, které se podle toho
také vytvářejí příkazem fs mkmount:
fs mkmount <dir> <volume> -rwfs lsmount bude uveden jako %volume
fs mkmount <dir> <volume>#volume.
Cache manager (klient) se snaží držet stejného typu volumu z jakého přistupujeme
k mount pointu. Pokud ale RO volume neexistuje, automaticky
použije RW volume. Jestliže se nacházíme v RW volumu,
pak nám nabídne opět RW volume. Z toho nám
vyplývá, že pro každou buňku existují dvě základní AFS větve: RW určená
spíše pro administrátory a RO pro uživatele.
fs mkmount <dir> <volume.readonly>volumentame.readonly.
fs mkmount <dir> <volume.backup>#volume.backup.
fs mkmount <dir> <volume> -cell <buňka>#zcu.cz:root.cell
Na příkladu cesty /afs/zcu.cz/software/i386_linux26/usr/lib
si ukážeme, jak to funguje. Cache manager (AFS klient) připojí AFS strom
do adresáře /afs a pro jeho obsah použije automaticky volume
root.afs ze své domovské buňky. Tento volume slouží výhradně
jako rozcestník pro jednotlivé AFS buňky, proto tedy pod názvem
zcu.cz je připojen volume root.cell s obsahem
podstromu vlastní buňky.
Na obrázku je také vidět odkazy do jiných AFS buňek, jako je
kiv.zcu.cz. Zajímavou vlastností AFS klienta je, že řetězec
@sys v cestě vždy nahradí definovanou hodnotou odvislou od
architektury klienta. Tuto hodnotu zjistíme příkazem
fs sysname a můžeme
ji také změnit. Výhodou je, že získáme pod jedinou cestou
/afs/zcu.cz/software/bin/ použitou ve skriptu
nebo proměnném prostředí přístup ke správné cestě pro danou architekturu.
Pokud je systémové jméno (sysname) nastaveno na amd64_linux26,
pak nás AFS klient odkáže do cesty /afs/zcu.cz/software/amd64_linux26/bin.
V případě jiné architektury bude cestu expandovat k jiným binárkám. Tato
vlastnost se používá u symbolických linků nebo ve skriptech.
Protože @sys je trochu nezvyklý, ukážeme si na příkladu,
jak na něj. Řekněme, že pro zlepšení vztahů na pracovišti jste připravili
uživatelům hru Quake v podobě OpenArena. Ale jako s každým binárním programem
je zde problém, jak uživatelům distribuovat na počítače správnou architekturu.
Podle obrázku výše, umístíte jednotlivé architektury do zvláštních adresářů.
Takže pro amd64 architekturu na jádře linuxu řady 2.6 soubory rozbalíme do
adm64_linux26, pro i386 obdobně do i386_linux26.
Do proměnného prostředí všech klientů, nezávisle na architektuře,
nám stačí přidat cestu:
PATH=$PATH:/afs/zcu.cz/software/bin/
AFS klient pak symbolický link bin -> @sys/bin
expanduje dle svého prostředí, pro 32bit architekturu to
bude bin -> i386_linux26/bin čímž se automaticky
dostává uživatel ke správné binárce.
Tuto vlastnost si můžete snadno vyzkoušet, ale musíte si vzpomenout na heslo z druhého dílu:
~$ kinit afsadmin@FOO.BAR Password for afsadmin@FOO.BAR: ~$ aklog ~$ cd /afs/foo.bar/ /afs/foo.bar$ mkdir i386_linux24 i386_linux26 amd64_linux26 /afs/foo.bar$ fs sysname Current sysname is 'amd64_linux26' /afs/foo.bar$ ln -s @sys arch /afs/foo.bar$ ls -l celkem 7 drwxr-xr-x 2 daemon svamberg 2048 27. bře 12.48 amd64_linux26 lrwxr-xr-x 1 daemon root 4 27. bře 12.49 arch -> @sys drwxr-xr-x 2 daemon svamberg 2048 27. bře 12.47 i386_linux24 drwxr-xr-x 2 daemon svamberg 2048 27. bře 12.47 i386_linux26 /afs/foo.bar$ touch @sys/touch_sys arch/touch_arch /afs/foo.bar$ find . . ./i386_linux24 ./i386_linux26 ./amd64_linux26 ./amd64_linux26/touch_sys ./amd64_linux26/touch_arch ./arch /afs/foo.bar$ rm -rf * ; cd ; unlog ; kdestroy
Jak je vidět, soubory touch_* se vytvořily pouze v adresáři
dle mé architektury, kterou byla amd64_linux26, přestože
jsem je v příkazu touch vůbec nepoužil a ani symbolický
link arch na žádný konkrétní neukazuje. Posledním sadou
příkazů po sobě uklidíme, a také si zrušíme všechna oprávnění, protože
to bude potřeba pro vysvětlení v další kapitole.
Pokud jste si podle druhého dílu zprovoznili AFS, můžete
si nyní vyzkoušet pár příkazů ve kterých zhodnotíme získané znalosti. Vaše
AFS buňka foo.bar by nyní měla být funkční, avšak nic v ní
nevidíte, přestože je připojená.
~$ df /afs Filesystem 1K-blocks Used Available Use% Mounted on AFS 9000000 0 9000000 0% /afs ~$ ls -la /afs ls: cannot open directory /afs: Permission denied
To je způsobené tím, že jsme při instalaci sice vytvořili kořenový volume
root.afs, ale nenastavili jsme žádná práva k němu, defaultně tedy
k němu mají přístup pouze administrátoři. Nepomůžou vám ani oprávnění uživatele
root:
~# id uid=0(root) gid=0(root) groups=0(root) ~# ls -la /afs ls: cannot open directory /afs: Permission denied
Potřebujeme se napřed ověřit u Kerbera:
~$ kinit afsadmin
Password for afsadmin@FOO.BAR:
~$ klist
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: afsadmin@FOO.BAR
Valid starting Expires Service principal
03/06/11 14:39:46 03/07/11 00:39:46 krbtgt/FOO.BAR@FOO.BAR
renew until 03/07/11 14:39:43
a následně vytvořit token pro AFS:
~$ aklog ~$ tokens Tokens held by the Cache Manager: User's (AFS ID 1) tokens for afs@foo.bar [Expires Mar 7 00:39] --End of list--
Při opakovaném příkazu klist si všimněte, že přibyl další
záznam, a to pro službu afs v doméně (buňce) foo.bar
z Kerberos realmu FOO.BAR.
~$ klist
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: afsadmin@FOO.BAR
Valid starting Expires Service principal
03/06/11 14:39:46 03/07/11 00:39:46 krbtgt/FOO.BAR@FOO.BAR
renew until 03/07/11 14:39:43
03/06/11 14:41:40 03/07/11 00:39:46 afs/foo.bar@FOO.BAR
renew until 03/07/11 14:39:43
AFS má vlastní systém práv i uživatelů, proto teď s pověřením platným do 00:39
můžeme přistupovat jako uživatel afsadmin (ve skutečnosti s principalem
afsadmin@FOO.BAR) k naší buňce. Trik totiž spočívá v tom, že
tento principal je součástí skupiny system:administrators, což
jsme zařídili při instalaci, detailněji v samostatném článku. Výsledkem je,
že nám bude fungovat ls:
~$ ls -la /afs total 6 drwxrwxrwx 2 root root 2048 Feb 22 22:11 . drwxr-xr-x 24 root root 4096 Feb 22 17:43 ..
Už jsme se zbavili otravného Permission denied, ale stále nic nevidíme,
přesto tam volume je, jen nemá obsah. Pro jistotu zjistíme, v jakém volumu se
nacházíme (měl by to být root.afs, viz druhý řádek výpisu) a
jeho vlastnosti již známým příkazem vos examine:
~$ fs examine /afs | nl
1 File /afs (536870912.1.1) contained in volume 536870912
2 Volume status for vid = 536870912 named root.afs
3 Current disk quota is 5000
4 Current blocks used are 2
5 The partition has 18395280 blocks available out of 19593852
~$ vos examine root.afs
root.afs 536870912 RW 2 K On-line
afssrv.foo.bar /vicepa
RWrite 536870912 ROnly 0 Backup 0
MaxQuota 5000 K
Creation Tue Feb 22 22:11:22 2011
Copy Tue Feb 22 22:11:22 2011
Backup Never
Last Access Sun Mar 6 14:56:14 2011
Last Update Tue Feb 22 22:11:22 2011
12 accesses in the past day (i.e., vnode references)
RWrite: 536870912
number of sites -> 1
server afssrv.foo.bar partition /vicepa RW Site
Z instalace máme ještě volume root.cell, bylo by záhodno jej
připojit do kořenového volumu a zkontrolovat:
~$ cd /afs /afs$ fs mkmount foo.bar root.cell /afs$ ls -la total 8 drwxrwxrwx 2 root root 2048 Mar 6 15:16 . drwxr-xr-x 23 root root 4096 Mar 6 15:08 .. drwxrwxrwx 2 root root 2048 Feb 22 22:11 foo.bar /afs$ fs lsmount * 'foo.bar' is a mount point for volume '#root.cell'
V příkladech jste si mohli všimnout, že je rozpor mezi nápovědou jednotlivých příkazů a tím, co občas v příkladech uvádím. Všechny příkazy od AFS podporují vlastnost, že když zachováváte pořadí parametrů bez jejich vynechávání, tak nemusíte uvádět jejich přepínače. Dokonce, pokud jsou přepínače jednoznačné, můžete je i zkracovat. Zápisy níže jsou ekvivalentní k uvedené nápovědě:
~$ fs help mkmount
fs mkmount: make mount point
Usage: fs mkmount -dir <directory> -vol <volume name> [-cell <cell name>] [-rw] [-fast] [-help]
Where: -rw force r/w volume
-fast don't check name with VLDB
~$ fs mkmount foo.bar root.cell
~$ fs mkmount foo.bar -vol root.cell
~$ fs mkmount -vol root.cell -dir foo.bar
~$ fs mk -v root.cell -d foo.bar
Ačkoliv ze začátku je hodně práce, tak v budoucnu budete při administraci rádi za to, jak je to zařízené. Postupně se dostáváme od základního vysvětlování pojmů k praktickým věcem a tento poměr se bude stále vylepšovat.
Příští díl bude věnován uživatelům, skupinám a jejich oprávněním. Pokud stále zvažujete, zda si máte OpenAFS nainstalovat, tak je nejvyšší čas, protože to bude čím dál zajímavější a bez řádného vyzkoušení to není ono.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:

bytů/bajtů/bitů, nejsem si jistý, ale to první je spíše na bydlení 

, protože tolik bytů v ČR není
.