Come aggiungere spazio di swap su Ubuntu 20.04

Questo tutorial si concentra su come creare spazio di swap su Ubuntu 20.04 utilizzando una partizione di swap o un file di swap.

Per gli amministratori di sistema, è abbastanza comune per i server esaurire la RAM.

In alcuni casi, si possono aver lanciato troppi programmi o alcuni dei programmi stanno già utilizzando troppe risorse.

In questo caso, non si hanno molte opzioni.

Potresti fermare alcuni processi per guadagnare un po’ di RAM, ma potresti non essere in grado di farlo.

Per fortuna, hai un’altra soluzione: aggiungere dello spazio di swap.

In questo tutorial, imparerai come puoi aggiungere spazio di swap su Ubuntu 20.04: tramite una partizione di swap o un file di swap.

Tabella dei contenuti

Prequisiti

Prima di iniziare, assicurati di avere i privilegi sudo su Ubuntu 20.04.

$ groups

Se vedi i gruppi “sudo” nella lista dei gruppi, dovresti essere in grado di creare una partizione di swap.

Check Existing Swap Partitions

Per controllare le partizioni di swap esistenti sul tuo sistema, devi usare il comando “swapon”.

$ sudo swapon --show

Di default, durante l’installazione di Ubuntu, è molto comune che una partizione di swap sia già stata creata.

Di conseguenza, si dovrebbe vedere il seguente output sulla console.

Come potete vedere, possiedo una partizione di swap chiamata “dm-1” di 980 Mb.

Tuttavia, la mia RAM attuale è sufficiente per il mio server, quindi non viene utilizzata affatto.

Se non sono configurati spazi di swap sul tuo server, dovresti vedere il seguente output.

Aggiungi spazio di swap su Ubuntu 20.04 usando una partizione di swap

Il primo modo per aggiungere spazio di swap su Ubuntu è aggiungere una partizione di swap.

Per aggiungere questa partizione, useremo :

  • il comando “lvcreate” se siete su un dispositivo LVM (cioè una partizione del disco formattata come LVM)
  • il comando “fdisk” se siete su un disco “normale”.

a – Creare una partizione di swap su un dispositivo LVM

Prima di tutto, è necessario ispezionare le partizioni esistenti sul vostro host.

$ sudo fdisk -l

Come potete vedere qui, ho già tre partizioni:

  • /dev/sda1 : la mia partizione avviabile, poiché ho a che fare con un disco MBR;
  • /dev/sda2 : una partizione estesa di 14,5 GB;
  • /dev/sda5 : la mia partizione LVM primaria.

Sapendo questo, potete creare una partizione di swap sulla partizione estesa o sulla vostra partizione LVM primaria.

In questo caso, scegliamo di creare questa partizione su quella LVM.

Di conseguenza, dovremo controllare di avere dello spazio per essa.

Come promemoria, /dev/sda5 è una partizione del disco, chiamata anche volume fisico, collegata a un gruppo di volumi.

Per controllare se abbiamo dello spazio residuo, dobbiamo usare il comando “vgs”.

Se non avete familiarità con LVM, vi consiglio di leggere prima il nostro articolo dedicato all’argomento.

$ sudo vgs

In questo caso, abbiamo circa 980 Mb di spazio rimanente che dovrebbe essere sufficiente per la nostra partizione di swap.

Per creare un nuovo volume logico su questo gruppo di volumi, useremo il comando “lvcreate”.

$ sudo lvcreate -L 500M -n lvswap vgubuntu

Nota: ti potrebbe essere richiesto di eliminare una firma di swap su un dato volume logico. Puoi premere “y”, ti viene chiesta questa informazione perché prima c’era una partizione esistente con lo stesso nome.

Puoi verificare che il tuo volume logico sia stato creato correttamente usando il comando “lvs”.

$ sudo lvs

b – Creare una partizione swap su una partizione regolare

Puoi saltare questa sezione e andare alla prossima se hai già creato la partizione su un dispositivo LVM.

Se avete a che fare con una “regolare” partizione Linux, dovrete usare il comando fdisk.

Nel nostro caso, la nostra partizione “regolare” (tipo Linux) si chiama “/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

Per creare una nuova partizione, dovete usare l’opzione “n”.

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

Potete scegliere di creare una partizione “primaria”. Se hai più di quattro partizioni primarie, allora puoi crearne una logica.

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

In questo caso puoi lasciare i valori predefiniti.

Al prossimo prompt, ti viene chiesto di specificare il primo settore, puoi anche lasciarlo alle impostazioni predefinite.

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

Infine, ti viene chiesto di specificare la dimensione totale della partizione da creare. Nel nostro caso, sceglieremo uno spazio di swap di 1GB (o “+1G”).

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

Di default, la vostra partizione sarà creata con un tipo “Linux” per default.

Voi volete cambiarla con un tipo di partizione swap.

Per ottenere ciò, digitate “t” per “type” e cambiatelo in “82” (per swap)

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

Premete Invio, e assicuratevi che il tipo di partizione sia stato cambiato correttamente.

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

Non dimenticare di scrivere i tuoi cambiamenti sul disco usando il comando “w”.

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

c – Abilitare la tua partizione di swap

Prima di tutto, assicurati di eseguire mkswap in modo che gli header di swap siano correttamente impostati per la partizione.

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

Ora che le intestazioni sono impostate, è semplice come attivare il tuo spazio di swap usando “swapon”.

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

Ora che il tuo swap è attivo, assicurati di elencare nuovamente le partizioni di swap con l’opzione “-show”.

$ sudo swapon --show

Fantastico, hai creato con successo una partizione di swap su Linux!

d – Rendi permanente lo spazio di swap

Come ogni altra partizione, devi rendere permanente la tua partizione.

Se dovessi riavviare il tuo server proprio ora, i cambiamenti non sarebbero persistiti.

Prima di tutto, devi ottenere il tuo UUID per la partizione appena creata.

$ sudo blkid | grep "swap"

Copiate il valore UUID e modificate il file fstab per aggiungere le seguenti modifiche.

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

Salvate il file e riavviate il sistema per assicurarvi che le modifiche siano permanenti.

$ sudo reboot$ sudo swapon --show

Fantastico, le vostre modifiche sono ora permanenti!

Aggiungere spazio di swap su Ubuntu 20.04 usando un file di swap

Un altro modo comune di aggiungere spazio è quello di creare un file dedicato.

Molti tutorial non specificano questo dettaglio, ma i file di swap non possono contenere alcun buco.

Significa che non dovreste usare il comando cp sul vostro host per creare un file di swap.

Per questo, userete il comando “dd” che si assicura di non avere buchi nel vostro file.

a – Creare un file di swap usando dd

Per aggiungere spazio di swap, esegui il seguente comando

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

In questo caso, stai per creare uno spazio di swap di 2Gb.

Assicurati che il tuo file di swap sia stato creato dando il seguente comando.

$ ls -l swapfile

b – Proteggi il tuo file di swap con i permessi

I file di swap sono destinati ad essere utilizzati per l’ottimizzazione della memoria.

Di conseguenza, non dovrebbero essere editati o modificati in alcun modo.

Di conseguenza, cambieremo i suoi permessi.

$ sudo chmod 600 swapfile

In questo caso, il file è in lettura-scrittura solo per l’account root.

c – Abilita il tuo file di swap

Per abilitare il tuo file di swap, puoi usare il comando “mkswap” seguito da quello “swapon”.

$ sudo mkswap swapfile$ sudo swapon swapfile

Ecco, hai creato con successo il tuo file di swap!

L’ultima cosa che devi fare è renderlo permanente usando fstab.

d – Rendi permanente il tuo file di swap

Per rendere permanente il tuo spazio di swap, modifica il file /etc/fstab e incolla le seguenti modifiche.

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

Salva il tuo file e riavvia per essere sicuro che lo spazio di swap sia ancora montato.

$ sudo reboot$ sudo swapon --show

Hai aggiunto con successo dello spazio di swap sulla tua Ubuntu 20.04!

Risoluzione dei problemi

Quando aggiungi spazio di swap su Ubuntu 20.04, potresti incorrere nel seguente errore.

  • swapon: /swapfile: read swap header failed.

Questo errore si verifica quando non si esegue il comando mkswap prima di eseguire il comando swapon.

Come promemoria, mkswap imposta l’intestazione del file o della partizione da usare come spazio di swap.

Se dimenticate di eseguire il comando mkswap, Linux non sarà in grado di assegnarlo come spazio di swap sul vostro host.

  • Failed to find logical volume “vg/lv”

Questo errore accade quando hai cancellato un volume logico che era stato definito per essere caricato nella tua configurazione initramfs.

Per risolvere questo problema, hai due scelte:

  • Esegui “update-initramfs -u”
  • Assicurati che nessun volume logico sia stato originariamente menzionato nel file “resume” del tuo initramfs.

Icone fatte da Freepik da FlatIcon.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.