Nový open source router Turris Omnia NG je v prodeji. Aktuálně na Allegro, Alternetivo, Discomp, i4wifi a WiFiShop.
Na YouTube a nově také na VHSky byly zveřejněny sestříhané videozáznamy přednášek z letošního OpenAltu.
Jednou za rok otevírá společnost SUSE dveře svých kanceláří široké veřejnosti. Vítáni jsou všichni, kdo se chtějí dozvědět více o naší práci, prostředí ve kterém pracujeme a o naší firemní kultuře. Letos se dveře otevřou 26. 11. 2025 v 16:00. Můžete se těšit na krátké prezentace, které vám přiblíží, na čem naši inženýři v Praze pracují, jak spolupracujeme se zákazníky, partnery i studenty, proč máme rádi open source a co pro nás skutečně
… více »Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za říjen (YouTube).
Jeff Quast otestoval současné emulátory terminálu. Zaměřil se na podporu Unicode a výkon. Vítězným emulátorem terminálu je Ghostty.
Amazon bude poskytovat cloudové služby OpenAI. Cloudová divize Amazon Web Services (AWS) uzavřela s OpenAI víceletou smlouvu za 38 miliard USD (803,1 miliardy Kč), která poskytne majiteli chatovacího robota s umělou inteligencí (AI) ChatGPT přístup ke stovkám tisíc grafických procesů Nvidia. Ty bude moci využívat k trénování a provozování svých modelů AI. Firmy to oznámily v dnešní tiskové zprávě. Společnost OpenAI také nedávno
… více »Konference Prague PostgreSQL Developer Day 2026 (P2D2) se koná 27. a 28. ledna 2026. Konference je zaměřena na témata zajímavá pro uživatele a vývojáře. Příjem přednášek a workshopů je otevřen do 14. listopadu. Vítáme témata související s PostgreSQL či s databázemi obecně, a mohou být v češtině či angličtině.
Byl vydán Devuan 6 Excalibur. Přehled novinek v poznámkách k vydání. Kódové jméno Excalibur bylo vybráno podle planetky 9499 Excalibur. Devuan (Wikipedie) je fork Debianu bez systemd. Devuan 6 Excalibur vychází z Debianu 13 Trixie. Devuan 7 ponese kódové jméno Freia.
Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu poprvé překročil 3 %, aktuálně 3,05 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 27,18 %. Procesor AMD používá 67,10 % hráčů na Linuxu.
Joel Severin v diskusním listu LKML představil svůj projekt linuxového jádra ve WebAssembly (Wasm). Linux tak "nativně" běží ve webovém prohlížeči. Potřebné skripty pro převod jsou k dispozici na GitHubu.
Použití suid je nebezpečné. Tvoje řešení přes sudo ale není o moc lepší. Představ si situaci, že si na tvůj počítač někdo přinese svůj TrueCrypt svazek naformátovaný nějakým unixovým filesystémem, na kterém bude mít bash s nastaveným suid bitem vlastněný rootem. Když si takový svazek připojí s parametrem suid, tak má plný přístup ke tvému počítači.
Já to vyřešil vlastním wrapperem (přiloženo níže), který teprve povoluji spouštět přes sudo bez hesla.
Pokud v tom wrapperu někdo objevíte chybu, budu vděčný za nahlášení. 
$ visudo
. . .
%encrypted ALL=(root) NOPASSWD: /usr/local/bin/truecryptmount.sh
. . .
$ ls -l /usr/local/bin/truecryptmount.sh
-rwxr----- 1 root root 7076 2006-07-27 19:56 /usr/local/bin/truecryptmount.sh
$ cat /usr/local/bin/truecryptmount.sh
#!/bin/bash
#
#Tento skript slouzi ke zpristupneni nekterych funkci programu truecrypt
#i beznym uzivatelum. Je urcen ke spousteni za pomoci sudo bez vyzadovani hesla.
#
#
#Vycisteni promennych pouzivanych skriptem.
#
unset truecryptpath
unset usergroupregexp
unset options
unset user
unset group
unset dmask
unset fmask
#
#Nastaveni cesty k obsluznemu programu truecrypt.
#
truecryptpath=/usr/local/bin/truecrypt
#
#Test, zda byl skriptu predan alespon jeden parametr.
#
if [ $# -ge 1 ]; then
#
#Test, zda cesta k obsluznemu programu skutecne ukazuje na spustitelny
#soubor.
#
if [ -x $truecryptpath ]; then
#
#Analyza predanych parametru.
#
case "$1" in
#
#Zadost o vypis vsech pripojenych svazku. Musi byt zdan prave jeden
#parametr.
#
-l) if [ $# -eq 1 ]; then
#
#Vypis vsech pripojenych svazku.
#
$truecryptpath --list
#
#Pokud nebyl zdan prave jeden parametr, konci s chybou.
#
else
exit 4
fi;;
#
#Zadost o odpojeni vsech pripojenych svazku. Musi byt zdan prave
#jeden parametr.
#
-a) if [ $# -eq 1 ]; then
#
#Odpojeni vsech pripojenych svazku.
#
$truecryptpath -d
#
#Pokud nebyl zdan prave jeden parametr, konci s chybou.
#
else
exit 5
fi;;
#
#Zadost o odpojeni konkretniho svazku. Musi byt zdany prave dva
#parametry.
#
-u) if [ $# -eq 2 ]; then
#
#Kontola, zda druhy parametr je cesta k beznemu souboru
#nebo adresari.
#
if [ -f "$2" -o -d "$2" ]; then
#
#Odpojeni svazku identifikovaneho pripojnym bodem nebo
#zdrojovym souborem.
#
$truecryptpath -d "$2"
#
#Pokud druhy parametr neni cesta k beznemu souboru nebo
#adresari, konci s chybou.
#
else
exit 8
fi
#
#Pokud nebyly zdany prave dva parametry, konci s chybou.
#
else
exit 6
fi;;
#
#Zadost o pripojeni svazku. Musi byt zadano prave osm parametru.
#
-m) if [ $# -eq 8 ]; then
#
#Nastaveni pomocne promenne s regularnim vyrazem, kteremu
#musi odpovidat zadane jmeno uzivatele a skupiny.
#
usergroupregexp='[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_][ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_.-]*[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567899_.$-]\?';
#
#Nastaveni pomocne promenne se jmenem uzivatele, ktery ma
#byt vlastnikem souboru na pripojenem svazku.
#
user=`echo "$5" | grep -x -m 1 "$usergroupregexp"`;
#
#Nastaveni pomocne promenne se skupinou uzivatelu, ktere
#maji nalezet soubory na pripojenem svazku.
#
group=`echo "$6" | grep -x -m 1 "$usergroupregexp"`;
#
#Nastaveni pomocne promenne se maskou prav k adresarum na
#pripojenem svazku.
#
dmask=`echo "$7" | grep -x -m 1 '[0-7]\{3\}'`;
#
#Nastaveni pomocne promenne se maskou prav k souborum na
#pripojenem svazku.
#
fmask=`echo "$8" | grep -x -m 1 '[0-7]\{3\}'`;
#
#Kontola, zda treti parametr je cesta k beznemu souboru,
#ctvrty parametr je cesta k adresari a pomocne promenne
#obsahuji retezec nenulove delky.
#
if [ -f "$3" -a -d "$4" -a -n "$user" -a -n "$group" -a -n "$dmask" -a -n "$fmask" ]; then
#
#Nastaveni pomocne promenne s parametry pro pripojeni
#svazku.
#
options="uid=$user,gid=$group,dmask=0$dmask,fmask=0$fmask,utf8,noauto,nodev,noexec,nosuid";
#
#Pokud druhy parametr obsahuje retezece '-r'...
#
if [ "$2" = '-r' ]; then
#
#...pripoj svazek se zadanymi parametry ze zadaneho
#umisteni do zadaneho pripojneho bodu pouze pro
#cteni.
#
$truecryptpath -r --mount-options "$options" "$3" "$4"
#
#Pokud druhy parametr obsahuje retezece '-w'...
#
elif [ "$2" = '-w' ]; then
#
#...pripoj svazek se zadanymi parametry ze zadaneho
#umisteni do zadaneho pripojneho bodu pro cteni
#i zapis.
#
$truecryptpath --mount-options "$options" "$3" "$4"
#
#Pokud druhy parametr nebosahuje reteze '-r' nebo '-w',
#konci s chybou.
#
else
exit 9
fi;
#
#Pokud neni spravne nastaven treti nebo ctvrty parametr
#nebo alespon jedna promenna obsahuje retezec nulove delky,
#konci s chybou.
#
else
exit 10
fi
#
#Pokud nebylo zdano prave osm parametru, konci s chybou.
#
else
exit 7
fi;;
#
#Pokud v prvnim parametru nebyl nalezen spravny prikaz, konci
#s chybou.
#
*) exit 3;;
esac
#
#Pokud cesta k obsluznemu programu neukazuje na spustitelny soubor, konci
#s chybou.
#
else
exit 2
fi
#
#Pokud skriptu nebyl predan ani jeden parametr, konci s chybou.
#
else
exit 1
fi
$ exit
> # Read-only mód.
> sudo /usr/local/bin/truecryptmount.sh -m -r '/home/michalr/enc.tc' '/home/michalr/encmnt/' 'michalr' 'encrypted' '077' '177'
> # Unmount.
> sudo /usr/local/bin/truecryptmount.sh -u '/home/michalr/enc.tc'
> # Read-write mód.
> sudo /usr/local/bin/truecryptmount.sh -m -w '/home/michalr/enc.tc' '/home/michalr/encmnt/' 'michalr' 'encrypted' '077' '177'
> # Unmount all.
> sudo /usr/local/bin/truecryptmount.sh -a
> # List.
> sudo /usr/local/bin/truecryptmount.sh -l
if not něco then exit; dělej než if něco then dělej else exit a neporoste ti to tak do šířky
Takže: Brání tenhle skriptík tomu, abych nepřeplácnoul např. /bin něčím vlastním? Ani nechci domejšlet, co by se mohlo stát, jestli ne
/bin?
Tak jdu záplatovat.
$PATH, ne?
Tiskni
Sdílej: