Jos olet käyttänyt Linuxia jonkin aikaa (ja jopa OS X: n), olet todennäköisesti törmännyt "käyttöoikeuksien" virheeseen. Mutta mitä he ovat ja miksi he ovat välttämättömiä tai hyödyllisiä? Otetaan sisäinen ilme.
Taaksepäin päivällä, tietokoneet olivat massiivisia koneita, jotka olivat uskomattoman kalliita. Saadakseen suurimman osan niistä useista tietokonepäätteistä liitettiin, mikä mahdollisti monien käyttäjien siirtyvän liiketoimintaansa samanaikaisesti. Koneessa suoritettiin tietojenkäsittely ja tallennus, kun taas päätelaitteet olivat vain vähän kuin tietojen katselu- ja syöttövälineet. Jos ajattelet sitä, se on melko paljon, miten pääsemme tietoihin "pilvestä"; katso Amazonin Cloud MP3 -järjestelmää, Gmailia ja Dropboxia, ja huomaat, että vaikka muutokset voidaan tehdä paikallisesti, kaikki tallennetaan etäyhteyden kautta.
(Kuva: Zenith Z-19 "tyhmä" terminaali, luotto: ajmexico)
Jotta tämä toimisi, yksittäisten käyttäjien on oltava tilejä. Heillä on oltava osa heille annetusta varastotilasta, ja heillä on oltava mahdollisuus suorittaa komentoja ja ohjelmia. Jokainen saa erityisiä "käyttöoikeuksia", jotka määräävät, mitä he voivat ja eivät voi tehdä, missä järjestelmässä heillä on ja joilla ei ole pääsyä, ja joiden tiedostoja he voivat ja eivät voi muokata. Jokainen käyttäjä sijoitetaan myös eri ryhmiin, jotka myöntävät tai rajoittavat pääsyä edelleen.
Tässä kummallisessa monikäyttäjämaailmassa olemme jo määrittäneet rajat siitä, mitä käyttäjät voivat tehdä. Mutta entä mitä he pääsevät? Jokaisella tiedostolla on joukko käyttöoikeuksia ja omistaja. Omistajan nimi, joka on tyypillisesti sidottu, kun tiedosto luodaan, ilmoittaa, keneen käyttäjä kuuluu ja vain se käyttäjä voi muuttaa käyttöoikeuksiaan.
Linux-maailmassa käyttöoikeudet jaetaan kolmeen luokkaan: lukea, kirjoittaa ja toteuttaa. "Lue" -oikeudet antavat mahdollisuuden tarkastella tiedoston sisältöä, "kirjoittaa" -oikeudet mahdollistavat tiedoston sisällön muokkaamisen ja "suorittaa" -toiminnon avulla voidaan suorittaa joukko ohjeita, kuten komentosarjaa tai ohjelmaa. Jokainen näistä luokista käytetään eri luokkiin: käyttäjä, ryhmä ja maailma. "Käyttäjä" tarkoittaa omistajaa, "ryhmää" tarkoittaa mitä tahansa käyttäjää, joka on samassa ryhmässä kuin omistaja, ja "maailma" tarkoittaa ketään ja kaikkia.
Kansioita voidaan rajoittaa myös näillä käyttöoikeuksilla. Voit esimerkiksi sallia ryhmän muille henkilöille, että kotikansioissa olevia hakemistoja ja tiedostoja ei voi tarkastella, muttei kukaan ryhmänne ulkopuolella. Luultavasti haluat rajoittaa "kirjoittaa" pääsyn vain itsellesi, ellet työskentele jonkinlaisessa jaetussa projektissa. Voit myös luoda yhteisen hakemiston, jonka avulla kuka tahansa voi tarkastella ja muokata kyseisessä kansiossa olevia tiedostoja.
GUI
Jos haluat muuttaa Ubuntun omistaman tiedoston oikeuksia, napsauta tiedostoa hiiren kakkospainikkeella ja siirry kohtaan "Ominaisuudet".
Voit muuttaa, voivatko omistajat, ryhmät tai muut voivat lukea ja kirjoittaa, lukea vain tai tehdä mitään. Voit myös valintataulun avulla sallia tiedoston suorittamisen, ja tämä mahdollistaa sen omistajalle, ryhmälle ja muille samanaikaisesti.
Komentorivin
Voit myös tehdä tämän komentorivin kautta. Siirry hakemistoon, jossa on tiedostoja ja kirjoita seuraava komento nähdäksesi kaikki luettelossa olevat tiedostot:
ls-al
Jokaisen tiedoston ja hakemiston vieressä näkyy erityinen osio, jossa hahmotellaan sen käyttöoikeudet. Se näyttää tältä:
-rwxrw-r-
R tarkoittaa "lukea" w tarkoittaa "kirjoittaa" ja x tarkoittaa "suorita". Hakemistot alkavat "d": n sijaan "-". Huomaat myös, että on 10 tilaa, joilla on arvo. Voit ohittaa ensimmäisen, ja sitten on 3 sarjaa 3. Ensimmäinen sarja on omistajalle, toinen ryhmä on ryhmälle ja viimeinen joukko on maailmalle.
Voit muuttaa tiedoston tai hakemiston käyttöoikeuksia tarkastelemalla chmod-komennon perusmuotoa.
chmod [luokka] [operaattori] [lupa] tiedosto
chmod [ugoa] [+ tai -] [rwx] -tiedosto
Tämä saattaa vaikuttaa monimutkaiselta aluksi, mutta luottaa minuun, se on melko helppoa. Tarkastellaan ensin luokkia:
Seuraavaksi operaattorit:
Yhä kanssani? Ja viimeinen osa on sama kuin tarkistamalla tiedoston oikeudet:
Nyt, laita se yhteen. Sanotaan, että meillä on tiedosto nimeltä "todo.txt", jolla on seuraavat käyttöoikeudet:
-RW-rw-r-
Eli omistaja ja ryhmä voivat lukea ja kirjoittaa, ja maailma voi vain lukea. Haluamme muuttaa käyttöoikeuksia näihin:
-rwxr-
Eli omistajalla on täydet käyttöoikeudet, ja ryhmä voi lukea. Voimme tehdä sen kolmessa vaiheessa. Ensin lisätään käyttäjälle käyttölupa.
chmod u + x todo.txt
Sitten poistetaan ryhmän kirjoitusoikeus.
chmod g-w todo.txt
Lopuksi poistamme kaikkien muiden käyttäjien lukuluvat.
chmod o-r todo.txt
Voimme myös yhdistää nämä yhdeksi komennoksi, kuten:
chmod u + x, g-w, o-r todo.txt
Voit nähdä, että jokainen jakso on erotettu pilkulla eikä ole välilyöntejä.
Tässä on muutamia hyödyllisiä käyttöoikeuksia:
On olemassa muutamia muita asioita, joita voit tehdä chmod-tyyppisellä setuidilla ja setgidillä - mutta ne ovat vähän syvällisiä ja useimmat käyttäjät eivät todellakaan tarvitse käyttää niitä.
Nykyään emme aina aja järjestelmää, jossa on useita käyttäjiä. Miksi meidän pitäisi edelleen huolestua käyttöoikeuksista?
No, Unix ja sen johdannaiset - Linux, OS X muun muassa - myös erottavat käyttäjän suorittamat asiat, järjestelmänvalvojan suorittamat asiat tai järjestelmänvalvojan käyttöoikeudet ja järjestelmän itse suorittamat asiat. Sellaisina, järjestelmän kannalta olennaiset asiat tarvitsevat järjestelmänvalvojan käyttöoikeuksia, jotta niitä voidaan muuttaa tai käyttää. Tällä tavalla et kaahtele mitään vahingossa.
Ubuntussa voit tehdä muutoksia käyttämiisi järjestelmätiedostoihin, jotta voit saada vastaavan järjestelmänvalvojan oikeudet. Muissa tiloissa voit siirtyä Äuroot tai Äúsuper-käyttäjä, joka tekee tehokkaasti saman, kunnes kirjaudut ulos.
Huomaa, että molemmissa näissä olosuhteissa tiedostojen käyttöoikeuksien muuttaminen voi johtaa siihen, että ohjelmat eivät toimi, muuttamalla tahattomasti tiedostojen omistajuutta pääkäyttäjälle (omistajan sijaan) ja tekemällä järjestelmästä epävarmempi (antamalla lisää käyttöoikeuksia). Sellaisena suositellaan, että et muuta tiedostojen käyttöoikeuksia - varsinkin järjestelmätiedostoja - ellei se ole tarpeen tai tiedät, mitä olet tekemässä.
Tiedostojen käyttöoikeudet ovat käytössä, jotta voidaan tarjota käyttäjille tärkeä tietoturva. Oppiminen, miten he työskentelevät, auttavat sinua luomaan perusjakoa monikäyttäjäympäristössä, suojelemaan, julkistamaan tiedostoja ja antamaan sinulle selville, milloin jotain vikaa järjestelmän tiedostojen omistuksessa.
Ajattele, että voit selittää asioita helpommin? Onko korjaus? Haluatko muistella vanhoista päivistä? Pidä tauko ja pane ajatuksesi alas kommentteihin.