Co znamená písmeno S
níže? Jedná se o složku.
Četl jsem zde , že velká písmena S
mohou představovat, že bit setgid
je aktivní pro binární spustitelný soubor . Ale tohle je složka. Znamená to stále, že je aktivován bit setgid
? Pokud ano, co to znamená?
To znamená, že jakýkoli soubor vložený do složky bude mít skupinu vlastnící složku.
Například: Předpokládejme, že máte složku nazvanou „sdílená“, která patří uživateli „intrpc“ a skupinu „users“, a vy do ní (jako uživatel „initrpc“) zahodíte soubor. Výsledkem bude, že soubor bude patřit uživateli „intrpc“ a skupině „users“, bez ohledu na primární skupinu „initrpc“.
Ve většině systémů, pokud je nastaven bit sady ID skupiny v adresáři, nově vytvořené podsoubory zdědí stejnou skupinu jako adresář a nově vytvořené podadresáře zdědí bit sady ID skupiny nadřazeného adresáře.
Můžete si o tom přečíst zde .
Proč je velká písmena (z odkazu, který jste uvedli)?
setgid nemá žádný účinek, pokud skupina nemá oprávnění ke spuštění. setgid je ve výstupu ls reprezentován malými písmeny "s". V případech, kdy to nemá žádný účinek, je reprezentováno velkým písmenem „S“.
Velká písmena S je způsobena tím, že adresář nemá oprávnění ke spuštění skupiny. Svým způsobem to znamená „chybu“, jak říkáte:
nově vytvořené podsoubory zdědí stejnou skupinu jako adresář a nově vytvořené podadresáře zdědí bit sady ID skupiny nadřazeného adresáře.
(zdroj: https://www.gnu.org/software/coreutils/manual/html_node/Directory-Setuid-and-Setgid.html )
Odepíráte však oprávnění členům skupiny vstoupit do adresáře.
https://en.wikipedia.org/wiki/Setuid#When_set_on_a_directory
Nastavení oprávnění setgid v adresáři ("chmod g + s") způsobí, že nové soubory a podadresáře vytvořené v něm zdědí své ID skupiny, nikoli ID primární skupiny uživatele, který soubor vytvořil (ID vlastníka není nikdy ovlivněno, pouze ID skupiny).
Pokud je nastaven bit set-user-ID nebo set-group-ID a odpovídající spustitelný bit.
„S“ Pokud je nastaven bit ID uživatele nebo ID skupiny, ale odpovídající spustitelný bit není nastaven.