Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.8.
Herní studio Hangar 13 vydalo novou Mafii. Mafia: Domovina je zasazena do krutého sicilského podsvětí na začátku 20. století. Na ProtonDB je zatím bez záznamu.
Operátor O2 má opět problémy. Jako omluvu za pondělní zhoršenou dostupnost služeb dal všem zákazníkům poukaz v hodnotě 300 Kč na nákup telefonu nebo příslušenství.
Společnost OpenAI představila GPT-5 (YouTube).
Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.
Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.
Byla vydána verze 1.89.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.
Americká technologická společnost Apple uskuteční v USA další investice ve výši sta miliard dolarů (2,1 bilionu korun). Oznámil to ve středu šéf firmy Tim Cook při setkání v Bílém domě s americkým prezidentem Donaldem Trumpem. Trump zároveň oznámil záměr zavést stoprocentní clo na polovodiče z dovozu.
Zálohovací server Proxmox Backup Server byl vydán v nové stabilní verzi 4.0. Založen je na Debianu 13 Trixie.
Rád bych se podělil o mé zkušenosti, které jsem získal, kdýž jsem se snažil nainstalovat Truecrypt do mojí 32 bit Fedory 7. Třeba se to nějakému začátečníkovi jako jsem já někdy hodí.
[merljin@auriga ~]$su
Heslo:
[root@auriga merljin]# cd ~/Download/
[root@auriga merljin]# tar xvzf truecrypt-4.3a-source-code.tar.gz -C /usr/src/
[root@auriga merljin]# vim /etc/yum.repos.d/fedora.repo
v sekci [fedora-source] změnit enabled na 1
[fedora-source]
name=Fedora $releasever - Source
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/source/SRPMS/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-source-$releasever&arch=$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY
Příkazem yum repolist ověřím, že repozitář je aktivní
[root@auriga merljin]# yum repolist
Loading "installonlyn" plugin
Loading "refresh-updatesd" plugin
Loading "fastestmirror" plugin
repo id repo name status
fedora Fedora 7 - i386 enabled
fedora-source Fedora 7 - Source enabled
livna Livna for Fedora Core 7 - i386 - Base enabled
updates Fedora 7 - i386 - Updates enabled
Nyní je potřeba stáhnout vlastní zdrojáky. Nainstaluju také balík yum-utils, který obsahuje prográmek yumdownloader, který mi umožní stáhnout zdrojáky ( má volbu na stažení všech závislostí )
[root@auriga merljin]# yum -y install yum-utils sparse
[root@auriga merljin]# yumdownloader --source kernel
[root@auriga merljin]# rpm -ivh kernel-$(uname -r).src.rpm
[root@auriga merljin]# cd /usr/src
[root@auriga src]# rpmbuild -bp --target=i386 /usr/src/redhat/SPECS/kernel-2.6.spec
(jsem pořad v /usr/src )
[root@auriga src]# ln -s redhat/BUILD/kernel-2.6.22/linux-2.6.22.i386/ linux
[root@auriga merljin]# cd /usr/src/truecrypt-4.3a-source-code/Linux
[root@auriga Linux]# ./build.sh
Checking build requirements...
Preparing kernel build system in /usr/src/linux... Done.
Building internal kernel modules (may take a long time)... Done.
Building kernel module... Done.
Building truecrypt... Done.
Pak spustím install.sh , který nakopíruje modul + aplikaci + help tam kam patří
Pokud vám tak jako mě script install.sh skončí chybou, že nemůže najít modprobe, je to tím, že ve Fedoře adresář /sbin ( ani /usr/sbin ) není defaultně v cestě k prohledávání ($PATH )
[root@auriga Linux]# ./install.sh
Checking installation requirements...
Error: modprobe or rmmod not found. TrueCrypt requires kernel module tools.
[root@auriga Linux]# export PATH=/sbin:/usr/sbin:$PATH
[root@auriga Linux]# ./install.sh
Checking installation requirements...
Testing truecrypt... Done.
Install binaries to [/usr/bin]:
Install man page to [/usr/share/man]:
Install user guide and kernel module to [/usr/share/truecrypt]:
Installing kernel module... Done.
Installing truecrypt to /usr/bin... Done.
Installing man page to /usr/share/man/man1... Done.
Installing user guide to /usr/share/truecrypt/doc... Done.
Installing backup kernel module to /usr/share/truecrypt/kernel... Done.
Teď už si jen přidám práva, abych mohl truecrypt spouštět jako user.
Buď je možné provést to nepěkně ( z bezpečnostních důvodu nevhodné, ale pro používání snažší ) chmod u+s /usr/bin/truecrypt
nebo lépe přidat si možnost spouštět truecrypt jako uživatel
[root@auriga Linux]# visudo
a přidat na konec řádek ( viz man sudoers )
merljin ALL=/usr/bin/truecrypt
No a nezbývá než otestovat (používám ntfs-3g pro zápis na ntfs oddíly )
truecrypt --user-mount -M '-t ntfs-3g -o locale=cs_CZ.UTF-8,rw' /dev/sdd1 /media/tcv
bezva, funguje. Tak si to přidám třebas do ~/.bashrc
# User specific aliases and functions
alias mtcv="truecrypt --user-mount -M '-t ntfs-3g -o locale=cs_CZ.UTF-8,rw' /dev/sdd1 /media/tcv"
Třeba to někomu pomůže. Jiným to jistě přijde triviální, ale mě to trvalo cca 1.5 hodiny :) a ještě jsem
objevil yum-utils a yum-fastestmirror :)
Tiskni
Sdílej:
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
?
$PATH
, ne?