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.
FlappyFavi, hra Flappy Bird v ikoně Favicon. Nefunguje na mobilech.
Byly vyhlášeny výsledky (YouTube) 28. ročníku D.I.C.E. (Design, Innovate, Communicate, Entertain) Awards: Hrou roku 2024 je Astro Bot.
Všem na AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (I love Free Software Day, Mastodon, 𝕏).
Vývojáři openSUSE Tumbleweed oznámili, že u nových instalací se ve výchozím stavu přechází z AppArmor na SELinux. Uživatelé, kteří chtějí zůstat na AppArmor si mohou AppArmor vybrat v instalátoru.
Hector "marcan" Martin skončil jako vedoucí projektu Asahi Linux aneb Linux na Apple Siliconu. Projekt ale pokračuje dál.
PostgreSQL byl vydán ve verzích 17.3, 16.7, 15.11, 14.16 a 13.19. Řešena je zranitelnost CVE-2025-1094 s CVSS 8.1 a více než 70 chyb.
Dnes je Světový den rádia. Použili jste někdy GNU Radio?
Před 33 lety, ve čtvrtek 13. února 1992, se tehdejší Česká a Slovenská Federativní Republika oficiálně (a slavnostně) připojila k Internetu.
Byla vydána nová verze 9.10 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.
Linux je víceuživatelský systém a je proto nutné zajistit, aby mi ostatní nemohli měnit, číst moje dokumenty. Pokud jim to tedy výslovně nepovolím. Každý soubor (i adresář) v Linuxu má přidělená práva, která upravují práci se souborem.
Příkaz ls
vypisuje obsah zadaného adresáře. Přídáním parametru -l
si zobrazíme podrobnější informace, včetně práv.
ls bsd.txt Desktop dnsping linux.txt ls -l celkem 16 -rw-r--r-- 1 misak users 23 zář 1 23:06 bsd.txt drwxr-xr-x 2 misak users 4096 zář 1 23:08 Desktop -rwxr-xr-x 1 misak users 443 zář 1 23:08 dnsping -rw-r--r-- 1 misak users 33 zář 1 23:05 linux.txt
Práva jsou uvedená v prvním sloupci. První znak označuje typ souboru, pomlčka '-' označuje normální soubor, 'd' adresář, dále 'l' je symbolický odkaz, 'c' znakové zařízení, 'b' blokové zařízení a 'p' je pojmenovaná roura (pokud nevíte, co jednotlivé typy znamenají, přečtěte si předešlou kapitolu: Soubory v Linuxu, zvláště pak část Speciální soubory).
Za typem je potom devět znaků, které symbolizují práva. Vždy jsou vypsány v pořadí právo pro čtení 'r', právo pro zápis 'w' a právo pro spuštění 'x'. Na úrovni adresářů 'r' značí, že je možné vypsat seznam souborů, 'w', že je možné do adresáře soubory přidávat nebo je z něj odebírat a 'x', že adresář smí být součástí cesty. První trojice je nastavení platné pro vlastníka souboru (třetí sloupeček - misak), druhá pro skupinu (čtvrtý - users) a poslední pro ostatní. Vlastník souboru je uživatel, který jej vytvořil (nebo bylo na něj vlastnictví převedeno příkazem chown
) a obvykle má největší pravomoci. Skupina usnadňuje sdílení souborů mezi uživateli. Můžeme zvýšit práva lidem jen ze svojí skupiny a ne těm, kteří tam nepatří.
Linux bere soubor jako spustitelný jen tehdy, když má nastavená práva pro spuštění. Tento systém má své kouzlo v tom, že spustitelný soubor může být jakéhokoli typu (binární soubor, skript v shellu), ale z hlediska jeho spouštění je to úplně jedno. U skriptů je podmínka, aby měly na prvním řádku uvedený interpret, který je bude provádět (#!/bin/sh
, nebo přenositelněji /usr/bin/env python
) a binární soubor musí být podporován jádrem (nejpoužívanější je elf
, starším formátem je a.out
).
Soubor, který je uložený v adresáři, do něhož mají všichni povolen zápis může také kdokoliv smazat. Někdy se hodí, kdyby jej mohl mazat pouze vlastník souboru a nikdo jiný. Typickým představitelem je adresář /tmp
. Tento adresář má nastavený sticky (lepkavý) bit, který se nastavuje příkazem chmod +t
a ve výpisu příkazu ls
je vidět takto:
drwxrwxrwt 39 root root 3704 zář 6 21:15 tmp
Program spuštěný uživatelem má stejná práva, jako uživatel sám. To znamená, může modifikovat jen ty soubory k nimž má uživatel právo zápisu. Existuje několik případů, kdy je nutné, aby uživatelem spuštěný program běžel pod jiným účtem (zpravidla s vyššími právy). Typickým příkladem je příkaz passwd
pro změnu hesla uživatele. Ten musí modifikovat soubor /etc/shadow
, kde jsou uložené hashe hesel. Tento soubor není, z pochopitelných důvodů, zapisovatelný pro běžné uživatele. Program passwd má nastaven příznak suid a vlastní jej uživatel root
. Program po svém spuštění má práva uživatele root, přestože jej spustil jiný uživatel. Příznak se nastaví příkazem chmod u+s
, ls
jej pak ukazuje následovně:
ls -l /bin/passwd -rws--x--x 1 root root 32108 čec 11 14:30 /bin/passwd
Existuje také podobný příznak setgid, který mění skupinu. Není tolik používán u souborů, ale u adresářů, kdy po aplikaci tohoto příznaku patří všechny nově vytvořené soubory do určené skupiny a ne do uživatelově hlavní. Nastaví se příkazem chmod g+s
a výpis vypadá následovně:
drwxr-sr-x 3 root users 4096 zář 1 23:14 foo
Práva jsou na systémové úrovni reprezentována jako čtyři čísla v rozsahu od 0 až po 7 (tj. tři bity). Tyto číslice reprezentují speciální práva, uživatelská, skupinová a ostatních. Právo pro čtení má hodnotu 4, pro zápis 2 a pro spuštění 1. Jejich součtem potom získáme součtem těchto hodnot. Hodnota 7 (4+2+1) označuje všechna práva, hodnota 5 (4+1) značí právo pro čtení a spuštění. Hodnota 0 pak, celkem logicky, určuje žádná práva.
Speciální práva jsou ohodnocena následovně. 4 je setuid, 2 je setgid a 1 je sticky bit.
Kompletní nastavení adresáře /tmp
se tedy dá provést:
# zdlouhavější způsob chmod a+rwx /tmp chmod +t /tmp # rychlejší způsob chmod 1777 /tmp
Změnu vlastníků lze pak provádět pod rootem následně:
chown -cR uzivatel:skupina /tmp # -cR mění práva rekurzivně i v podadresářích
Jemnější nastavení práv umožňuje ACL, viz příkazy getfacl
a setfacl
.
Dokument vytvořil: vladka, 29.8.2005 11:55 | Poslední úprava: Nicky726, 4.3.2009 09:54 | Další přispěvatelé: Ash, Petr "Glubo" Sýkora | Historie změn | Zobrazeno: 62317×
Tiskni
Sdílej: