Ero sivun ”Kansion yhteiskäyttö ryhmässä” versioiden välillä
Siirry navigaatioon
Siirry hakuun
Toinen asettelu, vaihtakaa takaisin jollei miellytä. Joka tapauksessa joitakin esimerkkejä ehkä kannattaa siirtää takaisin
LP (keskustelu | muokkaukset) (Toinen asettelu, vaihtakaa takaisin jollei miellytä. Joka tapauksessa joitakin esimerkkejä ehkä kannattaa siirtää takaisin) |
|||
Rivi 5: | Rivi 5: | ||
* kotona, jos vaikkapa jokaisella perheenjäsenellä on oma käyttäjätunnus, mutta halutaan silti pitää tietyssä hakemistossa yhteinen multimedia-arkisto, joihin kaikilla on luku- ja kirjoitusoikeus. | * kotona, jos vaikkapa jokaisella perheenjäsenellä on oma käyttäjätunnus, mutta halutaan silti pitää tietyssä hakemistossa yhteinen multimedia-arkisto, joihin kaikilla on luku- ja kirjoitusoikeus. | ||
== Perinteinen | ==Perinteinen järjestely== | ||
Perinteinen asetelma on, että tietokoneen varsinaiset käyttäjät kuuluvat yhteen ryhmään ("users") tai että usein yhteistyötä tekevät kuuluvat samaan hallinnollisen jaon mukaiseen ryhmään ("asiakaspalvelu"). Tässä asetelmassa yleensä käytetään [[umask]]-arvoa 027, jolloin ryhmällä on lukuoikeudet, muttei kirjoitusoikeuksia, uusiin tiedostoihin. | |||
Jotta väljä umask ei haittaisi, henkilökohtaiset tiedostot laitetaan hakemistoihin, joiden käyttöoikeudet on käsin rajattu tai oikeudet rajoitetaan tiedostokohtaisesti. Kotihakemiston lukuoikeus voi myös olla hyvä poistaa: | |||
[[chmod]] go=x ~/. | |||
chmod go= ~/salainen | |||
chmod go= ~/.netrc | |||
===Uusi ryhmä ja sgid=== | |||
Jos yhteistyötä tekevät eivät ennestään kuulu samaan ryhmään, perustetaan uusi ryhmä, johon yhteistyötä tekevät liitetään. Koska tämä ryhmä ei ole käyttäjien ensisijainen ryhmä, uudet tiedostot pitää joko erikseen siirtää kyseisen ryhmän omistukseen tai yhteiseen hakemistoon on asetettava [[sgid]]-bitti ("Set Group IDentity"), jolloin uudet tiedostot perivät hakemiston ryhmän ja alihakemistot myös sgid-bitin. | |||
mkdir /export/leffat | |||
[[chgrp]] perhe /export/leffat | |||
chmod ug=rwx,o= /export/leffat | |||
chmod g+s /export/leffat | |||
Nyt tähän hakemistoon ei ole pääsyä kuin ryhmällä perhe, mutta perheen jäsenet voivat luoda, muokata ja poistaa tiedostoja hakemistosta. Uusi tiedosto tai alihakemisto saa omistajakseen sen luojan ja ryhmäkseen ryhmän perhe. | |||
''Huom! Tiedostojen g+s on eri asia kuin hakemistojen g+s. Jos tiedostolle asettaa g+s:n, se tarkoittaa sitä, että kun tiedosto suoritetaan, se suoritetaan tiedoston ryhmän oikeuksin (jos kyseessä siis on tietokoneohjelma). ''g+s'' pitääkin asettaa nimenomaan hakemistoille.'' | |||
===Toimivuus=== | |||
Ryhmällä ei ole oikeuksia muuta kuin mitä tiedoston luoja sille antaa (käyttäjän [[umask]] määrää oletusoikeudet). Jos käyttäjällä on umask 027 tai vastaava, joka antaa ryhmälle lukuoikeudet, kuka tahansa ryhmästä voi kopioida tiedoston ja tallettaa sen uudestaan haluamillaan oikeuksilla, mahdollisesti muokkauksen jälkeen. Kirjoitusoikeuksien puuttuminen ei siis käytännössä estä muita muokkaamasta tiedostoa. | |||
Ongelmia tulee silloin, kun jollakin käyttäjällä on tiukempi umask, joka ei automaattisesti anna muille lukuoikeuksia. Vastaava tilanne syntyy, kun tiedosto siirretään muualta, jolloin ryhmä ja oikeudet pysyvät entisellään. Tällöin käyttäjän on aina muistettava asettaa oikeudet sallivammiksi tai root (mahdollisesti ajastetun työn muodossa) joutuu korjaamaan oikeuksia. | |||
Liian väljä umask ei haittaa tässä yhteydessä, koska mahdollisesti salassapidettävät tiedostot pysyvät salassa hakemiston oikeuksien turvin, kuhan ryhmään kuulumattomilla ei ole oikeuksia hakemistoon. Salassapidettäviä ja julkisia tiedostoja ei kannata pitää samassa hakemistossa. | |||
===Rajoitettu kirjoitusoikeus=== | |||
Jos yhteisessä hakemistossa pidetään tiedostoja, joita ei haluta muiden tuhoavan, hakemistolle voi asettaa t-bitin. Tällöin kirjoitusoikeus hakemistoon ei riitä poistamaan muiden tiedostoja. | |||
chmod +t /export/leffat | |||
== Oikeuksien ja omistajuuden korjaaminen == | |||
=== Setgidin käyttöönottaminen näppärästi === | |||
== Setgidin käyttöönottaminen näppärästi == | |||
1. Anna hakemisto ryhmän omistukseen: | 1. Anna hakemisto ryhmän omistukseen: | ||
sudo [[chgrp]] -R tiimi / | sudo [[chgrp]] -R tiimi /export/tiimihakemisto | ||
2. Aseta hakemistoille oikeudet JA setgid-bitti | 2. Aseta hakemistoille oikeudet JA setgid-bitti | ||
sudo [[find]] / | sudo [[find]] /export/tiimihakemisto -type d -exec chmod g+rwxs {} \; | ||
3. Aseta tiedostoille muokkausoikeudet | 3. Aseta tiedostoille muokkausoikeudet | ||
sudo find / | sudo find /export/tiimihakemisto -type f -exec chmod g+rw {} \; | ||
=== Ajastettu oikeuksien korjaus (cron) === | |||
Koska käyttäjä voi asettaa tiedostoille vääriä oikeuksia ja omistajuuksia, hakemistorakenne kannattaa joissakin tapauksissa käydä läpi säännöllisesti virheellisyyksien korjaamiseksi. Tämä hoituu koneen käytöstä riippuen ohjelmilla [[Komentojen ajastaminen#Säännölliset työt: cron ja anacron|cron ja anacron]]. | |||
Cronin ajettavaksi voi laittaa työn, joka ajaa komennot ''chmod -R g+rX /hakemisto'' ja ''chgrp -R ryhmä /hakemisto/*'' kerran tunnissa tai vuorokaudessa. Huono puoli on se, että ratkaisu kuluttaa turhaan resursseja silloin kun mikään ei ole muuttunut eivätkä muutokset tapahtu reaaliaikaisesti. chmod-komento yllä muuttaa ryhmän oikeuksia, niin että ryhmälle tulee lukuoikeus kaikkiin tiedostoihin ja "suoritusoikeus" niihin tiedostoihin, joita joku saa "suorittaa", käytännössä hakemistoihin ja windowsista siirrettyihin tiedostoihin. | |||
=== Taustaprosessi === | |||
Ongelmista pääsisi [[taustaprosessi]]lla, jolle ydin kertoo muutoksista, jolloin virheet voitaisiin korjata sitä mukaa kuin ne syntyvät, eikä hakemistoja tarvitsisi käydä läpi turhaan. Tähän ei vielä ole valmista ratkaisua, vaan tarvitseva joutuu itse koodaamaan. | |||
== ACL eli pääsynvalvontalistat == | === ACL eli pääsynvalvontalistat === | ||
Linuxissa voi ottaa käyttöön [[ACL]]-toiminnon, jonka avulla tiedosto-oikeuksien hallintaa voi tehdä huomattavasti yksityiskohtaisemmin. ACL-toiminto vaatii kuitenkin jonkin verran opettelua ja konfigurointia. | |||
== Käyttö Windows-järjestelmien kautta == | |||
== | ===Samba=== | ||
[[Samba]]an voi melko tarkkaan määrätä uusien tiedostojen ja hakemistojen oikeudet ja omistajuudet. Käyttämällä jaettua hakemistoa samban kautta ei tällöin pääse muuttamaan oikeuksia vääriksi. Hakemistoa ei tarvitse jakaa verkkoon, vaan sitä voi käyttää [[localhost]]in kautta. | |||
=== Osio Windowsin tiedostojärjestelmällä === | |||
Esimerkiksi sellaisessa tilanteessa, jossa perheen kaikki multimediatiedostot ovat yhdellä osiolla ja sitä halutaan käyttää myös Windowsista, näppärä ratkaisu on laittaa osion tiedostojärjestelmäksi NTFS ja sitten liittää se Linuxin sopivalla umask- ja ryhmätiedoilla, jolloin kaikki osion tiedostot ovat varmasti samoilla omistus- ja käyttöoikeuksilla. | Esimerkiksi sellaisessa tilanteessa, jossa perheen kaikki multimediatiedostot ovat yhdellä osiolla ja sitä halutaan käyttää myös Windowsista, näppärä ratkaisu on laittaa osion tiedostojärjestelmäksi NTFS ja sitten liittää se Linuxin sopivalla umask- ja ryhmätiedoilla, jolloin kaikki osion tiedostot ovat varmasti samoilla omistus- ja käyttöoikeuksilla. | ||
Esimerkkirivi [[fstab|/etc/fstab]]-tiedostosta: | Esimerkkirivi [[fstab|/etc/fstab]]-tiedostosta: | ||
/dev/hda1 /mnt/windows ntfs defaults,umask= | /dev/hda1 /mnt/windows ntfs defaults,umask=002,gid=1005 0 0 | ||
== Katso myös == | == Katso myös == |