Na Crowd Supply běží kampaň na podporu open source čtečky elektronických knih Open Book Touch. Postavena je na ESP32-S3. Má 4,26palcový dotykový e-papírový displej s rozlišením 480×800 pixelů, podsvícení, slot na microSD kartu. Cena je 149 dolarů a poštovné 12 dolarů. Dodání je plánováno na duben 2027.
Na Humble Bundle běží akce Linux: All the Things by O'Reilly a Picos, HATs, and More by Raspberry Pi Press. Elektronické knihy lze koupit se slevou a současně podpořit organizace Code for America a Raspberry Pi Foundation.
FreeCAD (Wikipedie), tj. svobodný multiplatformní parametrický 3D CAD, má nový vtipný a současně užitečný doplněk Banana For Scale (GitHub). Aktuálně umožňuje do výkresu vložit banán nebo plechovku pro porovnání a určení měřítka.
Blender Studio nedávno oznámilo plán vytvořit svůj první otevřený (open source) celovečerní film. Film by se měl jmenovat Overgrown (YouTube). Film vznikne, pokud se zajistí financování. Prvním krokem je získat 7 000 předplatitelů Blender Studia. Cena je od 11,50 eur měsíčně. Aktuálně počet předplatitelů je 5 289. Předplatné pokryje 20 % nákladů. Zbytek, 80 % nákladů, má být financován externími producenty nebo distributory.
Byl vydán Debian 13.6, tj. šestá opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.15, tj. poslední patnáctá opravná verze Debianu 12 s kódovým názvem Bookworm, k dispozici je LTS. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
V jádře Linux byla nalezena a v upstreamu již byla opravena kritická zranitelnost GhostLock aneb CVE-2026-43499. Lokálnímu uživateli umožňuje získat práva roota a také obejít kontejnerovou izolaci. Zranitelnost existovala v Linuxu 15 let, tj. od roku 2011, od Linuxu verze 2.6.39.
Evropská komise předběžně shledala, že návykový design aplikací Instagram a Facebook od americké společnosti Meta porušuje unijní nařízení o digitálních službách (DSA). Návykový design zahrnuje například takzvané nekonečné posouvání, automatické přehrávání videí, tzv. push notifikace, kdy aplikace uživatele vybízí k návratu do jejího prostředí, či vysoce personalizovaný algoritmus, který rychle pozná, co uživatele baví a snaží
… více »Byla vydána verze 1.97.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Švýcarská společnost Punkt. má nově v nabídce telefon Punkt. MC03. Telefon byl navržen ve Švýcarsku s důrazem na soukromí a digitální suverenitu a vyroben v Německu. V telefonu běží operační systém AphyOS (Apostrophy OS) založený na AOSP (Android Open Source Project) 15. Cena telefonu je 745 eur.
TypeScript (Wikipedie), tj. JavaScript rozšířený o statické typování a další atributy, byl vydán v nové verzi 7.0. Kompilátor byl kvůli výkonu přepsán z TypeScriptu do Go.
adduser pepa
adduser lojza
Vytvořím skupinu "sdileni":
groupadd sdileni
a oba uživatele do té skupiny přiřadím:
usermod -G sdileni pepa
usermod -G sdileni lojza
Pro informaci si ověřím, že tu skupinu mají oba nastavenou:
id pepa
uid=1001(pepa) gid=1002(pepa) groups=1002(pepa),1004(sdileni)
id lojza
uid=1002(lojza) gid=1005(lojza) groups=1005(lojza),1004(sdileni)V Pepově adresáři vytvořím složku a v ní první pokusný soubor:
mkdir /home/pepa/sdilenaslozka
nano /home/pepa/sdilenaslozka/soubor.txt
Protože všechno dělám jako root, nastavím téhle složce vlastnictví pro Pepu a skupinu na "sdileni"
chown -R pepa /home/pepa/sdilenaslozka/
chgrp -R sdileni /home/pepa/sdilenaslozka/
A ještě nastavím celé složce maximální přístupová práva pro skupinu a vlastníka (ostatní uživatelé jsou bez práva)
chmod -R 770 /home/pepa/sdilenaslozka
Pro informaci detailní výpis:
cd /home/pepa/
ls -hasl1
4.0K drwxrwx--- 2 pepa sdileni 4.0K Jan 6 16:29 sdilenaslozkaA teď chci, aby i Lojza měl přístup k té sdílené složce a všemu co se v ní nachází. Proto mu do jeho home adresáře tu sdílenou složku přilinkuji:
ln -s /home/pepa/sdilenaslozka/ /home/lojza/
Když se přihlásím jako "lojza", tak všechno funguje jak má, můžu ve sdílené složce provádět s existujícími soubory libovolnou činnost.
Stejně tak, když se přihlásím jako "pepa", tak také mohu ve sdílené složce s existujícími soubory dělat co chci.
Problém je ale s novými soubory, které může upravovat a číst jen autor.
To se dá ale vyřešit tím, že se po uložení souboru provede změna práv a změna skupiny toho vytvořeného souboru.
Například když Lojza vytvoří nový soubor:
nano /home/lojza/sdilenaslozka/prispevek_od_lojzy.txt
tak má soubor nastaveny tyto atributy:
4.0K -rw-r--r-- 1 lojza lojza 6 Jan 6 17:08 prispevek_od_lojzy.txtTakže se musí ještě nastavit:
chmod 770 /home/lojza/sdilenaslozka/prispevek_od_lojzy.txt
chgrp sdileni /home/lojza/sdilenaslozka/prispevek_od_lojzy.txt
protože jinak by ten soubor Pepa neotevřel.
Řešení dotazu:
sgid bit a jako vlastníka tu sdílenou skupinu. Nově vytvářené soubory v tomto adresáři pak nebudou mít skupinu uživatele, který soubor vytvořil, ale převezmou ji z toho nadřazeného adresáře.
chmod g+s /home/pepa/sdilenaslozka/
Složka "sdilenaslozka" má pak tyto atributy:
4.0K drwxrws--- 2 pepa sdileni 4.0K Jan 6 18:53 sdilenaslozkaU nově vytvořených souborů se nastaví automaticky skupina na "sdileni", ale práva souboru zůstávají pořád nedostatečná:
4.0K -rw-r--r-- 1 pepa sdileni 11 Jan 6 18:53 vytvoril_pepa.txt
umask – nastavuje se tam, které bity se mají při vytváření souboru odebrat. V /etc/profile si to můžete přenastavit na hodnotu 002, která odebírá právo zápisu jen ostatním. Nyní zřejmě máte nastaveno 022, které odebírá práva zápisu ostatním i skupině.
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
if [ "`id -u`" -eq 0 ]; then
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
export PATH
if [ "$PS1" ]; then
if [ "$BASH" ] && [ "$BASH" != "/bin/sh" ]; then
# The file bash.bashrc already sets the default PS1.
# PS1='\h:\w\$ '
if [ -f /etc/bash.bashrc ]; then
. /etc/bash.bashrc
fi
else
if [ "`id -u`" -eq 0 ]; then
PS1='# '
else
PS1='$ '
fi
fi
fi
if [ -d /etc/profile.d ]; then
for i in /etc/profile.d/*.sh; do
if [ -r $i ]; then
. $i
fi
done
unset i
fi
/etc/profile je normální shell skript, který se spouští každému uživateli po každé, když spustí shell. Můžete si do něj (např. na konec) přidat spuštění příkazu, v tomto případě umask 002. Případně ten skript spouští všechny soubory s příponou sh v adresáři /etc/profile.d/. Takže bych si vytvořil soubor /etc/profile.d/umask.ss a do něj zadal jen
umask 002
Řešit sdílení přes skupiny má určitá úskalí.
Například umask, ke které jste se se dopracovali, se uplatní na všechny vytvářené soubory. Nejen na ty, které budou ve sdíleném adresáři. Je pravda, že současné distribuce právě z tohoto důvodu dávají uživatelům jedinečnou primární skupinu, ale i tak je dobré na to myslet.
Je-li uživatel jednou členem skupiny a není-li souborovým systémem zakázána interpretace SGID bitu, je nemožné uživatele ze skupiny vyloučit, protože uživatel si před odebráním členství může vytvořit SGID program a ten po odebrání členství použít k neoprávněnému získání členství.
Jako lepší řešení lze použít ACL. Namísto SGID bitu sdíleným adresářům se nastaví default ACL, které se pak používá na nově vytvářené soubory. Rovněž je možné přidat přístup konkrétním uživatelům namísto přidání skupiny a uživatelů do skupiny.
"Rovněž je možné přidat přístup konkrétním uživatelům namísto přidání skupiny a uživatelů do skupiny"
Můžeš to rozvést? Zajímá mě to, díky.Příklad:
petr@album:/tmp $ echo text >/tmp/soubor petr@album:/tmp $ chmod 0400 /tmp/soubor root@album:/usr/src/linux-4.14.12 # su -c 'cat /tmp/soubor' blb cat: /tmp/soubor: Operace zamítnuta petr@album:/tmp $ setfacl -m u:blb:r /tmp/soubor root@album:/usr/src/linux-4.14.12 # su -c 'cat /tmp/soubor' blb text petr@album:/tmp $ getfacl /tmp/soubor getfacl: Removing leading '/' from absolute path names # file: tmp/soubor # owner: petr # group: users user::r-- user:blb:r-- group::--- mask::r-- other::---
Přečti si acl(5), nástroje se jmenují setfacl(1) a getfacl(1). Případně si do vyhledávače zadej „POSIX Access Control List“.
rwx) i dalším uživatelům a skupinám, ne jenom vlastníkovi.
Tiskni
Sdílej: