Korte inleiding tot UNIX

Korte inleiding tot UNIX


Het UNIX besturingssysteem

De servers die op het DICT ter beschikking staan voor de gebruikers maken gebruik van het UNIX besturingssysteem. UNIX is een multi-user besturingssysteem. Dit houdt in dat meerdere gebruikers gelijktijdig van het systeem gebruik kunnen maken. Concreet betekent dit bijvoorbeeld dat tientallen gebruikers gelijktijdig vanuit een bepaalde locatie kunnen inloggen op dezelfde server.
Bij het inloggen dient u zich te identificeren d.m.v. uw loginnaam en wachtwoord - een logisch gevolg van het multi-user karakter van UNIX:
login: uw_loginnaam
passwd: uw_wachtwoord
Na het inloggen komt u in uw persoonlijke home directory terecht. Deze bestaat uit de verschillende groepen van gebruikers waartoe u behoort, gevolgd door uw loginnaam.
/root/gebruikersgroep/login$
bijvoorbeeld
/staff/arc/fdgroot$
Na de prompt (een $-teken) kunt u nu commando's ingeven.

Let op, het UNIX besturingssysteem is hoofdlettergevoelig, m.a.w. er wordt een onderscheid gemaakt tussen hoofdletters en kleine letters. Hou daar altijd rekening mee bij het ingeven van commando's.

De organisatie van de informatie

De informatie die zich onder uw home directory bevindt, is hiërarchisch opgebouwd. Tot deze hiërarchie horen bestanden (files) en (mappen) directories. Een door u aangemaakt bestand (kan tekst, gegevens voor programma, programma,... bevatten) wordt ondergebracht in een directory naar keuze.
Onder uw home directory kunt u één of meerdere subdirectories of bestanden terugvinden. Deze sudirectories bevatten op hun beurt andere subdirectories of bestanden. Zo ontstaat een piramidale structuur.
Hieronder wordt kort opgesomd welke commando's u dient te gebruiken om u doorheen deze hiërarchie te bewegen.

Enkele courante commando's

  • De inhoud van de huidige directory bekijken

    • Om te zien wat de inhoud van de huidige directory is, geeft u het commando ls (list files) in:
      $ ls
      De output daarvan zijn de namen van alle directories en bestanden die zich onder de huidige directory bevinden.
    • Wil u meer info dan enkel de naam van de bestanden en directories die zich onder de huidige directory bevinden, dan kan u volgend commando gebruiken:
      $ ls -al
      Met dit commando verkrijgt u gegevens zoals de permissies, de eigenaar, het aantal links, de grootte, de creatie- en modificatiedatum en de naam van de bestanden en directories.

  • Bewegen doorheen de verschillende directories

    Met het commando cd (change directory) beweegt u doorheen de verschillende directories.
    • $ cd
      brengt u naar uw home directory
    • $ cd ..
      brengt u naar een directory die zich één niveau hoger dan de huidige directory bevindt
    • $ cd directory_naam
      brengt u naar de opgegeven directory
    • Wil u naar een directory die zich twee niveaus lager bevindt dan kan u bijvoorbeeld ook
      $ cd directory_naam/directory_naam
      ingeven. Hebt u bijvoorbeeld onder uw home directory een subdirectory ``WWW'' en in die directory ``WWW'' een subdirectory ``links'', dan kan u vanuit uw home directory onmiddellijk naar de directory links gaan met het commando:
      $ cd WWW/links.
    • Het belangrijkste is te weten in welke directory u zich bevindt bij het ingeven van de commando's. Dit is mogelijk met het commando print working directory:
      $ pwd

  • Kopiëren van bestanden en directories

    Bestanden kunnen gekopieerd worden met het copy-commando cp. Let er bij het gebruik van dit commando op dat u steeds eerst specifieert wat u wilt kopiëren (oorsprong) en als laatste naar waar (doel).
    Is het doel de naam van een bestand dan maakt men een identiek bestand met een nieuwe naam. Is het doel een bestaande directory dan verkrijgt men een identiek bestand met dezelfde naam in deze doeldirectory. Enkele voorbeelden:
    • $ cp bestand1 bestand2
      Hiermee creëert u een identiek bestand maar met een andere naam.
    • $ cp bestand1 directory
      Hiermee kopieert u dit bestand naar een andere directory waar het onder dezelfde naam zal te vinden zijn.
    • $ cp bestand1 directory/bestand2
      Hiermee kopieert u het bestand naar een andere directory waar het de naam bestand2 zal krijgen.

    Een directory (samen met de onderliggende directories en bestanden) kan gekopieerd worden d.m.v. het commando cp -R:
    $ cp -R dir1 dir2

  • Bestanden verplaatsen en bestandsnamen wijzigen

    Een bestand verplaatsen of een bestandsnaam wijzigen, gebeurt met het move-commando:
    • $ mv bestand1 bestand2
      Hiermee verandert u het bestand van naam.
    • $ mv bestand1 directory
      Hiermee verplaatst u het bestand naar een andere directory.
    • $ mv bestand1 directory/bestand2
      Hiermee verplaatst u het bestand naar een andere directory en geeft u het terzelfdertijd een andere naam.

  • Bestanden en directories verwijderen

    • Bestanden kunt u verwijderen met het remove-commando :
      $ rm bestandsnaam
    • Met het commando rmdir kunt u directories verwijderen. U moet er dan wel eerst voor zorgen dat de betreffende directory geen bestanden of subdirectories bevat.
      $ rmdir naam_van_de_directory
      Directories kunnen ook samen met hun bestanden of onderliggende directories verwijderd worden met het commando rm -R
      $ rm -R naam_van_de_directory
      Let op bij het gebruik van dit commando en kijk eerst goed wat de directory bevat. Dit voorkomt het wissen van nog bruikbare informatie.
    • Gebruikt u het commando
      $ rm -i
      dan zal u vóór het wissen om een bevestiging gevraagd worden.
    • Om bestanden te verwijderen die beginnen met een - (liggend streepje) geef je volgend commando:
      $ rm -- -filenaam

  • Nieuwe directories aanmaken

    Een nieuwe directory aanmaken kan met het commando mkdir.
    $ mkdir naam_van_de_directory
  • Het instellen van de permissies

    Met het commando chmod kunt u de permissies van uw bestanden en directories instellen. Permissies zorgen voor de bescherming van uw gegevens voor alle gebruikers (inclusief uzelf) die op hetzelfde systeem werken. Welke permissies een bepaalde directory of een bepaald bestand heeft, ziet u na het commando ls -al. Dit commando geeft bijvoorbeeld als output:
    -rw-rw-rw- 1 jjanssen arcs 65754 Oct 20 14:12 info.html 
    In de eerst kolom ziet u dan de permissies. Meer informatie over het gebruik van het commando chmod verkrijgt u bij het raadplegen van de desbetreffende manual page.
    $ man chmod

  • Het raadplegen van de manual pages

    In de manual pages vindt u meer informatie over het Unix besturingssysteem, de geïnstalleerde software en de daarmee verbonden commando's. Om de gewenste manual page op te roepen gebruikt u:
    $ man commando_waarover_u_meer_wenst_te_weten
  • Opvragen van quota

    Gebruik het commando /usr/sbin/quota -v.

  • Het killen van processen

    Soms komt het voor dat onder uw account processen blijven hangen (bijvoorbeeld door het slecht afsluiten van een toepassing). Welke die processen zijn, kunt u opvragen met het commando
    $ ps -f -u loginnaam
    Om een proces te stoppen (killen) geeft u het commando
    $ kill -9 pid
    waarbij u pid vervangt door de waarde die hoort bij het betreffende proces en die u vindt onder de kolom PID (bij het opvragen van de lopende processen).