WERKEN IN EEN TERMINAL VENSTER 


1. Over bestanden, extensies, permissies en koppelingen

Werken in een terminal venster hoeft niet echt, maar het kan bijzonder nuttig zijn, en dat niet alleen voor de systeembeheerder, het leert je vooral beter begrijpen met welk krachtig operating systeem je bezig bent en daarom dit niet onbelangrijke hoofdstuk!

De namen binnen een MAP verwijzen naar bestanden. In linux heeft de eventuele extensie van een bestand geen betekenis m.a.w. een bestand hoeft niet te eindigen op .exe om "executable" te zijn. Natuurlijk is er niets dat belet om b.v. een tekstbestand de extensie .txt te geven, gewoon voor de duidelijkheid. Ook foto- , audio- en videobestanden worden herkend door hun extensie, b.v. jpg of .wav of .ogg.
Wanneer de naam van een bestand met een punt begint, geldt het bestand als "onzichtbaar". Je kan ook een nieuw "leeg" bestand aanmaken met  de opdracht touch en er dan achteraf b.v. tekst in plaatsen.
De naam van een bestand is NIET de inhoud (de data), het is alleen een verwijzing ernaar! In linux noemen we dat een harde koppeling en niets belet om aan één bestandsinhoud een tweede, of derde naam toe te kennen. Dat kan praktisch zijn om vanuit een andere submap hetzelfde programma te benaderen. Stel we hebben in onze thuismap (home dir), een bestand dat voorbeeld noemt, en we willen een verwijzing daarnaar in onze map /temp. We gaan in die map staan en geven de opdracht ln /home/(username)/voorbeeld  voorbeeld2 , daarna zal je in de map de nieuwe naam aantreffen, voorbeeld2, die gewoon verwijst naar hetzelfde bestand.
In linux wordt ook veelvuldig gebruik gemaakt van een symbolische koppeling, daarmee kan men zelfs verwijzen naar een bestand dat zich op een andere HD van dezelfde computer bevindt. Een prachtig voorbeeld van toepassing vind je ook bij de devices: zoals uitgelegd in de pagina over de mappenstructuur, wordt de randapparatuur voorgesteld als een /dev/ bestand, maar in feite is dat gewoon een verwijzing naar het corresponderende stuurprogramma!
De opdracht is dezelfde als bij de harde koppeling, er komt alleen een parameter -s bij, dus  ln -s {bronbestand}  {doelbestand}

Een ander belangrijk aspect van bestanden in linux is dat er bepaalde rechten op rusten, wat is er "gepermitteerd" met een bepaald bestand? Dat hangt af van de "permissies"!
Ga eens in een terminal venster en geef de opdracht ls -al  (a=all, l= long). Je krijgt, naargelang de map waarin je staat, een min of meer lange lijst, waar je, voor iedere lijn, vooral moet kijken naar de naam uiterst rechts, en de eerste tien "characters" links. Die zien er b.v. als volgt uit:
what|owner|group|others|
     -   r -  -     r -  -    r -  -     betekent owner read, group read, others read,  m.a.w. iedereen mag dit bestand lezen.
     -   r w x    r -  x   r -  -     betekent owner read, write & execute, group read & execute, others read. De eigenaar van dit bestand mag het lezen, veranderen en uitvoeren, de groep alleen lezen en uitvoeren en de rest alleen lezen.
  d     r w -    r w -    r w -     de lijn begint met een d, dit wijst op een DIR (map) en iedereen mag er in lezen en schrijven.
  l      r w x   r w x   r w x     de lijn begint met een l, dit is duidelijk een link (koppeling, zie hoger).
De eigenaar van een bestand, en natuurlijk ook de root, hebben het recht om de permissies aan te passen. Stel dat de eigenaar van het bestand van het eerste van de vier voorbeelden hierboven, ook wil kunnen schrijven in dat bestand dan kan hij het commando geven: chmod
644 {bestand}. Wat is dat nu? Wel chmod staat voor change mode en aan de rechten worden waarden toegekend. 4 is voor lezen, 2 voor schrijven en 1 voor uitvoeren, maar dat geldt alleen voor de others, indien het de group betreft komt er een nul bij, en voor de owner twee nullen. Om zelf te mogen lezen en schrijven moest hij dus 400 (lezen) + 200 (schrijven) optellen, de 44 bleef onveranderd.
Klinkt allemaal een beetje vreemd maar maak je niet teveel zorgen, in grafische mode zijn gemakkelijker methodes voorzien om de rechten aan te passen, en er is altijd onze onvervangbare Midnight Commander waar chmod en chown (change owner) voorkomen in een van de vallende menu's!
De beperkingen die aan bestanden en mappen worden opgelegd kunnen al eens vervelend zijn, maar het heeft natuurlijk alles met beveiliging  van het systeem te maken.




onls4_1
Inleiding          Vorige pagina           Volgende pagina