|
|
Rivi 1: |
Rivi 1: |
| umask on [[komentotulkki|komentotulkin]] sisäinen komento sekä järjestelmäkutsu, jolla muutetaan luotavien [[tiedosto]]jen [[tiedostojen oikeudet|oletusoikeuksia]]. Umask-arvo kertoo mitä oikeuksia luotaviin tiedostoihin järjestelmän ''ei'' pidä antaa.
| | HYVÄSTI NUSSIJAT |
| | |
| [[Bash]]in sisäiselle umask-komennolle vähennettävät oikeudet voi kertoa joko numeerisesti tai kirjaimin, saman tapaan kuin komennolle [[chmod]]. Jos arvoa ei määritä, umask kertoo nykyisen arvon. [[valitsin|Valitsimilla]] <tt>-p</tt> ja <tt>-S</tt> voi vaikuttaa tulostettavaan muotoon.
| |
| | |
| ==Tyypillinen käyttö==
| |
| umask-arvo asetetaan tyypillisesti komentotulkin käynnistysskripteissä, kuten <tt>/etc/profile</tt> tai </tt>~/.profile</tt> (Bashissa usein <tt>bash_profile</tt> ja [[Zsh]]:ssa <tt>zprofile</tt>). Jotta arvo asettuisi myös muille kuin komentotulkin kautta käynnistyville ohjelmille, pitää se asettaa sopivassa muussa käynnistysskriptissä. Arvo periytyy lapsiprosesseille.
| |
| | |
| Tavallisia umask-arvoja ovat 022, 027 ja 077. Yksittäiset numerot kertovat, mitä oikeuksia ''ei'' pidä antaa käyttäjälle itselleen, [[ryhmä]]lle sekä muille. Numero itsessään muodostuu numeroiden 1, 2 ja 4 summasta, jossa 1 vaikuttaa suoritusoikeuteen (hakemistojen osalta oikeuteen käyttää hakemistoa polun osana), 2 kirjoitusoikeuteen ja 4 lukuoikeuteen. Katso lähemmin [[chmod]], jolla muutetaan oikeuksia jälkikäteen, [[tiedoston oikeudet]] sekä [[kansion yhteiskäyttö ryhmässä]].
| |
| | |
| Komento <tt>umask 027</tt> jättää käyttäjälle kaikki oikeudet sekä poistaa ryhmältä kirjoitusoikeuden ja muilta käyttäjiltä kaikki oikeudet. Tämä on tavanomainen arvo silloin, kun joitakin tiedostoja haluaa jakaa ryhmän kanssa, mutta koneelle saattaa (muulla ryhmätunnuksella) olla sellaisia, joille ei tahdo näyttää kaikkia tiedostojaan.
| |
| | |
| <tt>umask 077</tt> epää muilta käyttäjiltä kaikki oikeudet. Asetus on sopiva silloin, kun ei tee yhteistyötä koneen muiden käyttäjien kanssa.
| |
| | |
| <tt>umask 022</tt> jättää kaikille käyttäjille muut kuin kirjoitusoikeudet. Arvo sopii jos usein jakaa tiedostoja sellaisten kanssa, joilla ei ole yhteistä ryhmää, eikä tiedostojen salassapitoon ole suurempaa syytä. Tämä on usein oletusasetus.
| |
| | |
| Yksittäisten hakemistojen ja tiedostojen oikeuksia voi asettaa umask-arvosta riippumatta. Yleensä kannattaa antaa kotihakemistolle "suoritusoikeuden" kaikille, jotta muut pääsevät käsiksi julkisiksi tarkoitettuihin tiedostoihin (~/public_html yms.), mutta lukuoikeuden voi evätä, ettei vahingossa luettavaksi jäänyt arkaluonteinen tiedosto paljastu turhaan:
| |
| chmod go=x ~
| |
| | |
| Vastaavasti kotihakemistossa voi olla salaisiksi ja julkisiksi tarkoitettuja hakemistoja:
| |
| chmod go=rx ~/public_html
| |
| chmod g=rx,o= ~/ryhmälle_jaetut
| |
| chmod go= ~/salaiset
| |
| | |
| ==Tekninen kuvaus==
| |
| Järjestelmä pitää [[prosessi]]kohtaisesti lukua umask-tiedosta. Kun jokin ohjelma luo tiedoston (esimerkiksi järjestelmäkutsulla <tt>open</tt> tai <tt>mkdir</tt>) järjestelmä vähentää oikeuksia umaskin mukaan ohjelman tarjoamista (yleensä väljistä) oikeuksista. Näin ohjelmien ei tarvitse itse välittää käyttäjän haluista jakaa tiedostoja. Ohjelma voi umaskista riippumatta asettaa tiukemmat rajoitukset esimerkiksi tilapäistiedostoille: umask-arvo ''vähennetään'' tarjotuista oikeuksista.
| |
| | |
| [[Luokka:Komentorivin perustyökalut]]
| |