Filsystemet i Linux, likt andra operativsystem, organiserar data och filer på disken. Det tillåter användaren att strukturera, lagra och hantera information. I Linux är filsystemet en del av ett hierarkiskt system med rötterna i en rotkatalog. Det inkluderar kataloger som /home för användarhemkataloger, /bin för binära verktyg och /etc för konfigurationsfiler.
Linux-filsystemet bygger på en hierarki av kataloger och filer. Vissa kataloger innehåller systemfiler som endast kan ändras av root-användaren eller administratören. Viktiga egenskaper för Linux-filsystemet inkluderar:
- Åtkomstkontroll: Filrättigheter styrs av behörigheter för ägare, grupp och andra användare, vilket skyddar systemkritiska filer från otillåten åtkomst.
- Monteringspunkter: Alla enheter och partitioner (som hårddiskar och nätverksenheter) monteras inom filsystemets struktur, vilket gör dem åtkomliga under rot (/).
- Fil- och katalogstruktur: Filsystemet har en tydlig och organiserad struktur där varje katalog har en specifik roll, exempelvis för systemkommandon och /etc för konfigurationsfiler.
- Virtuella och temporära filer: Kataloger som /proc innehåller virtuella filer för systeminformation, medan /temp används för temporära filer som automatiskt rensas ut vid omstart.
- Symboliska och hårda länkar: Linux tillåter länkar som skapar kopplingar mellan filer utan att duplicera innehåll, vilket underlättar systemadministration och lagringshantering.
/bin och /sbin | Här finns det binära exekverbara filer, de vanligaste programmen man använder som exempelvis kommandon. De kommandon som kräver root för åtkomst ligger dock i mappen /sbin. Användarspecifika program som man installerar själv hamnar ofta under/usr/local/bin. |
/etc | Innehåller konfigurationsfiler i vanligt textformat. Filerna kan redigeras med en vanlig texteditor. Vi kommer främst använda oss av nano. |
/home | Användarnas hemkataloger. Root-användaren har dock en egen katalog /root |
/lib | Systemfiler och biblioteks filer, liknande Windows dll filer |
/media | Innehåller genvägar till CD-ROM och Floppy |
/root | Root-användarens hemkatalog. |
/usr | Innehåller gemensamma program för alla användare, liknande Windows Program Files katalogen. De flesta stora program ligger här. Om man inte vet vart programmet installerats är detta ett bra ställe att börja leta på. |
/var | ”Felsökningskatalogen” Här hamnar loggfiler samt temporära filer som används vid felsökning av systemet. I den kan hittas katalogen /log |
/proc | Kärnfilerna ligger här och bör naturligtvis inte röras om man inte är helt på det klara med vad man gör. |
/dev | Devices – drivrutiner för hårdvaran. |
/mnt | Standardkatalog för att montera flyttbara enheter t.ex. USB-minne. Behövs oftast inte göras i den grafiska miljön längre, dock behövs det om man arbetar i text-läge. |
Filsystemhantering
Här är några viktiga kommandon för att hantera Linux-filsystemet. Från att navigera, hantera filer och kataloger, kontrollera utrymme, till att montera och avmontera enheter.
Navigering och visning
- pwd – Anger den aktuella katalogen man befinner sig
- ls – Listar filer och kataloger. Vanliga alternativ inkluderar -l (detaljerad lista), -a (visar även dolda filer), och -h (visar storlek i läsbart format).
- cd – Byter katalog. Skriv cd utan argument för att gå till hemkatalogen. För att gå direkt till rotkatalogen (C:\) skriv på prompten cd /
Filhantering
- cp – Kopierar filer och kataloger. Använd -r för att kopiera kataloger rekursivt. Syntax: cp source_file destination_file
- mv – Flyttar eller byter namn på filer och kataloger. Syntax: mv old_name new_name för att byta namn och mv file /path/to/destination för att flytta filer till en annan katalog.
- rm – Tar bort filer och kataloger. Använd -r för att ta bort kataloger rekursivt och -f för att tvinga borttagning. rm file_name för att ta bort filer och rm -rf directory_name för att ta bort en katalog.
- mkdir – Skapar en ny katalog. Använd -p för att skapa underkataloger rekursivt. mkdir new_directory för att skapa en ny katalog och mkdir -p parent_directory/sub_directory för att skapa katalog och underkatalog samtidigt.
- rmdir – Tar bort en tom katalog. Syntax: rmdir empty_directory
Hantering av filsystem och enheter
- mount – Monterar ett filsystem. För att montera en USB-enhet på /mnt/usb:
- sudo mount /dev/sdb1 /mnt/usb
- umount – Avmonterar ett filsystem.
- sudo umount /mnt/usb
- df – Visar diskutrymme på monterade filsystem. Använd -h för ett läsbart format.
- du – Beräknar utrymme som används av filer och kataloger. Använd -h för ett läsbart format och -s för en sammanfattning. Exempel: du -sh /path/to/directory
- fsck – Kontrollera och reparera filsystem. Detta kommando kräver ofta root-privilegier. Exempel: sudo fsck /dev/sdb1
Filåtkomst och rättigheter
- chmod – Ändrar filrättigheter. Använd numerisk eller symbolisk notation för rättigheter.
- chmod 755 file_name
- chown – Ändrar ägare och grupp för en fil eller katalog.
- sudo chown owner:group file_name
- chgrp – Ändrar en fils grupp utan att ändra ägaren.
- sudo chgrp group_name file_name
Skapande och hantering av symboliska och hårda länkar
- ln – Skapar en hård länk. Exempel: ln existing_file link_name
- ln -s: Skapar en symbolisk länk (mjuk länk). Exempel: ln -s /path/to/original /path/to/link
Sökning och information
- find – Söker efter filer och kataloger. Syntax: find /path -name ”filename”
- locate – Söker snabbt efter filer och kataloger baserat på en indexerad databas. Syntax: locate filename
- stat – Visar detaljerad information om en fil eller katalog, inklusive rättigheter, ägare och tidsstämplar. Syntax: stat file_name
- file – Visar filtyp och identifierar innehållet i en fil. Syntax: file file_name
Hantering av arkiv och komprimerade filer
- tar – Skapar eller extraherar arkiv.
- Skapa ett arkiv: tar -cvf archive.tar /path/to/directory
- Extrahera ett arkiv: tar -xvf archive.tar
- gzip eller gunzip – Komprimerar och dekomprimerar filer. Syntax: gzip file_name eller gunzip file_name.gz
- zip eller unzip – Komprimerar och dekomprimerar zip-filer.
- zip archive.zip file1 file2
- unzip archive.zip
Dessa kommandon täcker många av de vanliga uppgifterna för att hantera filsystem och filer i Linux.
Absolut och relativ sökväg
Sökvägen som anger hela vägen till destinationsmappen kallas för absolut sökväg. Det betyder att den utgår ifrån roten /. Till exempel chalo@maximus:~$ cd /home/chalo/Photos/2015
Är du redan en bit på vägen till en viss mapp är det enklare att ange en relativ sökväg, därifrån man startar ändringen. Observera att i kommandot inkluderas inte /. Till exempel:
chalo@maximus:~$ cd Photos/2015
Att få hjälp
Det grafiska gränssnittet för hjälp kan tas fram genom att klicka på ”dash”, första ikonen i start menyn, och skriva i sökfältet help. Då får man en annan ikon med namn Help. När man startar den visas en omfattande information. På terminalen kan man skriva också help och trycka på Enter för att få hjälp. Men när du skriver långa kommandon har du stor hjälp av att trycka på TAB-tangenten istället, för då kompletterar skalet dina kommando automatiskt. Som hjälpresurser kan nämnas google, bloggar, forum, youtube, etc.
Manualsidor – man
Kommandot man är terminalens inbyggda manual som innehåller väldigt mycket. Till en början är inte lätt att läsa av man-sidorna men man blir bekant så småningom. Exempelvis kan du få fram specifik information om kommandot LS
chalo@maximus:~/labbmapp$ man ls
Du kommer att se att det finns fler alternativ än ls -l och ls -a. Manualsidorna finns också på Internet:
https://manpages.ubuntu.com/manpages/oracular/en/man1/man.1.html