Product SiteDocumentation Site

Appendix B. Kort snabbkurs

Även om denna bok i huvudsak har administratörer och avancerade användare som målgrupp vill vi inte exkludera motiverade nybörjare. Denna bilaga kommer därför att utgöra en snabbkurs som beskriver de grundläggande koncepten som inbegrips i att hantera en Unix-dator.

B.1. Skalet och grundläggande kommandon

I Unix-världen måste varje administratör använda kommandoraden förr eller senare; till exempel när systemet misslyckas med att starta upp korrekt och endast tillgängliggör ett räddningsläge med en kommandorad. Att kunna hantera ett sådant gränssnitt är därför en grundläggande överlevnadskunskap under dessa förutsättningar.
Detta avsnitt ger endast en snabbtitt på kommandona. De har alla flertalet flaggor som inte beskrivs här, så referera till den rikliga dokumentationen i deras respektive manualsidor.

B.1.1. Att bläddra i katalogstrukturen och att hantera filer

När en session är öppen visar kommandot pwd (som står för print working directory, skriv ut arbetskatalog) den aktuella platsen i filsystemet. Den aktuella katalogen ändras med kommandot cd katalog (cd är kort för change directory, byt katalog). Föräldrakatalogen kallas alltid .. (två punkter), medan den aktuella katalogen också är känd som . (en punkt). Kommandot ls möjliggör listning av innehållet i en katalog. Om inga parametrar anges arbetar det på den aktuella katalogen.
$ pwd
/home/rhertzog
$ cd Skrivbord
$ pwd
/home/rhertzog/Skrivbord
$ cd .
$ pwd
/home/rhertzog/Skrivbord
$ cd ..
$ pwd
/home/rhertzog
$ ls
Bilder  Dokument  Hämtningar  Mallar
Musik   Publikt   Skrivbord   Video
En ny katalog kan skapas med mkdir katalog, och en existerande (tom) katalog kan tas bort med rmdir katalog. Kommandot mv möjliggör förflyttning (moving) och/eller namnbyte för filer och kataloger; borttagning av en fil åstadkoms med rm fil.
$ mkdir test
$ ls
Bilder   Dokument   Hämtningar  Mallar  Musik 
Publikt  Skrivbord  Video       test
$ mv test ny
$ ls
Bilder   Dokument   Hämtningar  Mallar  Musik 
Publikt  Skrivbord  Video       ny
$ rmdir ny
$ ls
Bilder  Dokument  Hämtningar  Mallar
Musik   Publikt   Skrivbord   Video

B.1.2. Visa och modifiera textfiler

Kommandot cat fil (avsett att konkatenera filer till enheten standard ut) läser en fil och visar dess innehåll i terminalen. Om en fil är för stor för att få plats på en skärm, använd en sidvisare så som less (eller more) för att visa den sida för sida.
Kommandot editor startar en textredigerare (så som vi eller nano) och tillåter skapande, modifiering och läsning av textfiler. De enklaste filerna kan ibland skapas direkt från kommandotolken tack vare omdirigering: echo "text" > fil skapar en fil vid namn fil med innehållet ”text”. Att lägga till en rad på slutet av filen är också möjligt, med ett kommando så som echo "mertext" >>fil. Notera >> i detta exempel.

B.1.3. Att söka efter filer och inom filer

Kommandot find katalog kriterier letar efter filer i hierarkin under katalog enligt flertalet kriterier. Det vanligaste kriteriet är -name namn: detta möjliggör sökning efter en fil efter namn.
Kommandot grep uttryck filer genomsöker innehållet i filerna och extraherar rader som matchar det reguljära uttrycket (se sidopanelen BACK TO BASICS Regular expression). Att lägga till flaggan -r aktiverar en rekursiv sökning av alla filer som finns i katalogen som anges som parameter. Detta möjliggör sökning efter en fil när endast en del av dess innehåll är känt.

B.1.4. Hantera processer

Kommandot ps aux listar processerna som för närvarande kör och hjälper till att identifiera dem genom att visa deras pid (process-ID). När pid för en process är känt låter kommandot kill -signal pid en signal skickas till processen (om processen tillhör den aktuella användaren). Flera signaler existerar; vanligast är TERM (en begäran om att graciöst avsluta programmet) och KILL (en påtvingad död).
Kommandotolken kan också köra program i bakgrunden om kommandot åtföljs av ett ”&”. Genom att använda och-tecknet återfår användare kontrollen av skalet omedelbart även om programmet fortfarande kör (gömt från användaren; som en bakgrundsprocess). Kommandot jobs listar processerna som kör i bakgrunden; för att återuppta ett jobb i förgrunden kör fg %job-number (som i förgrund). När ett kommando kör i förgrunden (antingen för att det startades normalt, eller återupptaget i förgrunden med fg), kan tangentkombinationen Ctrl+Z användas för att pausa processen och återuppta kontrollen av kommandoraden. Processen kan sedan återstartas i bakgrunden med bg %job-number (efter bakgrund).

B.1.5. Systeminformation: Minne, diskutrymme, identitet

Kommandot free visar information om minnet; df (disk free, ledig disk) rapporterar om tillgängligt diskutrymme på vardera av de monterade diskarna i filsystemet. Dess flagga -h (för human readable, mänskligt läsbar) konverterar storlekarna till en mer lättförståelig enhet (vanligtvis mebibyte eller gibibyte). På samma sätt har kommandot free stöd för flaggorna -m och -g och visar då data antingen i mebibyte eller gibibyte.
$ free
             total       använt     fritt    delat     buffertar   cache
Minne:     1028420    1009624      18796          0      47404     391804
-/+ buff/cache:        570416     458004
Växl.:     2771172     404588    2366584
$ df
Filsystem            1K-block       Använt Tillgängligt Anv% Monterat på
/dev/sda2              9614084   4737916   4387796  52% /
tmpfs                   514208         0    514208   0% /lib/init/rw
udev                     10240       100     10140   1% /dev
tmpfs                   514208    269136    245072  53% /dev/shm
/dev/sda5             44552904  36315896   7784380  83% /home
Kommandot id visar identiteten för användare som kör sessionen, tillsammans med listan över grupper som de är medlemmar i. Då åtkomst till vissa filer eller enheter kan vara begränsat till gruppmedlemmar kan det vara användbart att kontrollera gruppmedlemskap.
$ id
uid=1000(rhertzog) gid=1000(rhertzog) groups=1000(rhertzog),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),108(netdev),109(bluetooth),115(scanner)