Ci saranno momenti in cui è necessario aumentare la capacità di risposta del server per evitare problemi di memoria insufficiente. Problemi di memoria insufficiente si verificano quando un'applicazione in esecuzione sul server inizia a consumare una grande quantità di memoria. Swap è progettato come memoria virtuale , che utilizza l'hard disk per archiviare dati che non possono essere conservati nella RAM. Questo tutorial ti mostrerà come creare un file di scambio, che dovrebbe funzionare su Ubuntu, CentOS e Debian. Questo tutorial non è pensato per alcun ISO personalizzato, ma è possibile seguirlo.
Passaggio 1: verificare che lo scambio non esista
Per evitare problemi durante questa esercitazione, è necessario eseguire quanto segue per verificare che uno spazio di scambio non sia attualmente attivo:
free -m
Dopo aver eseguito quel comando dovresti vedere qualcosa di simile a questo output:
total              used       free     shared    buffers     cached
Mem:               1840       1614     226       15          36       1340
-/+ buffers/cache:            238      1602
Swap:              0          0        0
Se vedi un valore di 0nella Swapsezione, puoi procedere al passaggio 2.
In alternativa, è possibile eseguire il comando seguente per vedere se esiste un file di scambio configurato:
swapon -s
Se non vedi alcun output da swapon, quindi vai al passaggio 2.
Passaggio 2: creare il file di scambio
Dovrai scegliere una posizione per il tuo file. In questo tutorial, verrà archiviato nella radice del server. Creeremo un file di scambio da 2 GB eseguendo il comando seguente:
dd if=/dev/zero of=/swapfile count=2048 bs=1M
Il ddcomando produrrà output in un formato simile a:
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 10.5356 s, 204 MB/s
Successivamente, verifica che il file si trovi nella radice del tuo VPS Vultr eseguendo:
ls / | grep swapfile
Procedi se vedi il swapfilefile.
Passaggio 3: attivare il file di scambio
I file di scambio non vengono riconosciuti automaticamente. Dovremo dire al server come formattare il file e abilitarlo in modo che possa essere utilizzato come file di scambio valido. Come misura di sicurezza, aggiorna le autorizzazioni del file di scambio per consentire solo R / W per root e nessun altro utente. Correre:
chmod 600 /swapfile
La modifica dell'autorizzazione può essere verificata eseguendo il comando seguente:
ls -lh /swapfile
Vedrai un display di file:
-rw------- 1 root root 2.0G Oct  2 18:47 /swapfile
Quindi, dire al server di configurare il file di scambio eseguendo:
mkswap /swapfile
Dopo averlo eseguito, vedrai il seguente output:
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=ff3fc469-9c4b-4913-b653-ec53d6460d0e
Se tutto è mostrato come sopra, ora sei pronto per passare al passaggio successivo.
Passaggio 4: attiva lo scambio
Una volta che il file è pronto per essere utilizzato come scambio, è necessario abilitarlo eseguendo:
swapon /swapfile
È possibile verificare che il file di scambio sia attivo eseguendo freenuovamente il comando.
free -m
total       used       free     shared    buffers     cached
Mem:          1840       1754         86         16         23       1519
-/+ buffers/cache:        210       1630
Swap:         2047          0       2047
Se Swapmostra qualcosa di diverso da 0, hai impostato correttamente lo scambio.
Passaggio 5: abilitare lo scambio al riavvio
Per impostazione predefinita, il tuo server non abiliterà automaticamente questo nuovo file di scambio. Per abilitarlo all'avvio, è possibile aggiornare il /etc/fstabfile. Qualsiasi editor di testo sarà sufficiente. In questo esempio, userò nano.
nano /etc/fstab
Aggiungi la seguente riga alla fine del file:
/swapfile   none    swap    sw    0   0
Salva e chiudi quando hai finito di modificare il file. Abbiamo finito!