Sådan tilføjes swap-plads på Ubuntu 20.04

Denne vejledning fokuserer på, hvordan du opretter swap-plads på Ubuntu 20.04 ved hjælp af en swap-partition eller en swap-fil.

For systemadministratorer er det ret almindeligt for servere at løbe tør for RAM.

I nogle tilfælde har du måske startet for mange programmer, eller nogle af programmerne bruger allerede for mange ressourcer.

I dette tilfælde har du ikke mange muligheder.

Du kan enten stoppe nogle processer for at få noget RAM, men det kan du måske ikke gøre.

Godt nok har du en anden løsning : at tilføje noget swap space.

I denne vejledning vil du lære, hvordan du kan tilføje swap space på Ubuntu 20.04 : via en swap-partition eller en swap-fil.

Indholdsfortegnelse

Forudsætninger

Hvor du går i gang, skal du sikre dig, at du har sudo privilegier på Ubuntu 20.04.

$ groups

Hvis du kan se “sudo”-grupperne på gruppelisten, burde du kunne oprette en swap-partition.

Tjek eksisterende swap-partitioner

For at tjekke eksisterende swap-partitioner på dit system, skal du bruge kommandoen “swapon”.

$ sudo swapon --show

Som standard er det meget almindeligt, at der allerede er oprettet en swap-partition under din Ubuntu-installation.

Som følge heraf bør du se følgende output på din konsol.

Som du kan se, ejer jeg en swap-partition ved navn “dm-1” med en størrelse på 980 Mb.

Men min nuværende RAM er tilstrækkelig til min server, så den bliver slet ikke brugt.

Hvis der ikke er konfigureret nogen swap-rum på din server, bør du se følgende output.

Tilføj swap-rum på Ubuntu 20.04 ved hjælp af en swap-partition

Den første måde at tilføje swap-rum på Ubuntu på er at tilføje en swap-partition.

For at tilføje denne partition skal vi bruge :

  • kommandoen “lvcreate”, hvis du er på en LVM-enhed (dvs. en diskpartition, der er formateret som LVM)
  • kommandoen “fdisk”, hvis du er på en “almindelig” disk.

a – Opret swap-partition på en LVM-enhed

Først skal du inspicere de eksisterende partitioner på din vært.

$ sudo fdisk -l

Som du kan se her, ejer jeg allerede tre partitioner :

  • /dev/sda1 : min opstartspartition, da jeg har med en MBR-disk at gøre her;
  • /dev/sda2 : en udvidet partition på 14,5 GBs;
  • /dev/sda5 : min primære LVM-partition.

Ved denne viden kan du enten oprette en swap-partition på den udvidede partition eller på din primære LVM-partition.

I dette tilfælde vælger vi at oprette denne partition på LVM-partitionen.

Som følge heraf skal vi kontrollere, at vi har noget plads til den.

Som en påmindelse er /dev/sda5 en diskpartition, også kaldet et fysisk volumen, der er knyttet til en volumegruppe.

For at kontrollere, om vi har noget tilbageværende plads, skal vi bruge kommandoen “vgs”.

Hvis du ikke er bekendt med LVM, anbefaler jeg, at du først læser vores dedikerede artikel om emnet.

$ sudo vgs

I dette tilfælde har vi ca. 980 Mb tilbageværende plads, hvilket burde være nok til vores swap-partition.

For at oprette et nyt logisk volumen på denne volumegruppe skal vi bruge kommandoen “lvcreate”.

$ sudo lvcreate -L 500M -n lvswap vgubuntu

Bemærk : du kan blive bedt om at slette en swap-signatur på et givet logisk volumen. Du kan trykke “y”, du bliver spurgt om disse oplysninger, fordi der var en eksisterende partition med samme navn før.

Du kan verificere, at dit logiske volumen blev oprettet korrekt ved hjælp af kommandoen “lvs”.

$ sudo lvs

b – Opret swap-partition på en almindelig partition

Du kan springe dette afsnit over og gå til det næste, hvis du allerede har oprettet din partition på en LVM-enhed.

Hvis du har med en “almindelig” Linux-partition at gøre, skal du bruge kommandoen fdisk.

I vores tilfælde hedder vores “almindelige” (Linux-type) partition “/dev/sda2”.

$ sudo fdisk /dev/sdaWelcome to fdisk (util-linux 2.34).Changes will remain in memory only, until you decide to write them.Be careful before using the write command.Command (m for help): n

For at oprette en ny partition skal du bruge “n”-indstillingen.

Command (m for help): nPartition type p primary (1 primary, 0 extended, 3 free) e extended (container for logical partitions)Select (default p) :

Du kan vælge at oprette en “primær” partition. Hvis du har mere end fire primære partitioner, kan du oprette en logisk partition.

Select (default p) : pPartition number (2-4, default 2):

Du kan lade standardindstillingerne stå i dette tilfælde.

På den næste prompt bliver du bedt om at angive den første sektor, du kan også lade det være standardindstillingerne.

All space for primary partitions is in useAdding logical partition 5First sector (48291898-65062911, default 48291840):

Slutteligt bliver du bedt om at angive den samlede størrelse af den partition, der skal oprettes. I vores tilfælde vil vi vælge en 1 GB swap space (eller “+1G”).

Last sector, +/-sectors or +/-size{K,M,G,T,P} : +1GCreated a new partition 5 of type 'Linux' and of size 1 GiB.

Din partition vil som standard blive oprettet med en “Linux”-type som standard.

Du ønsker at ændre det til en swap-partitionstype.

For at opnå dette skal du skrive “t” for “type” og ændre det til “82” (for swap)

Command (m for help): tPartition number (1,2,5, default 5): 1Hex code (type L to list all codes): 82

Hit Enter, og sørg for, at din partitionstype blev ændret korrekt.

Changed type of partition 'Linux' to 'Linux swap / Solaris'

Glem ikke at skrive dine ændringer til disken med kommandoen “w”.

Command (m for help): wThe partition table has been alteredSyncing disks.

c – Aktivering af din swap-partition

Først skal du sørge for at køre mkswap, så swap-headerne bliver sat korrekt for partitionen.

# For a regular partition$ sudo mkswap /dev/sda5# For a LVM partition$ sudo mkswap /dev/vgubuntu/lvswap

Nu hvor headere er indstillet, er det lige så simpelt som at aktivere din swap-plads ved hjælp af “swapon”.

# For a regular partition$ sudo swapon /dev/sda5# For a LVM partition$ sudo swapon /dev/vgubuntu/lvswap

Nu hvor din swap er aktiveret, skal du sørge for at liste dine swap-partitioner igen med “-show”-indstillingen.

$ sudo swapon --show

Fantastisk, det lykkedes dig at oprette en swap-partition på Linux!

d – Gør dit swap-rum permanent

Som alle andre partitioner skal du gøre dine partitioner permanente.

Hvis du skulle genstarte din server lige nu, ville ændringerne ikke blive opretholdt.

Først og fremmest skal du få dit UUID til den nyoprettede partition.

$ sudo blkid | grep "swap"

Kopier UUID-værdien, og rediger fstab-filen for at tilføje følgende ændringer.

$ sudo nano /etc/fstabUUID=<copied value> none swap defaults 0 0

Spar din fil, og genstart dit system for at sikre dig, at dine ændringer er permanente.

$ sudo reboot$ sudo swapon --show

Fantastisk, dine ændringer er nu permanente!

Tilføj swap-plads på Ubuntu 20.04 ved hjælp af en swap-fil

En anden almindelig måde at tilføje plads på er at oprette en fil dedikeret til det.

Mange tutorials angiver ikke denne detalje, men swap-filer kan ikke indeholde nogen huller overhovedet.

Det betyder, at du ikke skal bruge cp-kommandoen på din vært til at oprette en swap-fil.

Dertil skal du bruge kommandoen “dd”, der sørger for, at du ikke har nogen huller i din fil.

a – Opret en swapfil ved hjælp af dd

For at tilføje swapplads skal du køre følgende kommando

$ sudo dd if=/dev/zero of=swapfile bs=1MB count=$((1*2014))

I dette tilfælde skal du oprette en swapplads på 2 Gb.

Sørg for, at din swapfil blev oprettet ved at afgive følgende kommando.

$ ls -l swapfile

b – Sikr din swapfil med tilladelser

Swapfiler er beregnet til at blive brugt til hukommelsesoptimeringsformål.

Som følge heraf bør de ikke redigeres eller ændres på nogen måde.

Som følge heraf vil vi ændre dens tilladelser.

$ sudo chmod 600 swapfile

I dette tilfælde er filen kun læse- og skrivebeskyttet for root-kontoen.

c – Aktiver din swapfil

For at aktivere din swapfil kan du bruge kommandoen “mkswap” efterfulgt af kommandoen “swapon”.

$ sudo mkswap swapfile$ sudo swapon swapfile

Sjovt, det er lykkedes dig at oprette din swapfil!

Den sidste ting, du skal gøre, er at gøre den permanent ved hjælp af fstab.

d – Gør din swap-fil permanent

For at gøre dit swap-område permanent skal du redigere filen /etc/fstab og indsætte følgende ændringer.

$ sudo nano fstab<path_to_file>/swapfile none swap defaults 0 0

Spar din fil og genstart for at sikre dig, at swap-området stadig er monteret.

$ sudo reboot$ sudo swapon --show

Du har med succes tilføjet noget swap space på din Ubuntu 20.04!

Fejlfinding

Når du tilføjer swap space på Ubuntu 20.04, kan du løbe ind i følgende fejl.

  • swapon: /swapfile: read swap header failed.

Denne fejl opstår, når du ikke kører mkswap-kommandoen, før du kører swapon-kommandoen.

Som en påmindelse indstiller mkswap headeren for den fil eller partition, der skal bruges som swap-plads.

Hvis du glemmer at køre mkswap-kommandoen, kan Linux ikke tildele den som swap-plads på din vært.

  • Det lykkedes ikke at finde logisk volumen “vg/lv”

Denne fejl opstår, når du har slettet et logisk volumen, der var defineret til at blive indlæst i din initramfs-konfiguration.

For at rette det har du to muligheder :

  • Kør “update-initramfs -u”
  • Sørg for, at ingen logiske volumener oprindeligt blev nævnt i filen “resume” i din initramfs.

Ikoner lavet af Freepik fra FlatIcon.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.