HUOM! Voit itse lisätä ja muuttaa sisältöä muokkaa-painikkeiden avulla

 Olet itse vastuussa tämän teoksen käytöstä aiheutuvista vahingoista Lue lisää.

Tiedosto-oikeudet

Kohteesta Wikikko - kansan taitopankki
Siirry navigaatioon Siirry hakuun

Yleistä[muokkaa]

Sivusto käsittelee hakemistojen ja tiedostojen oikeuksia Unix- ja Linux-järjestelmissä. Oikeuksilla ja ominaisuuksilla suojataan tiedostoja ja hakemistoja luvattomalta käytöltä tai toisin päin sanottuna sallitaan tiedostojen käyttäminen.

  • Sivulla käytetään merkintää ---selitys: joka ei ole osa komentoa vaan selvitys komennosta.
  • tiedostonimi tarkoittaa tiedostonimi.pääte mutta välttämättä tiedostonimellähän ei aina ole päätettä

Oikeudet[muokkaa]

Tiedosto oikeudet kuuluvat omistajalle, ryhmälle tai kaikille muille. Yleensä tiedoston omistajalla on laajimmat oikeudet ja seuraavaksi laajimmat ovat ryhmään kuuluvilla jäsenillä. Muilla oikeudet ovat yleensä vähäisimmät tai samanlaiset kuin ryhmällä. Esimerkiksi drwxrwx--- tarkoittaa hakemiston tiedosto-oikeuksia. d-kirjain alussa tarkoittaa hakemistoa, ensimmäiset kolme rwx tarkoittaa omistaja eli user-oikeuksia, seuraavat rwx ryhmä eli group-oikeuksia ja viimeiset --- kaikki muut eli other-oikeuksia eli esim internetmaailmalla on kaikki oikeudet.

  • Lukuoikeudella r voi ainoastaan lukea tiedoston tai hakemiston sisällön, ei muuttaa tai poistaa.
  • Kirjoitusoikeudella w voi ainoastaan lisätä tiedostoon tai hakemistoon, muokata tiedostoa tai hakemistoa ja poistaa tiedosto tai hakemisto. Tällä ei voi lukea.
  • Suoritusoikeudella x tiedostoa voi käyttää (ajaa) ohjelman muodossa tai hakemistoon voi siirtyä cd hakemistonimi -komennolla. Jos x puuttuu hakemistoon ei voi siis siirtyä, tai sieltä lukea tai sinne kirjoittaa.

Oikeudet ovat siis kolmessa käyttäjäkategoriassa, joille oikeudet määritetään kirjaimilla tai numeroilla.

  • Järjestys on seuraava: User (omistaja) - Group (ryhmä) - Other (muut käyttäjät eli world)
  • User (omistaja) ja Group (ryhmä) omistavat tiedoston tai hakemiston. Other on joku näihin kuulumaton. Ryhmä tarkoittaa...
  • Hakemistotulosteessa ls -l näkyy järjestyksessä ensin omistaja ja sitten ryhmä.
    • Esimerkiksi -rw-r----- aapeli www-data eli tiedoston omistaa aapeli ja ryhmä nimeltä www-data
    • esimerkissä aapeli voi lukea ja kirjoittaa (rw-). Ryhmään www-data kuuluvat voivat ainoastaan lukea (r--). Muut eivät toi tehdä mitään (---)
  • Esimerkiksi 755 tarkoittaa että käyttäjällä on kaikki oikeudet, ryhmällä luku ja ajo -oikeudet, muilla luku ja ajo -oikeudet.

Tiedosto / hakemisto[muokkaa]

d--------- = hakemisto eli ensimmäinen merkki on d
---------- = tiedosto eli ensimmäinen merkki on -

Oikeuksien katselu ja tulkinta[muokkaa]

  • ls -l ---selitys: tulostaa oikeudet
  • ls -al ---selitys: tulostaa myös piilotiedostot eli .tiedostonimi -tiedostot
drwx--x--x   2 matti     kone          800 Jan  5 01:02 bin
kyseessä hakemisto, sen perässä oikeudet kirjaimina, linkitysten määrä 2, omistaja matti, ryhmä kone, tiedoston koko merkkeinä,
viimeinen muutospäivämäärä 5.1 klo 01:02, tiedostonimi bin

Oikeuksien asettaminen (chmod)[muokkaa]

  • Oikeuksien asetuskomento on chmod tai ne voidaan asettaa jonkin käyttöliittymän avulla jota käytetään esimerkiksi klikkaamalla väkänen ruutuun tai pois.
  • Voidaan käyttää numeerista (755) tai symbolista (u+r) merkintätapaa oikeuksien muuttamiseen.

