Open source webový aplikační framework Django slaví 20. narozeniny.
V Brestu dnes začala konference vývojářů a uživatelů linuxové distribuce Debian DebConf25. Na programu je řada zajímavých přednášek. Sledovat je lze online.
Před 30 lety, tj. 14. července 1995, se začala používat přípona .mp3 pro soubory s hudbou komprimovanou pomocí MPEG-2 Audio Layer 3.
Výroba 8bitových domácích počítačů Commodore 64 byla ukončena v dubnu 1994. Po více než 30 letech byl představen nový oficiální Commodore 64 Ultimate (YouTube). S deskou postavenou na FPGA. Ve 3 edicích v ceně od 299 dolarů a plánovaným dodáním v říjnu a listopadu letošního roku.
Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila open source robota Reachy Mini (YouTube). Předobjednat lze lite verzi za 299 dolarů a wireless verzi s Raspberry Pi 5 za 449 dolarů.
Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.
McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.
Byla vydána (𝕏) červnová aktualizace aneb nová verze 1.102 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.102 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Byla vydána nová verze 2.4.64 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 8 bezpečnostních chyb.
Společnost xAI na síti 𝕏 představila Grok 4, tj. novou verzi svého AI LLM modelu Grok.
$ 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: