Android

Umask-komento linuxissa

Sisällysluettelo:

Anonim

Linux- ja Unix-käyttöjärjestelmissä kaikki uudet tiedostot luodaan oletusasetuksilla. umask apuohjelma antaa sinun tarkastella tai asettaa tiedostomuodon luomismaskia, joka määrittää uusien tiedostojen tai hakemistojen käyttöbitit.

Sitä käyttävät mkdir, touch, tee ja muut komennot, jotka luovat uusia tiedostoja ja hakemistoja.

Linux-käyttöoikeudet

Ennen kuin jatkat, selitetään lyhyesti Linux-käyttöoikeusmalli.

Linuxissa kukin tiedosto liitetään omistajaan ja ryhmään, ja niille annetaan lupaoikeudet kolmelle eri käyttäjäryhmälle:

  • tiedoston omistaja.ryhmän jäsenet.kuka tahansa muu.

Jokaisessa luokassa on kolme käyttötyyppiä:

  • lukuoikeus.kirjoituslupa.täyttöoikeus.

Tämän käsitteen avulla voit määrittää, mitkä käyttäjät saavat lukea tiedoston, kirjoittaa tiedostoon tai suorittaa tiedoston.

Voit tarkastella tiedostojen käyttöoikeuksia käyttämällä ls komentoa:

ls -l dirname

drwxr-xr-x 12 linuxize users 4.0K Apr 8 20:51 dirname | | | | | | | | | | | | +-----------> Group | | | | +-------------------> Owner | | | +----------------------------> Others Permissions | | +-------------------------------> Group Permissions | +----------------------------------> Owner Permissions +------------------------------------> File Type

Ensimmäinen merkki edustaa tiedostotyyppiä, joka voi olla tavallinen tiedosto ( - ), hakemisto ( d ), symbolinen linkki ( l ) tai mikä tahansa muu erityyppinen tiedosto.

Seuraavat yhdeksän merkkiä edustavat oikeuksia, kolme sarjaa kolme merkkiä. Ensimmäiset sarjat osoittavat omistajan käyttöoikeudet, toinen ryhmäoikeudet ja viimeinen joukko näyttää kaikkien muiden käyttöoikeudet.

Merkki r , jonka oktaaliarvo on 4 tarkoittaa lukemista, w , jonka oktaaliarvo on 2 , kirjoittamiseen, x , jonka oktaaliarvo on 1 kun lupa on suoritettu, ja ( - ), jonka oktaaliarvo on 0 , ilman lupaa.

On myös kolme muuta erityistä tiedostooikeuksien tyyppiä: setuid , setgid ja Sticky Bit .

Yllä olevassa esimerkissä ( rwxr-xr-x ) tarkoittaa, että omistaja on lukenut, kirjoittanut ja suorittanut käyttöoikeudet ( rwx ), ryhmä ja muut ovat lukeneet ja suorittaneet käyttöoikeudet.

Jos edustamme tiedostooikeuksia käyttämällä numeerista merkintää, tulemme numeroon 755 :

  • Omistaja: rwx = 4+2+1 = 7 Ryhmä: rx = 4+0+1 = 5 Muu: rx = 4+0+1 = 5

Kun oikeudet on esitetty numeerisessa merkinnässä, niillä voi olla kolme tai neljä oktaalinumeroa (0-7). Ensimmäinen numero edustaa erityisoikeuksia. Jos se jätetään pois, se tarkoittaa, että tiedostoon ei ole asetettu erityisiä käyttöoikeuksia. Meidän tapauksessamme 755 on sama kuin 0755 . Ensimmäinen numero voi olla yhdistelmä 4 setgid , 2 setgid ja 1 Sticky Bit setgid .

Tiedoston käyttöoikeuksia voidaan muuttaa käyttämällä chmod komentoa ja omistajuutta käyttämällä chown komentoa.

Ymmärtäminen umask

Oletusarvoisesti Linux-järjestelmissä tiedostojen oletusluomisoikeudet ovat 666 , mikä antaa lukemis- ja kirjoitusoikeudet käyttäjille, ryhmille ja muille, ja 777 hakemistoille, mikä tarkoittaa lukemista, kirjoittamista ja suorittamista käyttäjän, ryhmän ja toiset. Linux ei salli tiedostojen luomista suoritusoikeuksilla.

Oletusarvoisia umask voidaan muokata umask apuohjelmalla.

umask vaikuttaa vain nykyiseen kuoriympäristöön. Useimmissa Linux-jakeluissa oletusarvoinen koko järjestelmän umask-arvo asetetaan pam_umask.so tai /etc/profile tiedostoon.

Voit tarkastella nykyistä maskin arvoa kirjoittamalla umask yksinkertaisesti ilman argumentteja:

umask

Tuotos sisältää

022

umask arvo sisältää umask , joita EI aseteta vastikään luotuihin tiedostoihin ja hakemistoihin.

Kuten olemme jo todenneet, tiedostojen oletusluontioikeudet ovat 666 ja hakemistojen 777 . Uusien tiedostojen lupabittien laskemiseksi vähennä umask-arvo oletusarvosta.

Esimerkiksi, jotta voidaan laskea, kuinka uname 022 vaikuttaa uusiin tiedostoihin ja hakemistoihin, käytä:

  • Tiedostot: 666 - 022 = 644 . Omistaja voi lukea ja muokata tiedostoja. Ryhmä ja muut voivat lukea vain tiedostoja.Direktorit: 777 - 022 = 755 .Omistaja voi CD-levyä hakemistoon ja lukea, muokata, luoda tai poistaa hakemistossa olevia tiedostoja. Ryhmä ja muut voivat cd hakemistoon ja luetteloida ja lukea tiedostoja.

Voit myös näyttää maskin arvon symbolisessa merkinnässä käyttämällä -S vaihtoehtoa:

umask -S

u=rwx, g=rx, o=rx

Toisin kuin numeerinen merkintä, symbolinen merkintäarvo sisältää lupabittejä, jotka asetetaan vasta luotuihin tiedostoihin ja hakemistoihin.

Maskin arvon asettaminen

Tiedostojen luomismaski voidaan asettaa kahdeksan tai symbolisen merkinnän avulla. Jotta muutoksista saadaan pysyviä, asetetaan uusi umask arvo globaalissa määritystiedostossa, kuten /etc/profile tiedosto, joka vaikuttaa kaikkiin käyttäjiin, tai käyttäjän shell-konfiguraatiotiedostoissa, kuten ~/.profile , ~/.bashrc tai ~/.zshrc jotka vaikuttaa vain käyttäjään. Käyttäjätiedostot ovat etusijalla globaaleihin tiedostoihin nähden.

Ennen kuin teet muutoksia umask arvoon, varmista, että uusi arvo ei aiheuta potentiaalista tietoturvariskiä. Arvoja, jotka ovat vähemmän rajoittavia kuin 022 tulisi käyttää erittäin varovaisesti. Esimerkiksi umask 000 tarkoittaa, että kuka tahansa lukee, kirjoittaa ja suorittaa luvan kaikille uusille tiedostoille.

Oletetaan, että haluamme asettaa rajoittavammat oikeudet vastikään luotuille tiedostoille ja hakemistoille, jotta muut eivät pääse cd hakemistoon ja lukemaan tiedostoja. Haluamme käyttöoikeudet 750 hakemistoille ja 640 tiedostoille.

umask arvon laskemiseksi vähennä haluamasi käyttöoikeudet oletusarvoista:

777-750 = 027 arvo: 777-750 = 027

Haluttu umask arvo, jota esitetään numeerisessa merkinnässä, on 027 .

Aseta uusi arvo koko järjestelmäksi pysyvästi avaamalla /etc/profile tiedosto tekstieditorilla:

sudo nano /etc/profile

ja muuta tai lisää seuraava rivi tiedoston alkuun:

/ Etc / profile

umask 027

Jotta muutokset tulevat voimaan, suorita seuraava lähdekomento tai kirjaudu ulos ja kirjaudu sisään:

source /etc/profile

Uusien asetusten tarkistamiseksi luomme yhden uuden tiedoston ja hakemiston mkdir ja touch :

mkdir newdir touch newfile

drwxr-x--- 2 linuxize users 4096 Jul 4 18:14 newdir -rw-r----- 1 linuxize users 0 Jul 4 18:14 newfile

Toinen tapa asettaa tiedostonluontimaski on käyttää symbolista merkintää. Esimerkiksi umask u=rwx, g=rx, o= on sama kuin umask 027 .

johtopäätös

Tässä oppaassa olemme selittäneet Linux-käyttöoikeudet ja kuinka umask komentoa käytetään asettamaan käyttöoikeusbittejä uusille tiedostoille tai hakemistoille.

Lisätietoja kirjoita terminaaliin man umask .

umask-pääte