Americké firmy Tesla a SpaceX postaví v texaském Austinu moderní komplex na výrobu čipů pro umělou inteligenci (AI). Součástí projektu s názvem Terafab budou dvě moderní továrny na výrobu čipů – jedna se zaměří na automobily a humanoidní roboty, druhá na datová centra ve vesmíru. Uvedl to generální ředitel těchto firem Elon Musk. Projekt by podle odhadů měl stát 20 miliard USD (zhruba 425 miliard Kč).
Byla vydána nová stabilní verze 6.11 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
Ubuntu 26.04 patrně bude ve výchozím nastavení zobrazovat hvězdičky při zadávání hesla příkazu sudo, změna vychází z nové verze sudo-rs. Ta sice zlepší použitelnost systému pro nové uživatele, na které mohlo 'tiché sudo' působit dojmem, že systém 'zamrzl' a nijak nereaguje na stisky kláves, na druhou stranu se jedná o možnou bezpečnostní slabinu, neboť zobrazování hvězdiček v terminálu odhaluje délku hesla. Původní chování příkazu sudo
… více »Projekt systemd schválil kontroverzní pull request, který do JSON záznamů uživatelů přidává nové pole 'birthDate', datum narození, tedy údaj vyžadovaný zákony o ověřování věku v Kalifornii, Coloradu a Brazílii. Jiný pull request, který tuto změnu napravoval, byl správcem projektu Lennartem Poetteringem zamítnut s následujícím zdůvodněním:
… více »Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 163 (pdf).
Eric Lengyel dobrovolně uvolnil jako volné dílo svůj patentovaný algoritmus Slug. Algoritmus vykresluje text a vektorovou grafiku na GPU přímo z dat Bézierových křivek, aniž by využíval texturové mapy obsahující jakékoli předem vypočítané nebo uložené obrázky a počítá přesné pokrytí pro ostré a škálovatelné zobrazení písma, referenční ukázka implementace v HLSL shaderech je na GitHubu. Slug je volným dílem od 17. března letošního
… více »Sashiko (GitHub) je open source automatizovaný systém pro revizi kódu linuxového jádra. Monitoruje veřejné mailing listy a hodnotí navrhované změny pomocí umělé inteligence. Výpočetní zdroje a LLM tokeny poskytuje Google.
Cambalache, tj. RAD (rapid application development) nástroj pro GTK 4 a GTK 3, dospěl po pěti letech vývoje do verze 1.0. Instalovat jej lze i z Flathubu.
KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.
Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.
V tomto článku, který volně navazuje na spíše obecný popis chroot prostředí v Linuxu, bych vám rád přestavil program Jail (Jail Chroot Project), který dokáže velice usnadnit vytváření a provozování chrootovaných aplikací a uživatelů.
Program je šířen pod licencí GNU a byl napsán v jazyku C. Základní skripty byly vytvořeny s pomocí bashe a perlu. Jail byl otestován na systémech Linux, Solaris, IRIX a FreeBSD (podle autora bude nejspíše fungovat v jakémkoliv unixovém systému). Napsal jej španělský "computer engineer" Juan Manuel Casillas. Odkazy na domovské stránky projektu jsou uvedeny níže. Na nich též najdete originální dokumentaci, ze které jsem čerpal pro tento článek.
V dalším textu budu předpokládat, že máte alespoň matnou přestavu o tom, co to chroot prostředí v Linuxu je, pokud ne, pak se podívejte na článek, ve kterém jsem o tom něco málo sepsal.
Pojďme se již konečně podívat, k čemu je vlastně program Jail dobrý a proč ho používat. Pokud to vezmeme trošinku oklikou, pak lze říci, že při chrootování nějakého programu je zřejmě nejtěžší správně určit všechny knihovny a soubory, které tento program potřebuje. A právě tu nastupuje program Jail, který dokáže automaticky "vybrat" všechno, co je potřeba a zkopírovat to na určené místo. Samozřejmě musím podotknout, že vše, co program Jail umí, lze provádět i "ručně", ale to v mnoha případech není vůbec jednoduché, takže proč si to neulehčit, že?
Instalace je velice rychlá a jednoduchá, stáhnete si klasický tarball se samotným programem, který má pouhých asi 30 KiB, rozbalíte jej a přepnete se do něj:
tar xfz jail_1.9.tar.gz
|
Pak můžete v adresáři src editovat soubor Makefile, ve kterém, mimo jiné, jde nastavit pro jaký "Unix" bude program kompilován (viz výše, např. Linux, Solaris ...), dále adresář, do kterého se program nainstaluje atd. Až budete spokojeni, pak obvyklým příkazem (stále v adresáři src)
make
|
program zkompilujete a příkaz
make install
|
zajistí instalaci, která se standardně provede do adresáře /usr/local.
Jelikož doufám, že vše proběhlo v pořádku, můžeme si ukázat, jak se s Jailem pracuje (jistě netřeba dodávat, že vše provádíme jako root). Pro uživatelskou práci slouží několik v Perlu napsaných skriptů (jsou tři a všechny si předvedeme v akci).
Prvním (možná spíš nultým) krokem je vytvoření adresáře, ve kterém budeme chroot prostředí provozovat (a který bude "novým kořenem"). Tento adresář může být v podstatě kdekoliv, takže např.:
mkdir /chroot
|
Dalším krokem je vytvoření tzv. základního prostředí s několika speciálními soubory (např. etc/passwd, dev/null, atd.). K tomuto slouží příkaz mkjailenv, takže např.:
/usr/local/bin/mkjailenv /chroot
|
Výstup příkazu vypadá takto:
mkjailenv
|
V této chvíli máme připraveno prostředí, které je ale zatím celkem k ničemu, protože v něm ještě není žádný software. Přidání základního balíku programů a k nim závislých knihoven a speciálních souborů provedeme příkazem addjailsw zadaným bez parametrů.
/usr/local/bin/addjailsw /chroot
|
Pro ukázku přikládám zkrácený výpis z mého počítače:
addjailsw
|
V této chvíli by již mělo být chroot prostředí plně funkční, můžeme to hned otestovat:
chroot /chroot
|
Pozn.: Můj první pokus skončil na hlášce "chroot: /bin/bash nelze provést: není souborem ani adresářem". V takovém případě ručně napravíme, co se programu zřejmě nepodařilo:
cp /bin/bash /chroot/bin
|
Potom by již mělo být vše v pořádku.
Protože nyní máme vytvořeno základní prostředí, tak si ukážeme (a vyzkoušíme) přidávání dalších programů, které je velmi snadné (narozdíl od chrootování, které se dělá "ručně"). K této činnosti opět slouží příkaz addjailsw, kterému, ale zadáme parametr -P a název programu, který má být do chroot prostředí převeden. Pokud se např. rozhodneme chrootnout interpret jazyka Perl, příkaz bude vypadat takto:
/usr/local/bin/addjailsw /chroot -P perl
|
Myslím, že netřeba přidávát výpis, ale každopádně se nelekněte případných hlášek o přepisování souborů, které tam již vytvořily předchozí příkazy a po projetí prográmku si vyzkoušejte jestli vše funguje:
chroot /chroot
|
Další užití programu Jail je chrootování uživatelů. Jail v tomto případě slouží jako logovací nástroj a pracuje jako "wrapper" na uživatelský shell. Takže pokud se dotyčný uživatel přihlásí, je Jail spušten a chroot prostředí je aktivováno.
Nejdříve je třeba založit uživatele v normálním (tzn. ne chroot) systému. Můžeme to udělat ručně, editací souboru /etc/passwd nebo použít příkaz adduser (useradd).
Následně spustíme příkaz addjailuser, který edituje chrootovaný /etc/passwd a také vytváří chrootovaný domovský adresář. Např.:
/usr/local/bin/addjailuser /chroot /home/pepa /bin/bash pepa
|
Parametry jsou následující:
Náš ukázkový výstup by měl vypadat takto:
addjailuser
|
To ale není vše. Aby to fungovalo tak, jak si přejeme, je třeba ručně upravit ne-chrootovaný /etc/passwd. Původní záznam, který vypadá nějak takto:
pepa:x:507:507::/home/pepa:/bin/bash
|
upravíme tak, že změníme domovský adresář na adresář, který bude kořenem pro uživatele v chroot prostředí a výchozí shell, kde nastavíme program jail:
pepa:x:507:507::/chroot:/usr/local/bin/jail
|
Tak a teď už je konečně uživatel pepa chrootovaný (pro jistotu si to ověřte
).
Podle mých zkušeností program Jail funguje spolehlivě a jeho používání je velmi jednoduché. Pokud ale přeto narazíte na problém, zkuste se podívat na na tuto stránku, na které najdete diskuzní fórum, ve kterém vám poradí buď ostatní uživatelé nebo přímo Juan (autor programu).
Závěrem nezbývá než dodat, že program Jail dokáže velice zjednodušit vytváření chroot prostředí a přidávání do něj jak uživatelů tak aplikací. Dalo by se skoro říci, že s jeho pomocí je chrootnutí nějakého programu či uživatele v podstatě triviální záležitost (na rozdíl od ručního chrootování). Doufám, že vás článek alespoň trošku zaujal a případně vám bude užitečný v praxi. Máte-li připomínky či nápady neváhejte a svěřujte se v diskuzi.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
jailkit příkaz pro použití jk_init -j. Je to pak tedy trochu jinak než je výše popisováno v návodu. Přesto jako "námět" se mi článek líbí.
/lib/ld-linux.so.2, no holt ten jail moc inteligentni neni, kdyz neumi ani korektne pouzit ldd...