At finde rundt på et Linux-system

Fra Debianguiden
Skift til: Navigation, Søgning

Linux' filsystem kan være svært at overskue når man har været vant til strukturen i f.eks. Windows. Men fortvivl ikke; der er logik bag det hele.

Noget som Debian udmærker sig ved, er at der er god kontrol over placeringer af filer, fordi Debian følger FHS (Filsystem Hieraki Standarden). Derfor vil man meget sjældent opleve at en fil ikke er placeret korrekt.

Linux har ikke på samme måde som Windows, drev betegnet som bogstaver (f.eks. C: og D:). Linux' filsystem starter i det man kalder roden og det betegnes med en enkelt skråstreg ("/"). Fra roden, bygges fil-systemet logisk op. Her er en oversigt over de mest nyttige mapper at kende til:

Oversigt over Linux' fil-hieraki
Sti Beskrivelse
/ Rod-mappen. Det er her hvor hele træet starter.
/bin En mappe der indeholder de mest basale programmer (bin betyder "binary", d.v.s. binære filer)
/boot Indeholder filer til boot-loaderen (f.eks. LILO)
/dev Specielle enheds-filer, som referer til fysiske enheder
/etc Indeholder konfigurations filer som gælder for hele det lokale system.
/home Indeholder hjemme-mapper for alle brugerne på systemet. (Undtagen root, som har sit i /root)
/lib Indeholder biblioteker som er krævet af programmer der bruges til at starte systemet.
/proc proc fil-systemet er et sted hvor kernen registrerer en del informationer om systemets tilstand.
/root Root-brugerens hjemme-mappe.
/sbin Ens med /bin, men indeholder programmer som normalt kun eksekveres som root.
/tmp Står for temporary (midlertidig), indeholder tilfældige filer som programmer laver midlertidigt.
/usr Denne indeholder en hel del; blandt andet størstedelen af programmerne på systemet, bibiloteker, delte filer og dokumentation.

Yderligere dokumentation for disse og flere mapper kan ses i man-siden 'hier(7)'.

Søgning efter filer på systemet

Ofte vil man gerne finde ud af hvor en fil er placeret på systemet. Der er en del forskellige måder at gøre det på. Hvilken metode der er den optimale, kommer anpå hvad du søger efter.

En metode som altid vil virke, er at bruge 'find' kommandoen. Ulempen er at den er langsom i forhold til 'locate' som vi fortæller om senere. Fordelen er at den er ret fleksibel og giver mange muligheder i søgningen. Den bruges således:

bruger@debian:~$ find / -name '*.jpg'
/home/lise/billede1.jpg
/usr/share/Eterm/pix/tile/blackstone.jpg
[...]

Her angiver vi først at vi vil starte søgningen i roden ("/"). Her kunne vi også have angivet punktum (".") for at bare søge fra den nuværende mappe. Som det andet argument angiver vi at vi vil have alle filer der har en endelse på .jpg, her kunne vi også sagtens have skrevet et præcist filnavn hvis vi kun søgte efter en specifik fil.

En hurtigere metode end 'find' er 'locate' kommandoen. 'locate' har den fordel, at den er meget hurtig - fordi den kigger i en database over alle filer på systemet. locate kører automatisk om natten og opdaterer sin database, så den altid er up-to-date. Men det betyder så også, at man ikke kan regne med at finde helt ny-oprettede filer medmindre man opdaterer databasen manuelt. Kommandoen bruges således:

bruger@debian:~$ locate mintekstfil.txt
/home/lise/mintekstfil.txt

Hvis man vil opdatere databasen manuelt, skal man køre kommandoen 'updatedb' som root.


Mange gange kan det være at man bare søger efter et program på systemet. Eftersom der er styr på hvor programmer og dets tilhørende komponenter ligger, er det nemmere bare at søge i disse. Derfor har man 'whereis' kommandoen. Ulempen er at den ikke søger i hele filsystemet. Den bruges således:

bruger@debian:~$ whereis vi
vi: /bin/vi /usr/bin/vi /usr/share/man/man1/vi.1.gz