Product SiteDocumentation Site

Tillegg B. Kort støttekurs

Selv om denne boken i hovedsak retter seg mot administratorer og «superbrukere», så ønsker vi ikke å ekskludere motiverte nybegynnere. Dette vedlegget er derfor et krasjkurs som beskriver de grunnleggende konseptene involvert i håndtering av en Unix-datamaskin.

B.1. Skall og grunnleggende kommandoer

I Unix-verden må enhver administrator bruke kommandolinjen før eller senere; for eksempel når systemet ikke starter som det skal, og en kun har redningsmodus med kommandolinje tilgjengelig. I slike tilfeller vil det være grunnleggende overlevelseskunnskap å håndtere et slikt grensesnitt.
Denne delen gir bare en kort introduksjon til kommandoene. Alle har mange valg som ikke er beskrevet her, så sjekk gjerne ut den rikholdige dokumentasjon på de respektive manualsidene.

B.1.1. Håndtering av filer og titting i treet med mapper

Så snart en økt er åpen, viser pwd-kommandoen (som står for print working directory) den gjeldende plasseringen i filsystemet. Den nåværende mappen endres med kommandoen cd mappe, (cd står for change directory). Foreldremappen har alltid navnet .. (to punktum), mens den gjeldende mappen også er kjent som . (ett punktum). ls-kommandoen åpner for å liste opp innholdet i en mappe. Hvis ingen parametere er angitt, opererer den på den gjeldende mappen.
$ pwd
/home/rhertzog
$ cd Desktop
$ pwd
/home/rhertzog/Desktop
$ cd .
$ pwd
/home/rhertzog/Desktop
$ cd ..
$ pwd
/home/rhertzog
$ ls
Skrivebord    Nedlastninger  Bilder     Maler
Dokumenter    Musikk         Offentlig  Videoer
En ny mappe kan lages med mkdir mappe, og en eksisterende (tom) mappe kan fjernes med rmdir mappe. Kommandoen mv håndterer flytting, og/eller for navnebytte for filer og mapper; fjerning av en fil gjøres med rm fil.
$ mkdir test
$ ls
Bilder      Maler   Nedlastninger  Skrivebord  Videoer
Dokumenter  Musikk  Offentlig      test
$ mv test ny
$ ls
Bilder      Maler   Nedlastninger  Offentlig   Videoer
Dokumenter  Musikk  ny             Skrivebord
$ rmdir ny
$ ls
Bilder      Maler   Nedlastninger  Skrivebord
Dokumenter  Musikk  Offentlig      Videoer

B.1.2. Framvisning og endring av tekstfiler

Kommandoen cat fil (henspeiler på å det engelske ordet «concatenate» for sette sammen, for filer som sendes til standard ut-enheten) leser en fil, og viser innholdet på terminalen. Hvis filen er for stor til å passe til en skjerm, kan du bruke less (eller more) for å vise den sideinndelt.
Kommandoen editor starter en tekstbehandler (som f.eks. vi eller nano), og tillater å lage, endre og lese tekstfiler. De enkleste filene kan noen ganger opprettes direkte fra kommandotolkeren takket være omdirigering: echo «tekst» >fil lager en fil med navnet fil med «tekst» som innhold. Å legge til en linje på slutten av denne filen er også mulig, med en kommando som echo «mertekst» >>fil. Merk deg >> i dette eksemplet.

B.1.3. Søk etter filer og i filer

Kommandoen find mappe kriterier ser etter filer i hierarkiet under mappe som stemmer med flere kriterier. Det mest brukte kriteriet er -name navn, som lar en lete etter en fil basert på navn.
Kommandoen grep uttrykk filer søker igjennom innholdet i filene, og trekker ut de linjene som samsvarer med det regulære uttrykket (se sidestolpe DET GRUNNLEGGENDE Regulært utrykk). Å legge til argumentet -r muliggjør at et rekursivt søk på alle filene i mappen som ble brukt som parameter. Dette gjør det mulig å lete etter en fil når bare en del av innholdet er kjent.

B.1.4. Prosesshåndtering

Kommandoen ps aux viser prosessene som kjører og hjelper å identifisere dem ved å vise deres pid (prosessid). Så snart pid for en prosess er kjent, kan kill -signal pid-kommandoen sende den et signal (hvis prosessen tilhører den aktuelle brukeren). Flere signaler finnes; de mest brukte er TERM (en anmodning om å avslutte forsikting) og KILL (en tvunget avslutning).
Kommandokonsollen kan også kjøre programmer i bakgrunnen hvis kommandoen er etterfulgt av et «&». Ved å bruke &-tegnet (og-tegnet/et-tegnet (ampersand)), får brukeren umiddelbart tilbake kontroll over skallet, selv om kommandoen fortsatt kjører (skjult for brukeren, som en bakgrunnsprosess). Kommandoen jobs lister prosesser som kjører i bakgrunnen. Ved å kjøre fg %jobbnummer (for foreground) tas en jobb tilbake i forgrunnen. Når en kommando kjører i forgrunnen (enten fordi den ble startet normalt, eller bringes tilbake i forgrunnen med fg), så vil Control+Z-tastekombinasjonen pause prosessen, og gi tilbake kontrollen til kommandolinjen. Prosessen kan deretter fortsette og sendes i bakgrunnen med bg %jobbnummer (for background).

B.1.5. Systeminformasjon: Minne, diskplass, identitet

Kommandoen free viser minneinformasjon; df (disk free) rapporterer om ledig diskplass på hver av diskene montert i filsystemet. Begges -h-valg (for human readable det vil si lesbar for mennesker) konverterer størrelsene til en mer leselig enhet (vanligvis mebibytes eller gibibytes). På lignende måte støtter free-kommandoen -m og -g-valgene, og viser dataene dens henholdsvis enten i mebibytes eller i gibibytes.
$ free
              total        used        free      shared  buff/cache   available
Mem:       16279260     5910248      523432      871036     9845580     9128964
Swap:      16601084      240640    16360444
$ df
Filesystem                1K-blocks      Used Available Use% Mounted on
udev                        8108516         0   8108516   0% /dev
tmpfs                       1627928    161800   1466128  10% /run
/dev/mapper/vg_main-root  466644576 451332520  12919912  98% /
tmpfs                       8139628    146796   7992832   2% /dev/shm
tmpfs                          5120         4      5116   1% /run/lock
tmpfs                       8139628         0   8139628   0% /sys/fs/cgroup
/dev/sda1                    523248      1676    521572   1% /boot/efi
tmpfs                       1627924        88   1627836   1% /run/user/1000
Kommandoen id viser identiteten til brukeren som kjører økten, sammen med listen over grupper de er med i. I og med at tilgang til enkelte filer eller enheter kan være begrenset til gruppemedlemmer så kan det være nyttig å sjekke tilgjengelige gruppemedlemskap.
$ 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)