Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Ubuntu tietokoneissa => Aiheen aloitti: Snufkin - 14.08.25 - klo:14.46
-
Osaisiko joku selittää minulle (vaikka rautalangasta vääntäen), mikä on tuon ison S-kirjaimen funktio kansion käyttöoikeuksissa. Esim.
drwx--S---
tarkoittaa (ehkä) että ko. kansioon luodot tiedostot saavat sinne käyttöoikeuden -rw-rw---
. Mutta en ymmärrä miksi. Jos ryhmällä ei ole ko kansioon käyttöoikeuksia, niin voiko sillä silti olla sen alla olevaan tiedostoon? Mihin tällaista tarvitaan?
Tuolta koitin asiaan opiskella.
https://www.redhat.com/en/blog/suid-sgid-sticky-bit
-
Linuxin tiedosto-oikeuksissa iso S (käyttäjäryhmän tai muiden kohdalla) tarkoittaa sitä, että setgid-bitti on asetettu, mutta suoritusoikeutta (x) ei ole.
Tarkemmin selitettynä:
Kun suoritusoikeus (x) on asetettu, setgid-bitti näkyy pienenä s-kirjaimena: drwx--s---. Tällöin tiedosto perii sen ryhmän oikeudet, joka omistaa kansion tai tiedoston.
Kun suoritusoikeutta (x) ei ole, setgid-bitti näkyy isona S-kirjaimena: drwx--S---. Tämä tarkoittaa, että setgid on asetettu, mutta se ei ole toiminnassa. Koska ryhmällä ei ole suoritusoikeutta, perittyjä oikeuksia ei voida hyödyntää.
Toisin sanoen, iso S-kirjain on merkki potentiaalista, jonka käyttö on estetty suoritusoikeuden puuttumisen vuoksi. Se on harvinaisempi ja usein ei-toivottu tila.
-
Tarkoittaako tuo, että jos kansion oikeuksissa Groupilla on vain tuo S, ja siten kansion alle luotuun tiedostoon muodostuu Groupille rw, niin kansiota ei pääse selaamaan, mutta jos tietää yksittäisen tiedoston nimen (ja polun) niin sitä voi lukea ja kirjoittaa?
-
Se on harvinaisempi ja usein ei-toivottu tila.
Täytyipä kokeilla, koska itselläni tilanne ei ole ollut mitenkään harvinainen.
Ilmeisesti helppo tapa saada tuo aikaiseksi on tällainen:
- asetetaan kokeiluun käytettävälle tunnukselle umask 077 (= tiedostoja ja kansioita luotaessa oikeudet tulevat vain käyttäjälle itselleen) – tämä on minulla vakio, mikä saattaa olla syynä siihen, että törmään ongelmaan usein
- luodaan kansio, jonka omistaja on esimerkiksi root (tai ainakin mikä tahansa muu kuin kokeiluun käytettävä tunnus) ja omistava ryhmä sellainen, johon kokeiluun käytettävä tunnus kuuluu, ts. esim. root:staff (jos tunnus kuuluu staffiin)
- annetaan kansiolle oikeudet 6775 (= rwxrwsr-x) eli asetetaan tarrabitti ryhmälle ja
- lopuksi siirrytään kansioon kokeilutunnuksella ja luodaan uusi alikansio.
Tällöin ilmeisesti umaskin ja tarrabitin ristiriidan seurauksena ryhmän oikeuksiksi tulee --S.
En ole aivan varma, tarvitaanko ongelmaan törmäämiseksi kaikkea yllä mainittua, mutta ainakin tuolla tavoin tuntuu onnistuvan säännöllisesti.
-
Tää pohdinta tuli vastaan yhdellä kurssilla, kun käytän ulkoista Linux-tietokonetta SSH:lla ja siellä luotuihin kotikansioihin alustuu automaattisesti tuo drwx--S--- , vaikka asettaa oikeudet chmod 700 . Se siis periytynee jostain ylempää.
Tuohon ryhmään kuulunee sitten muita opiskelijoita ja kurssin vetäjä. En tiedä onko jossain vaiheessa tarpeen ajaa muiden tekemää koodia tms. ja voisiko se olla syy tällaiseen. Tai pitääkö kurssin opettajalla olla tuo oikeus.
-
Tässä vielä ls -al tulostus (hieman muokattuna). Siitä ilmenee, että ko. kansioon (.) on oikeus vain käyttäjällä, mutta sitten sen alle luotuihin kansioihin (Harj1) ja tiedostoihin (test.c) myös ryhmällä, samoin kuin ajo-oikeus. Mitään chmod-muutoksia ei ole noihin tehty.
drwx--S--- 12 user project 4096 14. 8. 14:59 .
drwxrws--- 2 user project 4096 14. 8. 14:59 Harj1
-rw-rw---- 1 user project 452 14. 8. 14:59 testi.c
-rwxrwx--- 1 user project 452 14. 8. 14:59 a.out
-
- asetetaan kokeiluun käytettävälle tunnukselle umask 077 (= tiedostoja ja kansioita luotaessa oikeudet tulevat vain käyttäjälle itselleen) – tämä on minulla vakio, mikä saattaa olla syynä siihen, että törmään ongelmaan usein
Onko tuolla umask'lla väliä, jos vain yhden käyttäjän kone, jossa ei ole mitäänpalvelimia tms.?
-
Onko tuolla umask'lla väliä, jos vain yhden käyttäjän kone, jossa ei ole mitäänpalvelimia tms.?
Se on tietysti niin ja näin. Itse olen kokenut, että koko ajatus erillisistä käyttäjätunnuksista on aika turha, jos kaikki kuitenkin näkevät toistensa kaikki tiedostot. Mieluummin hoidan näkymisen ryhmien kautta tapauskohtaisesti.
-
Onko tuolla umask'lla väliä, jos vain yhden käyttäjän kone, jossa ei ole mitäänpalvelimia tms.?
Se on tietysti niin ja näin. Itse olen kokenut, että koko ajatus erillisistä käyttäjätunnuksista on aika turha, jos kaikki kuitenkin näkevät toistensa kaikki tiedostot. Mieluummin hoidan näkymisen ryhmien kautta tapauskohtaisesti.
Mutta yhden käyttäjän koneessa ei ole kuin yksi käyttäjä (+root).
-
Mutta yhden käyttäjän koneessa ei ole kuin yksi käyttäjä (+root).
Minulla on yleensä vähintään kaksi, usein kolme: oma varsinainen tunnus, puhtaana pidettävä koekäyttäjätunnus kokeiluihin ja ”karaoketunnus”, jota voi pitää auki vieraille.