Symbolinen merkintätapa[muokkaa]

Käytetään pääasiassa oikeuksia muutettaessa

Komentoesimerkki: chmod u-wx tiedostotaihakemisto

Ketä muutos koskee:
u user (käyttäjä)
g group (ryhmä)
o others (muut)
a kaikki (user, group, others)

Mitä tehdään:
+ lisää oikeus aiemmin asetettuihin oikeuksiin
- vähennä oikeus säilyttäen aiemmin asetetut oikeudet
= korvaa kaikki oikeudet nyt annettavilla oikeuksilla

Mitä saa tehdä:
tiedostoille:
r = tiedoston luku
w = tiedostoon kirjoitus
x = tiedoston suoritus eli ajo

hakemistoille:
r = hakemiston sisällön lukeminen
w = kirjoitus hakemistoon
x = pääsy hakemiston sisälle (esim. cd hakemisto -komento)

Esimerkkejä tiedostolle:
----------   ==>   chmod ugo=rwx   ==>   -rwxrwxrwx   (eli 777) kaikille kaikki oikeudet
-rwxrwxrwx   ==>   chmod u-wx   ==>   -r--rwxrwx   (470) poistetaan omistajalta kirjoitus ja ajo
-rwxrwx---   ==>   chmod o+r   ==>   -rwxrwxr--    (774) lisätään muille (others) luku
-rwxrwx---   ==>   chmod g-wx,o+r   ==>   -rwxr--r--   (744) ryhmältä pois kirjoitus ja ajo, muille lisätään luku
-rwxrwx---   ==>   chmod u-w,g-wx,o+r   ==>   -r-xr--r--   (544) omistajalta pois kirjoitus, ryhmältä pois luku ja ajo, muille lisätään luku
-rwxrwx---   ==>   chmod g=,o=r   ==>   -rwx---r--   (704) omistajan oikeudet säilyvät, ryhmältä kaikki pois, muille vain luku
-rwxrwx---   ==>   chmod a-wx   ==>   -r--r-----   (440) kaikilta pois luku ja ajo
-rwx-wx---   ==>   chmod og+rx ==>   -rwxrwxr-x  (755) lisätään ryhmälle luku ja ajo, muille luku ja ajo

chmod -R 775 *   lisätään 775 oikeudet kaikille tästä hakemistopuun tiedostoille ja hakemistoille alkaen hakemistosta jossa ollaan
chmod -R 755 lisätään 755 oikeudet kaikille hakemistopuun tiedostoille ja hakemistoille alkaen hakemistosta jossa ollaan. Mikä ero edelliseen?
chmod +S tiedostonimi antaa superuser-oikeudet (su) tiedostolle

Numeerinen merkintätapa[muokkaa]

Käytetään korvaamaan edelliset oikeudet uusilla

Komentoesimerkki: chmod 755 tiedostonimi ---selitys: omistajalle kaikki oikeudet, ryhmälle ja muille luku- ja ajooikeudet
r = read (luku) = 4
w = write (kirjoitus) = 2
x = execute (suoritus eli ajo) = 1
- = (ei oikeutta) = 0

--- == 000  == 0 
--x == 001 == 1 
-w- == 010 == 2
-wx == 011 == 3
r-- == 100 == 4
r-x == 101 == 5
rw- == 110 == 6
rwx == 111 == 7

Omistajan vaihto[muokkaa]

Unix tiedostojärjestelmässä Apache palvelimen luomien hakemistojen ja tiedostojen omistajaksi asetetaan käyttäjä joka käyttää httpd:tä. Linuxissa fsniper:n avulla voidaan asettaa skripti, joka muuttaa sen automaattisesti halutuksi. Microsoft Windows NTFS tiedostojärjestelmässä tätä ei vaadita ???

Komentoesimerkki Linux-järjestelmässä:   chown omistaja tiedostonimi
chown aapeli tiedostonimi   (asettaa omistajaksi aapelin)
chown aapeli:www-data tiedostonimi.pääte   (asettaa omistajaksi Aapelin ja ryhmäksi www-datan)
chown -R aapeli:www-data .   (R=recursive, kaikki hakemistot alihakemistoineen ja tiedostoineen hakemistossa ja eteenpäin siitä hakemistosta missä komento suoritetaan)
chgrp www-data tiedostonimi   (asettaa ryhmäksi www-data tiedostonimelle)

Yleisesti käytettyjä oikeuksia[muokkaa]

  • Palvelimella sijaitseva hakemisto 755
  • Palvelimella sijaitseva tiedosto 644

groupadd (linux), pw (FreeBSD), dseditgroup (OSX)[muokkaa]