Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.90 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.90 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Byla vydána (Mastodon, 𝕏) nová verze 2024.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení.
Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.
MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.
Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.
Databáze DuckDB (Wikipedie) dospěla po 6 letech do verze 1.0.0.
Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.
Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.
Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.
Společnost Kaspersky vydala svůj bezplatný Virus Removal Tool (KVRT) také pro Linux.
Diskuse vznikla z vlákna této diskuse.
server:/home/TEST# ls -l celkem 8 drwxrwx---+ 2 petr Domain Users 4096 12. říj 16.22 aaa drwx------+ 2 petr Domain Users 4096 12. říj 16.22 bbb server:/home/TEST# server:/home/TEST# server:/home/TEST# server:/home/TEST# getfacl aaa # file: aaa # owner: petr # group: Domain\040Users user::rwx group::r-x group:public:rwx mask::rwx other::--- default:user::rwx default:group::r-x default:group:public:rwx default:mask::rwx default:other::--- server:/home/TEST# getfacl bbb # file: bbb # owner: petr # group: Domain\040Users user::rwx group::r-x #effective:--- group:public:rwx #effective:--- mask::--- other::--- default:user::rwx default:group::r-x default:group:public:rwx default:mask::rwx default:other::---
/home/TEST/bbb
jsem vytvoril jinde a nakopiroval do /home/TEST/
..ostatni uzivatele public
ale nemaji na soubor pristup pres Sambu.
/home/TEST/aaa
jsem vytvoril v /home/TEST/
a uzivatele public
jej mohou pouzit?
Kde je tedy problem?
Řešení dotazu:
server:/home/TEST# ls -l celkem 8 drwxrwx---+ 2 petr Domain Users 4096 12. říj 16.22 aaa drwx------+ 2 petr Domain Users 4096 12. říj 16.22 bbb server:/home/TEST# server:/home/TEST# server:/home/TEST# server:/home/TEST# getfacl aaa # file: aaa # owner: petr # group: Domain\040Users user::rwx group::r-x group:public:rwx mask::rwx other::--- default:user::rwx default:group::r-x default:group:public:rwx default:mask::rwx default:other::--- server:/home/TEST# getfacl bbb # file: bbb # owner: petr # group: Domain\040Users user::rwx group::r-x #effective:--- group:public:rwx #effective:--- mask::--- other::--- default:user::rwx default:group::r-x default:group:public:rwx default:mask::rwx default:other::---
/home/TEST/bbb
jsem vytvoril jinde a nakopiroval do /home/TEST/
..ostatni uzivatele public
ale nemaji na soubor pristup pres Sambu.
/home/TEST/aaa
jsem vytvoril v /home/TEST/
a uzivatele public
jej mohou pouzit?
Kde je tedy problem?
server:/home/TEST# getfacl aaa group:public:rwx mask::rwx server:/home/TEST# getfacl bbb group:public:rwx #effective:--- mask::---Stačilo si ten výpis pořádně prohlédnout – pro soubor
bbb
máte masku nastavenou na ---
. A ještě vám tam getfacl
píše efektivní práva do komentáře…
Příště prosím „neunášejte“ nesouvisející dotaz a když se ptáte na novou věc, zadejte to v Poradně jako nový dotaz.
/home/TEST
jsem vytvoril ACL prava stejne jako kolega. Jak tedy nastavit, aby /home/TEST
mel prava vzdy pro skupinu public rwx
a to v pripade, ze jakykoliv uzivatel /ktery ma pravo/ bude do slozky kopirovat, ci soubory a adresare vytvaret?
Default ACL
, které se nastavují přes parametr -d
setfacl
. Když soubory či adresáře kopírujete, záleží na konkrétním programu (ostatně každý program může nastavit i práva při vytvoření), ale normální chování je takové, že se z původního souboru zkopírují i práva (pokud o nich program ví – program, který nezná ACL a kopírování si implementuje po svém je samozřejmě neokopíruje).
getfacl TEST # file: TEST # owner: root # group: root user::rwx group::r-x group:public:rwx mask::rwx other::--- default:user::rwx default:group::r-x default:group:public:rwx default:mask::rwx default:other::---
aaa
v něm vytvořený je zdědil. Soubor bbb
jste odněkud zkopíroval, takže mu zůstala zachována ta práva, která měl původní soubor.
Možná to můžete obejít použitím incronu a každému novému souboru či adresáři ta práva automaticky nastavit.Naposledy když jsem zkusil incron tak jsem moc nadšený nebyl. To už je lepší použít inotifyutils. Ale proč se s tím kašlat, na resetování práv stačí normální cron jednou za 5 minut. Jinak k původnímu dotazu. Pokud neomezíte počet způsobů jak se tam ten soubor může dostat tak si nepomůžete ani s ACL. V unixu má každý právo si dělat se *svým* souborem co chce, včetně odepření přístupu ostatním nebo naopak zpřístupněním pro celý svět. Navíc jsou tu chuťovky typu že přesun souboru (mv) není totéž jako kopie a smazání, odkazy na tentýž soubor ze dvou míst (hardlinky) atp.
public
- Pepa
, Franta
, Jarda
1. Pepa nakopiruje nebo presune soubor do public - muze ho precist, smazat a presunout i Franta i Jarda 2. Franta nakopiruje nebo presune soubor do public - muze ho precist, smazat a presunout i Pepa i Jarda 3. Jarda nakopiruje nebo presune soubor do public - muze ho precist, smazat a presunout i Pepa i Franta
Lze to, co pozaduji nastavit pomoci ACL? ANO nebo NE?Určitě, uděláte to tak, že nastavíte ACL práva a masku jak mají být rekurzivně na všech souborech. Konec.
rwx
pro danou skupinu, a uživatelé z dané skupiny tam pak mohou vytvářet soubory, přesouvat je do ní, kopírovat je i mazat. Pokud uživatelé chtějí, aby k souboru měla přístup daná skupina, mohou tomu souboru ta práva nastavit.
V Linuxu se přístupová práva nastavují pro soubor, nikoli pro cestu, takže tam nemůže fungovat automatická dědičnost práv v hierarchii souborového systému. Třeba když máte jeden soubor ve dvou adresářích (pomocí hardlinku), která práva by dědil?
skupina2
nemá přístup, tak se k němu člen skupiny2
samozřejmě nijak nedostane. Ale vy jste psal o případu, kdy uzivatel1
vytvoří soubor, ke kterému dá skupině2
přístup.
>id uid=1001(uzivatel1) gid=1001(skupina1) skupiny=1002(skupina2),1003(skupina3) >touch test >ls -l test -rw-r--r-- 1 uzivatel1 skupina1 0 13. říj 17.47 test >chgrp skupina2 test >ls -l test -rw-r--r-- 1 uzivatel1 skupina2 0 13. říj 17.47 test >setfacl -m g:skupina3:rw- test >getfacl test # file: test # owner: uzivatel1 # group: skupina2 user::rw- group::r-- group:skupina3:rw- mask::rw- other::r--Členové
skupiny1
teď mají právo soubor test
číst, členové skupiny3
mají právo do něj zapisovat. Vám to funguje jinak?
cron
, incron
nebo něco podobného.
Požadavek je: "chci, aby ke všemu, co je v adresáři X měli neomezený přístup uživatelé A, B, C".Požadavek je jasný, a zaznělo na něj mnoho odpovědí. Konkrétně k vaší interpretaci zde zazněla včera tato odpověď, ze které je snad jasné, že požadavek „co je v adresáři“ je v Linuxu nesmyslný, protože v Linuxu takovýhle princip neexistuje. V Linuxu se nastavují práva souborům, a jeden soubor může být v několika adresářích, takže vlastnost „je [právě v jednom] adresáři“ není definována.
Nic "lepšího" už v linuxu není, takže co nejde udělat pomocí ACL, tak to "prostě nejde". A jedině to lze obejít pomocí nehezkých a nesystémových věcí typu cron/incron.To je pravda jen u DAC systémů (unix práva, ACL, ...) Pokud použijete MAC nástroje (selinux, smack, apparmor ...) tak si nastavení přístupu můžete vynutit centrální politikou bez ohledu na zbytek systému. Jedinej problém je ten, že použitím MAC se nezbavíte toho DAC a musíte to stejně podpořit cronem nebo nějakým jiným hackem (např. že každý MAC-uživatel vystupuje pod uid 0 a podobně).
Nicméně z odpovědí pana Jirsáka tady mám taky pocit, že nechce přiznat, že požadovanou věc prostě nelze snadno udělat.Já jsem několikrát napsal, že požadovaná věc nedává z hlediska unixového přístupu k souborovému systému žádný smysl. Nevím, jak chcete rozhodovat o tom, zda nesmyslné zadání má nebo nemá snadné řešení.
Já jsem několikrát napsal, že požadovaná věc nedává z hlediska unixového přístupu k souborovému systému žádný smysl. Nevím, jak chcete rozhodovat o tom, zda nesmyslné zadání má nebo nemá snadné řešení."Nejde to" se píše jinak ;)
co by váš požadavek ve skutečnosti znamenal: aby to mohlo fungovat, musel byste v daném adresáři zakázat jakoukoli změnu vlastníka/skupiny/právNe nutně. Je to spíš znak "nedokonalosti" unixových práv, resp. rozšíření "POSIX" ACL. NT ACLs resp. NFSv4 ACLs umí tzv. dědění, tj. na vše v libovolné hloubce pod určitým adresářem se aplikují jeho práva - "přidávají" se k těm nastaveným přímo na souboru. Na úrovni podadresářů lze dědění zastavit, ale běžným uživatelům jde tuto možnost odepřít. Jen nevím, jak přesně se potom chovají symbolické / pevné odkazy. Zásadní problém u POSIX ACL je právě to kopírování / přesouvání. Ale Windows ve spojení se Sambou se při kopírování/přesouvání chovají velmi rozumně, a výsledek zpravidla odpovídá očekávání. Naopak prosté kopírování pomocí cp nebo chování některých linuxových programů do práv dodatečně zasahuje, což pak použitelnost ACL snižuje. Nelze ale asi říct, který přístup je lepší.
Tiskni Sdílej: