plwm je nový, poměrně minimalistický správce oken pro X11. Podporuje dynamické dláždění okny, plochy, pravidla pro okna atd. Zvláštností je, že je napsaný v logickém programovacím jazyce Prolog. Používá implementaci SWI-Prolog.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Sean Heelan se na svém blogu rozepsal o tom, jak pomocí OpenAI o3 nalezl vzdálenou zranitelnost nultého dne CVE-2025-37899 v Linuxu v implementaci SMB.
Jiří Eischmann v příspěvku na svém blogu představuje typy, jak lépe chránit své soukromí na mobilním telefonu: "Asi dnes neexistuje způsob, jak se sledování vyhnout úplně. Minimálně ne způsob, který by byl kompatibilní s tím, jak lidé technologie běžně používají. Soukromí ovšem není binární věc, ale škála. Absolutního soukromí je dnes na Internetu dost dobře nedosažitelné, ale jen posun na škále blíže k němu se počítá. Čím méně dat se o vás posbírá, tím nepřesnější budou vaše profily a tím méně budou zneužitelné proti vám."
Byla vydána nová stabilní verze 25.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Warbler. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.
Multiplatformní open source spouštěč her Heroic Games Launcher byl vydán v nové stabilní verzi 2.17.0 Franky (Mastodon, 𝕏). Přehled novinek na GitHubu. Instalovat lze také z Flathubu.
Organizace Apache Software Foundation (ASF) vydala verzi 26 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Klávesnice IBM Enhanced Keyboard, známá také jako Model M, byla poprvé představena v roce 1985, tzn. před 40 lety, s počítači IBM 7531/7532 Industrial Computer a 3161/3163 ASCII Display Station. Výročí připomíná článek na zevrubném sběratelském webu Admiral Shark's Keyboards. Rozložení kláves IBM Enhanced Keyboard se stalo průmyslovým standardem.
Vyšlo Pharo 13 s vylepšenou podporou HiDPI či objektovým Transcriptem. Pharo je programovací jazyk a vývojové prostředí s řadou pokročilých vlastností.
Java má dnes 30. narozeniny. Veřejnosti byla představena 23. května 1995.
Ovšem zmíním se o vytvoření souboru s hesly pro autorizovaný přístup.
Jak jsem už psal ve výtahu konfigurace, musíte si podporu autorizace
zapnout pro daný adresář. A musíte vytvořit soubor s hesly, na to máme
příkaz htpasswd
a soubor vytvoříme s prvním uživatelem.
htpasswd -c /etc/apache/pristup pepa
Soubor by měl být někde mimo cestu nad document rootem, aby nešel
přečíst z webu šikovně zadaným dotazem na soubor. Tento příkaz nám vytvoří
soubor a požádá nás o hesla pro uživatele pepa. Další uživatele pak už
přidáváme bez parametru -c
, ale název souboru uvádět musíte,
autorizačních souborů může být totiž více. Umazávání uživatelů děláme ruční
editací souboru a smazáním patřičného řádku. Vyzkoušejte si to v praxi, je
to tam krásně vidět.
Konfigurace Apache je trochu náročnější. Apache je součástí každé
distribuce a ani bych příliš nekoukal na to, jestli je to poslední verze.
Uvedu opět důležité řádky z konfigurace, ta se nachází v
/etc/apache/httpd.conf
.
ServerType standalone |
Server budeme spouštět samostatně bez inetd, takže bude standalone; direktiva server root je pro binárky Apache, ne pro dokumenty, takže neplést si to. |
Timeout 300 |
Keepalive jsou jako u předchozího serveru, většinou vám vyhoví výchozí hodnoty. |
MinSpareServers 3 |
Apache se nespouští jen v jednom procesu, ale má jeden hlavní, který řídí syny. To jsou procesy, které vyřizují požadavky. Zde řídíme jejich počet, já snížil hodnotu na 3. |
LoadModule vhost_alias_module
libexec/mod_vhost_alias.so |
Moduly rozšiřují možnosti serveru třeba o PHP, existuje jich velké množství a další se dají stahovat z internetu. Nelze je tu všechny jmenovat, ale vězte, že pokud vám nějaká funkce nepůjde, může to být i nepřítomným modulem. |
Port 80 |
Port jako v předchozím příkladě určuje, na jakém portu má server poslouchat, standardně 80. Uživatel a skupina je pro určení uid pro syny. Hlavní proces běží jako root. |
ServerName thovt.vetrnik.net |
Server name nepotřebuje vysvětlování. A náš známý document root, který tentokrát říká, kde budou stránky. |
<Directory /> |
Zde už začínají omezení přístupu k adresářům a zabezpečení serveru.
Toto je výchozí direktiva, která zakazuje sledovat symbolické odkazy. Boa
tuto vlastnost bohužel nemá, ale ta je také určena jako server, kam nemůže
nahrávat kdokoliv. Zkuste si na Boa serveru vytvořit v adresáři
/home/www symbolický link
ln -s /etc/passwd stranka.html a pak ji
načtěte, výsledek neznalé dosti překvapí. |
<Directory "/home/www"> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all AuthAuthoritative on AuthType Basic AuthName "Webcam server" AuthUserFile /etc/apache/pristup Require valid-user </Directory> |
Zde vidíte nastavení, zčásti výchozí, pro document root. Pro ukázku je zde přidána autorizace, aby se na server nedostal kdekdo. Jak vytvořit soubor s hesly, popíši dále. |
LogFormat "%h %l %u %t \"%r\" %>s %b" common |
Logy jsou u Apache řešené trochu jinak. Nejdříve si určíte formát logu a ten pojmenujete, zde common, což je výchozí název. A pak řeknete, kam se má tento formát logovat. Po úspěšném rozchození logy opět vypínám, zde pouze zakomentováním. |
Více konfiguračních voleb pro Apache uvádět nebudu, je jich tolik, že to přesahuje rámec článku.
Pokud nám server běží, můžeme napsat stránku, která bude obraz prezentovat. Soubor na poskytnutí obrazu bude vypadat asi takto:
<html> <head> <script language="JavaScript"><!-- window.offscreenBuffering=true; imagecache = new Image(); count=Math.round(10000000+(Math.random() * 10000000)); function startstream() { imagecache.onload=getimage; imagecache.src = "ramdisk/webcam.jpg"; } function getimage(){ count = count + 1; window.status = "Iomojo Cam v1"; document.dynamicimage.src = imagecache.src; imagecache.src = "ramdisk/webcam.jpg?"+count; } function stopstream() { imagecache.onload=''; imagecache.src=document.dynamicimage.src; } //--></script> </head> <body onload="startstream()" onexit="stopstream()"> <img width=320 height=240 src='ramdisk/webcam.jpg?' name=dynamicimage border=0> </body></html>
S tím JavaScriptem jsem se dost nazlobil a přiznám se, že jsem ho obšlehl z příkladů na netu, prostě ho neumím. Mé stránky ještě obsahují i zobrazení teploty z čidla, které mám na sériovém portu, a další srandičky jako ukládání obrázků tlačítkem atd., takže si všechny tyto soubory můžete stáhnout. Stránku s teplotou generuji cronem každých 10 minut a čidlo můžete sehnat u Papoucha.
Na konec článku si také ukážeme, jak Linux rozchodit z flashky. Oproti disku má svá značná specifika. Nejdůležitější je, že flash paměť má oproti disku omezený počet zápisů a nemá takovou velikost. Samozřejmě můžeme použít velkou flash, která má v sobě malý disk, ale otázka je, jestli se nám to finančně vyplatí.
Je v podstatě jedno, jestli se bude jednat o USB klíčenku nebo flash, která se připojí přímo na IDE. USB klíčenku jsem sice nezkoušel, ale určitě to půjde také; jen se asi bude muset udělat initramdisk. Linux na takové médium nainstalujeme podobně jako bychom ho chtěli spouštět na bezdiskové stanici s root filesystémem na síti.
Nastíním instalaci na flash, kterou připojíme pomocí redukce na IDE rozhraní. Popis bude dost zajímat hlavně nováčky, které možná trochu překvapí, co to vlastně instalace Linuxu je. Tato část už není doslovným návodem, jen nástinem toho, co se s Linuxem dá dělat. Instalace Linuxu na flash je něco na způsob vytváření vlastní jednodisketové distribuce. Ty se vytvářejí podobným způsobem, ale kvůli úspoře místa ještě nahrazují základní programy jedním, třeba Busyboxem. To je program, který v sobě obsahuje ifconfig, cp, bash a spoustu dalších. Výše uvedené programy (cp, ifconfig atd.) jsou pak už jen symbolickým linkem na Busybox. Je samozřejmé, že Busybox je kompromisem mezi počtem funkcí a velikostí programu. Chybí třeba help ke každému programu.
Linux jako takový se vlastně nemusí instalovat, já sám už to nedělám, mám připravený základní obraz systému a při instalaci nového stroje prostě tento systém na nový disk zkopíruji. Pak jen nahraji lilo do MBR:
lilo -M /dev/hda
lilo -C /mnt/etc/lilo.conf
(Při instalaci lilo není samozřejmě konfigurace v /etc
, ale
v /etc
na disku, kam Linux "instalujeme".) A je hotový základ
systému. Pro instalaci na flash uděláme něco podobného. Nejsnazší je systém
nainstalovat na normální disk a pak na flash zkopírovat jen nutné soubory.
Z plného nainstalovaného systému vybereme jen to, co je potřeba. A jak
poznáme, co vlastně Linux ke svému běhu potřebuje? Zde máte strom se soubory,
které jsou nutné pro nastartování Linuxu. Některé adresáře jsou poznámkou
zkráceny, protože je vhodné je nakopírovat celé.
Výpis je z initramdisku, který jsem vytvořil, když jsem zkoušel
bezdiskovou stanici z notebooku a potřeboval jsem připojit root file system
přes NFS a nějakým způsobem jsem musel zavést modul pro PCMCIA síťovku.
Funkci rc.d
zde plní soubor linuxrc
(init zde
vůbec není). Ovšem pokud na konci skriptu linuxrc
spustíte
bash, máte funkční Linux :-)). Pro použití pro tuto situaci
doporučuji ještě přidat binárky a knihovny balíčků sítě, ssh, sysvinit a
shadow, a samozřejmě adresář /var
a připojit jej do ramdisku
stejně jako adresář, kam se budou ukládat obrázky snímané z kamery. Když
budete Linux takto ořezávat, dost se o něm naučíte.
Pokud takto rozchodíte základ systému a bude vám program chybět,
jednoduše ho přikopírujete. S knihovnou to uděláte stejně, ovšem u té je
potřeba spustit po nakopírování ldconfig
. Proč totiž
instalovat celý balík s knihovnami, když potřebujete jen jednu, že? To samé
platí o kernelových modulech, v jejichž případě musíte pak spustit
depmod
.
Tak to je vše. Ať se vydáte jednou nebo druhou cestou (USB nebo kartou; diskem či flashkou), ať vám tento článek pomůže. Případně vám může ukázat další možnosti aplikace Linuxu na různých zařízeních a pro různá využití.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej: