Tässä nopeassa opetusohjelmassa näemme, miten voimme käyttää chmod-komentoa Ubuntu-koneessa löytääksemme, muuttaaksemme ja poistaaksemme käyttäjän oikeudet tietyistä tiedostoista, jotka ovat käyttäjän tiedostojärjestelmässä. Pelataan läpi erilaisia ehtoja, jotta hallitsemme chmod-peruskomennot, jotka voivat helpottaa jokapäiväistä elämäämme Ubuntun kanssa.
Linuxin käyttöoikeudet
Linuxin käyttöoikeudet ovat suuri joukko sääntöjä, jotka on helppo ymmärtää, jos ymmärrämme perusoikeudet. Kolme pääkohtaa, jotka meidän on ymmärrettävä tietääksemme, miten Linux-oikeudet toimivat, ovat:
- Elementti, jolle oikeudet määriteltiin
- Mitä toimintoja voi suorittaa oikeudella
- Kuka voi suorittaa mitäkin toimintoja
Linuxin tiedostojärjestelmässä on kaksi peruselementtiä:
- Kansiot
- Tiedostot
On kolme toimintoa, jotka voidaan suorittaa:
- Lue
- Kirjoita
- Suorita. Skriptien suorittamisen lisäksi samoja toimintoja tarvitaan tiedostojen ja muiden kansioiden luomiseen sen sisällä
Käyttäjä, joka voi suorittaa nämä toiminnot, on:
- Tiedoston omistaja
- Tiedoston omistajaryhmä
- Käyttäjä, joka ei liity omistajaryhmään tai omistajaan itseensä
Näyttääksesi tiedostoon liittyvät käyttöoikeudet suorita seuraava komento:
Se, mitä saamme takaisin tällä komennolla:
Etsitään tiedostojen käyttöoikeudet
Tulosteessa ensimmäiset 10 merkkiä esittelevät tiedoston käyttöoikeudet:
- Ensimmäinen merkki, joka tässä tapauksessa on ’-’, tarkoittaa, että kyseessä on tiedosto. Hakemiston kohdalla tämä olisi ollut ’d’.
- Ensimmäiset yhdeksän merkkiä edustavat omistajan, omistajan ryhmän ja muiden oikeuksia.
Oikeuksien muuttaminen
Syntaksi tiedoston oikeuksien muuttamiseksi näyttää seuraavalta:
Oktaalilukumuotoinen esitys käyttöoikeuksille
Voidaan esittää käyttöoikeudet oktaalilukuna. Asettaaksemme esimerkiksi hello.txt-tiedostolle luku-, kirjoitus- & suoritusoikeudet omistajalle, luku- & kirjoitusoikeudet ryhmälleen ja ei oikeuksia muille, suoritamme seuraavan komennon:
Kun suoritamme edellä mainitun komennon ja yritämme lukea tiedostoa ei-omistajatunnuksella seuraavalla komennolla:
Saamme seuraavan virheilmoituksen:
Mutta mistä tämä numero tulee? Tuon numeron jokainen numero edustaa käyttöoikeussarjaa. Katsotaanpa, miten ne on saatu:
- 0: Merkitsee, ettei oikeutta ole
- 1: Merkitsee suoritusoikeutta
- 2: Merkitsee kirjoitusoikeutta
- 4: Merkitsee lukuoikeutta
Lukuoikeuden, kirjoitusoikeuden & ja suoritusoikeuden & antamiseksi omistajalle annoimme hänelle numeron 7(= 4 + 2 + 1). Ymmärrämme tämän paremmin numerotaulukon avulla:
Numero | Binary | Read | Write | Execute | |
0 | 000 | EI | EI | EI | |
1 | 001 | EI | EI | KYLLÄ | |
2 | 010 | EI | KYLLÄ | EI | |
3 | 011 | EI | KYLLÄ | KYLLÄ | KYLLÄ |
4 | 100 | KYLLÄ | EI | EI | |
5 | 101 | ES | EI | ES | |
6 | 110 | ES | Kyllä | Ei | |
7 | 111 | Kyllä | Kyllä | Kyllä |
Yllä olevasta taulukosta selviää paljonkin, mitä kukin edustaa tiedostojen käyttöoikeuksien kannalta.
Lupien merkkiesitys
Voidaan esittää oikeudet oktaalilukuna. Esimerkiksi asettaaksemme luku-, kirjoitus & suoritusoikeudet omistajalle, luku- & kirjoitusoikeudet ryhmälleen ja ei oikeuksia muille, tiedostoon hello.txt, suoritamme seuraavan komennon:
Lisätäksemme oikeuksia olemassa olevalle käyttäjälle, voimme myös suorittaa:
Tässä tapauksessa kirjoitusoikeus annettiin tiedoston omistajan käyttäjäryhmälle.
Rekursiiviset oikeudenmuutokset
Voidaan myös muuttaa tietyn hakemiston sisältämien tiedostojen oikeuksia yhdellä komennolla. Jos haluat muuttaa annetussa hakemistossa olevien kaikkien tiedostojen ja kansioiden käyttöoikeuksia kerralla, käytä komentoa sudo chmod komennolla -R:
Näemme seuraavan tulosteen, joka kuvastaa selvästi tiedostojen käyttöoikeuksien muutosta:
Tiedoston käyttöoikeuksien rekursiivinen muuttaminen
Johtopäätös
Tällä oppitunnilla katsoimme, miten voimme muuttaa tiedoston käyttöoikeuksia ja tarvittaessa tehdä sen rekursiivisesti. Ymmärsimme Linuxin käyttöoikeuksien peruskäsitteitä, jotka voivat auttaa meitä päivittäisessä työssämme paljon.