Eigenaars
en permissies bij bestanden
|
Bestandsbeheer
in linux is meer dan alleen maar bestanden verplaatsen op het systeem
of zorgen dat bestanden naar functie of onderwerp worden ingedeeld
in directory's
Je kan aangeven welke gebruiker of groep gebruikers bepaalde bestanden
of directory's in eigendom heeft en wie toestemming heeft om bestanden
te lezen, te schrijven en uit te laten voeren
Om de bestandspermissies te wijzigen gebruik je chmod (te vinden in
de directory /bin)
Voor dat je de bestandspermissies kan wijzigen is het belangrijk te
weten hoe ze werken
|
#
ls -l testbestand/*doc
-rw-r-r-- 1 msa msa 780
jan 2 16:16 testbestand1.doc
-rw-r-r-- 1 msa msa 970
jan 2 16:29 testbestand2.doc |
|
Deze opdracht toont ondermeer
de modus- en de permissie- indicatoren (permission flags)
Deze indicator worden in de eerste kolom weergegeven en bestaan
uit een serie van tien letters
De eerste letter geeft het type bestand aan
Linux kent teminste acht
bestandstypen, maar we geven hier de vier meest voorkomende:
b : Block-device
c : Charater-device
d : directory
l : symbolische koppeling
De eerste twee typen zijn doorgaans te vinden in de directory /dev
De modem- en printerpoort op de pc zijn waarschijnlijk charater-devices
(waarbij de kleinste informatie-eenheden losse tekens zijn)
Het diskette station is een voorbeeld van een block device, omdat
de informatie in de vorm van blokken wordt gemanipuleerd
|
#
ls -l /dev/lp0 /dev/cual dev/fd0
crw-rw---- 1 root uucp 5,
65 dec 31 1979 /dev/cual
brw-rw---- 1 root disk 2,
0 sep 15 23:48 /dev/fd0
crw-rw---- 1 root daemon 6,
0 sep 15 23:48 /dev/lp0 |
Je ziet dat
de devices in deze directory zijn aangegeven als c of b
Om de permissie- indicatoren van een directory te zien, gebruik je
de opdracht ls met de optie -d (directory)
|
#
ls -ld test
drwxrwxr-x 2 msa msa 1024
jan 2 10:12 test |
De eerste
letter d geeft aan dat het om een directory gaat
Ook symbolische koppelingen worden als zodanig aangegeven in de directorylasting
|
#
touch bestand1
# ln -s bestand 1 bestand2
# ls -l bestand2
lrwxrwxrwx 1 msa msa 5
jan 2 16:43 bestand2 ->
bestand1 |
|
Nu we enig idee hebben
van de belangrijkste bestandstypen, gaan we verder met hoe je de
permissie- indicatoren afleest
Het is niet moeilijk te begrijpen waar de verschillende tekens voor
staan
Daarvoor verdelen we de negen tekens recht van de bestandsindicator
onder in drie groepen van ieder drie tekens
Iedere groep van drie tekens kan de volgende letters bevatten(van
links naar rechts)
r : het
bestand kan gelezen worden
w : er kan
naar het bestand geschreven worden
x : het
bestand kan worden uitgevoerd of (in het geval van een directory)
doorzocht
De eerts groep van drie tekens heeft betrekking op de eigenaar van
het bestand
Als je een bestand hebt aangemaakt kun je deze permissies naar believen
wijzigen
De volgende groep van drie tekens heeft betrekking op de gebruikers
groep
In het bestand /etc/group vindt je een lijst met groepen die voor
jLinux systeem zijn gedefinieerd
Dit bestand bestaat uit een tekst database
Enkele voorbeelden van de groepen
root : : 0 : root
bin : :1 : root, bin, daemon
daemon : : 2 : root, bin, daemon
sys : : 3 : root, bin, adm
adm : : 4 : root, adm, daemon
. . .
Users : :100 : msa, cloobie
msa : :500 : msa
cloobie : : 502 : cloobie
Het formaat van een groepsdefinitie is groepsnaam, wachtwoord,
groepsnummer en een lijst met daarin de gebruikers van de groep,
van elkaar gescheiden doormiddel van een komma
Dit betekend dat je de permissies voor lezen, schrijven en uitvoeren
kunt instellen voor je groep en dat je de toegangmogelijkheden tot
je bestanden kunt instellen
Als root-operator kun je de gebruikers in verschillende groepen
indelen
Dit is belangrijk en we zullen hier verder op ingaan bij de uitleg
van de opdracht chown
De laatse drie tekens geven de permissie aan voor alle andere gebruikers
van het systeem
Nu je weet hoe je de permissie-indicatoren interpreteerd, laten
we enkele voorbeelden de reveu passeren, waarna we ingaan op het
gebruik van de opdracht chmod
Als je een bestand aanmaakt, hebben zowel u als de leden van uw
groep standaard lees en schrijfpermissie voor dat bestand
Je kunt deze standaardinstellingen voor permissies bij het aanmaken
van bestanden wijzigen door middel van de opdracht umask van de
shell
Een voorbeeld van een bestand met gewijzigde standaardpermissies
|
#
touch mijnbestand
# ls -l mijnbestand
-rw-rw-r-- 1 msa msa 0
jan 2 17:23 mijnbestand |
Je zit dat
zowel msa (rw-) als de groep msa (rw-) permissies voor het lezen en
schrijven hebben, maar dat andere gebruikers (r--) het bestand alleen
maar kunnen lezen
Als het bestand volledig beschikbaar is voor alle gebruikers van het
systeen zien de permissies er als volgt uit:
|
| -rw-rw-rw-
1 msa msa 0
jan 2 17:23 mijnbestand |
Nu kan iedereen
dit bestand lezen of er naar schrijven
Als msa de enige is met lees en schrijftoegang tot het bestand , zien
de permissies er als volgt uit:
|
| -rw-------
1 msa msa 0
jan 2 17:23 mijnbestand |
Deze permisie-indicatoren
geven aan dat alleen msa (rw-) toegang heeft tot het bestand
Je kan dit wijzigen door de opdracht chmod |
|
|
|
|