Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.
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.
Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.
Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.
Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
$ ls -l | grep tmp drwxrwxrwt 37 root root 760 Mar 24 13:57 tmp2) Vytvorim adresar pomoci PHPkove funkce
mkdir("/tmp/ftpdown/data",0666, true). vysledkem je
php /opt/test/test.php PHP Warning: mkdir(): Permission denied in /opt/test/test.php on line 23Funkce mkdir vrati false. WTF? 3) Kdo jsem?
$ whoami uzivatel4) Je tam ten adresář? A kdo ho vlastní?
$ cd /tmp $ ls -l | grep ftpdown drw-rw-r-- 2 uzivatel uzivatel 40 Mar 24 13:43 ftpdownWTF? 3) Co je uvnitř?
$ cd ftpdown bash: cd: ftpdown: Permission deniedWTF? 4) A jako root co?
$ su Password: # whoami root # cd ftpdown # ls # cd .. # ls -l | grep ftpdown drw-rw-r-- 2 uzivatel uzivatel 40 Mar 24 13:43 ftpdown # exit $ ls -l | grep ftpdown drw-rw-r-- 2 uzivatel uzivatel 40 Mar 24 13:43 ftpdown $ cd ftpdown bash: cd: ftpdown: Permission denied $ whoami uzivatel $ rmdir ftpdown $ ls -l | grep ftpdownNo to rozhodne dava smysl ze uzivatel nemuze prejit do adresare ktery mu patri a ktery sam vytvoril (i kdyz ne uplne zcela podle zadani - mel vytvorit rekurzivne celou cestu), ale za to smazat ho muze bez problemu. To je co za skvelou featuru tohle chovani? Nebo co za novinku ve Fedore nechapu, ze mi to vubec nedava smysl? Muze me to nekdo prosim vysvetlit?
Řešení dotazu:
cd
test
objekty a,b,c
tak
carbon% mkdir test carbon% cd test carbon% touch a carbon% touch b carbon% mkdir c carbon% cd .. carbon% chmod 0666 test carbon% ls -l test ls: nelze přistoupit k 'test/a': Operace zamítnuta ls: nelze přistoupit k 'test/b': Operace zamítnuta ls: nelze přistoupit k 'test/c': Operace zamítnuta celkem 0 -????????? ? ? ? ? ? a -????????? ? ? ? ? ? b d????????? ? ? ? ? ? c carbon% chmod 777 test carbon% ls -l test celkem 0 -rw-r--r-- 1 a a 0 24. bře 16.14 a -rw-r--r-- 1 a a 0 24. bře 16.15 b drwxr-xr-x 1 a a 0 24. bře 16.15 cPrávo read umožní číst názvy v adresáři. právo x umožní číst a měnit inode.
x
je právo vstoupit do adresáře. Kdyby bylo pro čtení inode nutné právo x
, nepřečetl byste data z inode žádného nespustitelného souboru. A můžete si to vyzkoušet i v tom vašem příkladu – nechte si vypsat ls -l
a uvidíte, že vám to o adresáři test vypíše i údaje uložené v inode (oprávnění, uživatele, datum vytvoření atd.). ls -l test
selhává z toho důvodu, že abyste mohl přečíst data o test/a
, musíte nejdřív vstoupit do adresáře test
. A k tomu potřebujete právo x
na test
.
x
na adresáři neuděláte ani obyčejné cd
do toho adresáře, a k tomu není potřeba dělat nic s inody objektů, které jsou v adresáři – ten adresář dokonce může být prázdný. Právo x
opravdu znamená jen možnost vstoupit do adresáře, což je to, co v uživatelském prostoru dělá příkaz cd
. Důvod, proč se nedostanete k těm inodům přes tento adresář je ten, že byste do něj nejprve musel vstoupit, abyste se k nim dostal. Nic vám ale nebrání se k nim dostat přes jinou cestu (pokud existuje).
test % mkdir -p level1/level2 test % cd level1/level2 level2 % touch file level2 % ls -l total 0 -rw-r--r-- 1 filip filip 0 Mar 25 22:35 file level2 % chmod u-x ../ #adresáři level1 odeberu právo x level2 % ls -l total 0 -rw-r--r-- 1 filip filip 0 Mar 25 22:35 file #a pro zajímavost level2 % ls -l ../../ ls: cannot access ../../: Permission denied level2 % cd .. cd: permission denied: .. level2 % cd ../.. cd: permission denied: ../.. level2 % cd ~ %Jak je vidět, problém je opravdu v tom vstoupení do adresáře – pokud už v adresáři jsem nebo se do něj dostanu jinudy, právo
x
se mne nijak netýká.
r
. Představte si to tak, jak to bylo implementováno v prvních unixových souborových systémech – adresář je jenom zvláštní druh souboru, který má v „obsahu souboru“ uvedený seznam souborů, které jsou v tom adresáři. Když chcete číst obsah souboru (ať je to skutečný soubor nebo adresář), potřebujete k tomu právo r
. Když se na soubor odkazujete pomocí cesty, musíte jít po jednotlivých adresářích – vždy vstoupit do adresáře (na to potřebujete právo x
) a pak můžete zase o adresář níž nebo se dostanete ke konkrétnímu souboru. Pokud nemáte právo r
na nějaký adresář, ale máte na něj právo x
, můžete přečíst soubor v tom adresáři nebo vstoupit do podadresáře, pokud znáte jejich jména.
ls -l tmpa když už máte tu Fedoru
ll tmp
ls -ld tmp
Tiskni
Sdílej: