Na WWDC25 byl představen balíček Containerization a nástroj container pro spouštění linuxových kontejnerů na macOS. Jedná se o open source software pod licencí Apache 2.0 napsaný v programovacím jazyce Swift.
Do 16. června do 19:00 běží na Steamu přehlídka nadcházejících her Festival Steam Next | červen 2025 doplněná demoverzemi, přenosy a dalšími aktivitami. Demoverze lze hrát zdarma.
Apple na své vývojářské konferenci WWDC25 (Worldwide Developers Conference, keynote) představil řadu novinek: designový materiál Liquid Glass, iOS 26, iPadOS 26, macOS Tahoe 26, watchOS 26, visionOS 26, tvOS 26, nové funkce Apple Intelligence, …
Organizátoři konference LinuxDays 2025, jež proběhne o víkendu 4. a 5. října 2025 v Praze na FIT ČVUT, spustili přihlašování přednášek (do 31. srpna) a sběr námětů na zlepšení.
Po roce byla vydána nová stabilní verze 25.6.0 svobodného multiplatformního multimediálního přehrávače SMPlayer (Wikipedie).
DNS4EU, tj. evropská infrastruktura služeb DNS založená na vysoce federovaném a distribuovaném ochranném ekosystému, byla spuštěna v testovacím režimu [𝕏]. Na výběr je 5 možností filtrování DNS.
Skriptovací programovací jazyk PHP (PHP: Hypertext Preprocessor, původně Personal Home Page) dnes slaví 30 let. Přesně před třiceti lety, 8. června 1995, oznámil Rasmus Lerdorf vydání PHP Tools (Personal Home Page Tools) verze 1.0.
Ve středu v 17:00 byl ve Francii zablokován přístup k PornHubu a dalším webům pro dospělé. K 17:30 došlo k nárůstu počtu registrací Proton VPN o 1 000 % [𝕏]. Dle nového francouzského zákona jsou provozovatelé těchto webů povinni ověřovat věk uživatelů prostřednictvím průkazu totožnosti nebo platební karty.
Před 32 lety, 6. června 1993, byl spuštěn první český WWW server (ještě pod TLD .cs), pro potřeby fyziků zabývajících se problematikou vysokých energií.
Střílečku Borderlands 2 lze v rámci výprodeje série Borderlands na Steamu získat zdarma napořád, když aktivaci provedete do 8. června 19:00.
$ 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: