Esigenze
Hai bisogno di più memoria in modo permanente o temporaneo, ad esempio per un processo complesso. Non si può o non si vuole creare una nuova partizione di swap.
La soluzione
Linux può anche utilizzare lo swap come file. I file di swap possono essere aggiunti e rimossi in un sistema in esecuzione.
La procedura
Per prima cosa si crea un file in cui effettuare lo swap. La sua dimensione determina la quantità di spazio di swap ottenuto. Il file non viene aumentato o ridotto automaticamente da Linux. È possibile creare il file, ad esempio, copiando zero byte dal file /dev/zero
con il comando dd
. bs
sta per blocksize. M
sta per Megabyte. Il seguente comando crea un file /tmp/swap.img
di dimensioni pari a 512 MB:
root@linux# dd if=/dev/zero of=/tmp/swap.img bs=1M count=512
Ora è necessario creare una firma di scambio in questo file. A tale scopo si utilizza il comando mkswap
:
root@linux# mkswap /tmp/swap.img
Swapbereich Version 1 wird angelegt, Größe 536866 KBytes
Il nuovo spazio di scambio è integrato in swapon
e diventa immediatamente attivo:
root@linux# swapon /tmp/swap.img
Il comando free -m
mostra la memoria e lo spazio di swap in megabyte:
root@linux# free -m
total used free shared buffers cached
Mem: 1977 1255 721 0 79 957
-/+ buffers/cache: 219 1758
Swap: 511 0 511
Tutte le aree di scambio attive sono elencate da swapon -s
:
root@linux# swapon -s
Filename Type Size Used Priority
/tmp/swap.img file 524280 0 -1
Il comando swapoff
disattiva il file di swap:
root@linux# swapoff /tmp/swap.img
A questo punto è possibile eliminare il file:
root@linux# rm /tmp/swap.img
Nota: i file di scambio attivati con swapon
non vengono riattivati automaticamente dopo un riavvio. Per questo, devono essere inseriti in /etc/fstab
.