2014 m. rugsėjo 17 d., trečiadienis

gnu/Linux dokumentų leidimai

Leidimai suskirstyti į 3 dalis:
[- ---] [---] [---]
  • 'u', savininko
  • 'g', grupės
  • 'o', kitų vartotojų
  • 'a'  visų vartotojų
Galimi leidimai:
[rwx][rw-] [r--]
'r' - read - 4
'w' - write - 2
'x' - execute - 1
'-' - 0

Tokios reikšmės, nes verčiant iš dvejetainės sistemos gauname:
$ echo $((2#100)) $((2#010)) $((2#001))
4 2 1

Teisių keitimas su 'chmod'

$ chmod 644 duomenys
-rw-r--r-- -rw (4+2=6), -r (4), -r-- (4)

Ištikto duodamas leidimas:

$ chmod 0644 duomenys

Bendras skaičius: 0644
0 (pirmas skaičius) 6(savininko), 4 (grupės ir visų kitų vartotojų)

Pirmasis skaičius

4 - setui ( raidė -  s)
Tai reikia, jei kas nors turės vykdymo teises, galės naudoti failą kaip root vartotojas, todėl aukštesnes teises, nei 4750 gali būti pavojinga.

2 - setui ( raidė -  s)
Leidžia paleisti failą su grupės teisėmis.

1 - lipnusis bitas ( raidė -  t)
Šis bitas priskirtas katalogams, leis ištrinti ar perrašyti tik savo sukurtus failus.

Komandos

Leidimus dar galima keisti komandomis:
$ chmod u+x dokumentas #Tik savininkui priskiriamos vykdymo teisės
$ chmod go+wx dokumentas #Grupei ir kitiems pridedamos rašymo ir vykdymo teisės
$ chmod o-x dokumentas #Kitiems leidžiama vykdyti 
$ chmod u=r,g=rw,o=rwx 1.txt #Pavyzdys su u,g,o
-r--rw-rwx  1 sup  sup      0 Lap 14 14:33 1.txt

Kaip pakeisti dokumento savininką su 'chown' komanda?
$ sudo chown savininko-vardas:vardas-grupei duomenys

Grupę analogiškai galima pakeisti su 'chgrp' arba 'chown savininkas:grupe' komanda.

Susiję:
umask