Byla vydána verze 1.98.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.
Byla vydána nová verze 7.1 (YouTube) svobodného open source redakčního systému WordPress. Kódové jméno Mary Lou bylo vybráno na počest americké jazzové klavíristky Mary Lou Williams (YouTube).
Bun (Wikipedie), tj. běhové prostředí (runtime) a toolkit pro JavaScript a TypeScript, alternativa k Node.js a Deno, byl vydán ve verzi 1.4. Představení novinek také na YouTube. Bun byl přepsán z programovacího jazyka Zig do Rustu. Pomocí Claude Fable 5.
Vývojáři KDE na Mastodonu oznámili vydání balíku aplikací KDE Gear 26.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.
Společnost PINE64 kvůli nedostatku a vysokým cenám DRAM a eMMC dočasně pozastavuje výrobu linuxových zařízení. Výroba zařízení jako PineTime, PineVoice a Pinecil pokračuje.
Společnost Stripe se dohodla na akvizici společnosti OpenRouter. Za 7,5 miliardy dolarů.
Byla vydána nová verze 1.27 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.
V pátek 28. srpna se v Praze uskuteční již osmý Mobile Linux Hackday. Jako obvykle se potkáme v pražské pobočce SUSE v Karlíně na Křižíkově, takže kromě mobilního Linuxu je to tentokrát i příležitost přijít se podívat na nově zrekonstruované kanceláře. Začínáme v 10:00, ale dorazit můžete samozřejmě kdykoliv v průběhu dne. Setkáním vás provede Petr Hodina, vývojář GPU ovladačů v Mesa 3D a jeden z hlavních lidí české komunity kolem mobilního … více »
Představen byl Raspberry Pi Compute Module 5 Programming Jig. Jedná se o zařízení umožňující připravit Compute Module 5 do plně funkčního stavu bez nutnosti použití dalších vstupně / výstupních desek. Podporuje automatizaci pomocí nástroje rpi-sb-provisioner. Podrobnosti v dokumentaci.
Hackeři ve Francii ukradli data více než půl milionu daňových poplatníků. Je to jeden z největších hackerských útoků v dějinách země. O útoku z konce června informovala až teď daňová správa. Teprve od pondělí dotčeným občanům zasílá e-maily s instrukcemi, jak postupovat dál. Hackeři se sice nedostanou k penězům dotyčných, hrozí ale věrohodné podvody. Hackeři získali třeba celá jména, údaje o rodinných příslušnících nebo také údaje o
… více »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: