Bylo vydáno Eclipse IDE 2024-06 aneb Eclipse 4.32. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
Proton, tj. fork Wine integrovaný v Steam Play a umožňující v Linuxu přímo ze Steamu hrát hry určené pouze pro Windows, byl vydán ve verzi 9.0-2 (𝕏). Přehled novinek se seznamem nově podporovaných her na GitHubu. Aktuální přehled her pro Windows běžících díky Protonu také na Linuxu na stránkách ProtonDB.
Po roce od vydání verze 15.5 bylo vydáno openSUSE Leap 15.6. Přehled novinek v nejnovější verzi této linuxové distribuce v oznámení o vydání a v poznámkách k vydání.
Byla vydána nová verze 256 správce systému a služeb systemd (GitHub). Nově mimo jiné s run0 jako alternativou k sudo.
Společnost Oracle oznámila spolupráci s Google Cloudem, OpenAI a Microsoftem.
Zítra začne v Brně na FIT VUT třídenní open source komunitní konference DevConf.CZ 2024. Vstup je zdarma, nutná je ale registrace. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.
Google Chrome 126 byl prohlášen za stabilní. Nejnovější stabilní verze 126.0.6478.55 přináší řadu oprav a vylepšení (YouTube). Podrobný přehled v poznámkách k vydání. Opraveno bylo 21 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Byl vydán Mozilla Firefox 127.0. Přehled novinek v poznámkách k vydání, poznámkách k vydání pro firmy a na stránce věnované vývojářům. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 127 je již k dispozici také na Flathubu a Snapcraftu.
Byla vydána (𝕏) nová verze 9.5 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.
Společnost Raspberry Pi dnes vstoupila na Londýnskou burzu jako Raspberry Pi Holdings plc (investor).
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?