Miten projektin ja scratchin tiedostooikeudet toimivat?
CSC asettaa projekti- ja scratch-hakemistojen oikeudet siten, että kaikilla projektin jäsenillä on pääsy kansioihin. Tarkemmin sanottuna kansiot ovat järjestelmänvalvojan tilin omistuksessa, mutta niihin liitetyllä Unix-ryhmällä on luku- ja kirjoitusoikeudet. Lisäksi set GID -oikeus on käytössä, jotta kaikki uudet tiedostot ja kansiot ovat oletusarvoisesti projektiryhmän omistuksessa. Huomaa, että myös set GID -oikeus periytyy kaikkiin uusiin kansioihin.
Voit tarkistaa oikeudet komennolla ls -l. Alikansion oikeat
oletusoikeudet ovat drwxrws---. Huomaa pieni s-kirjain
ryhmän oikeuksissa x:n sijaan. Jos näet sen sijaan ison S:n,
hakemistolla ei ole suoritusoikeutta, jota tarvitaan ryhmätason käyttöön.
Jos minkä tahansa alihakemiston set GID -oikeus poistetaan tarkoituksella tai vahingossa, kaikki kyseisen alihakemiston sisällä olevat uudet tiedostot ja kansiot ovat käyttäjän oletusarvoisen henkilökohtaisen ryhmän omistuksessa, eivätkä muut ryhmän jäsenet voi käyttää niitä. Jos käyttöoikeus tarvitaan, näiden tiedostojen ja kansioiden omistajan tulee vaihtaa ryhmä ja korjata oikeudet. Huomaa, että monet työkalut ja asennusskriptit muuttavat oletusoikeuksia.
Esimerkki puuttuvasta SGID-oikeudesta:
[maijam@puhti project_2009999]$ mkdir -m 00770 demofolder
[maijam@puhti project_2009999]$ ls -l
total 0
drwxrwx---. 2 maijam project_2009999 4096 Feb 15 14:52 demofolder
[maijam@puhti project_2009999]$ touch demofolder/my-file
[maijam@puhti project_2009999]$ ls -l demofolder/
total 0
-rw-rw----. 1 maijam maijam 0 Feb 15 14:52 my-file
[maijam@puhti project_2009999]$ chmod g+s demofolder/
[maijam@puhti project_2009999]$ ls -l
total 0
drwxrws---. 2 maijam project_2009999 4096 Feb 15 14:52 demofolder
[maijam@puhti project_2009999]$ touch demofolder/my-other-file
[maijam@puhti project_2009999]$ ls -l demofolder/
total 0
-rw-rw----. 1 maijam maijam 0 Feb 15 14:52 my-file
-rw-rw----. 1 maijam project_2009999 0 Feb 15 14:53 my-other-file
Esimerkki oikeuksien korjaamisesta:
[maijam@puhti project_2009999]$ chgrp -R project_2009999 demofolder/
[maijam@puhti project_2009999]$ lfs find demofolder -type d -0 | xargs -0 chmod 2770
[maijam@puhti project_2009999]$ lfs find demofolder -type f -0 | xargs -0 chmod g+rwX
Lisätietoja Linuxin tiedostooikeuksista Red Hatin dokumentaatiossa: Linux-oikeudet: SUID, SGID ja sticky bit.