Sto usando Debian Sid, disco rigido formattato con ext4, in esecuzione su Linux 3.1
Ricordo che nelle versioni precedenti di Linux (forse prima della 3.0), se esaurivo la memoria e lo scambio non è abilitato, i programmi di solito si bloccano. Questo è perfetto per il mio ambiente: navigazione web semplice senza operazioni critiche. Cioè, se mi imbatto in un sito Web errato che utilizza troppa memoria, si blocca senza rendere inutilizzabile il mio terminale.
Ma nella mia configurazione attuale, il computer si blocca con un throughput I / O violento in background. iotop rivela che kswapd0 è il colpevole, il che significa che è dovuto allo scambio. Dopo aver usato swapon -s
per determinare eventuali swap abilitati, ho usato swapoff -a
per disabilitare tutti gli swap e di swapon -s
nuovo per confermare che tutti gli swap erano disabilitati.
Quindi ho provato di nuovo a massimizzare l'utilizzo della memoria. Purtroppo, il comportamento che mi aspettavo non si è verificato. Al contrario, kswapd0 prova ripetutamente a scambiare la RAM e fallisce perché non c'è spazio di scambio. Poiché non si arrende mai, il mio computer è bloccato in un eterno blocco I / O pesante, dannoso per la salute del mio disco.
Sto facendo qualcosa di sbagliato nel tentativo di farlo swapoff -a
? Perché il comportamento è diverso da quello che era (probabilmente prima della 3.0)?
fstab
riga sullo swap. Prova se il comportamento è lo stesso.
swapoff -a
dovrebbe disabilitare lo scambio in modo permanente, il che significa che dovrebbe rimanere disabilitato dopo il prossimo riavvio. L'ho confermato. Tuttavia, la "tempesta" I / O si verifica ancora durante la sessione dopo il successivo riavvio. Per la cronaca, la "tempesta" I / O non è avvenuta nel momento in cui l'ho fatto swapoff -a
perché lo swap era 0 in quel momento.
swapoff -a
è permanente.
swapoff -a
sé , se ci fosse qualcosa nello swap, genererà un sacco di I / O (e può causare l'uccisione di processi se non c'è abbastanza RAM disponibile). Sei sicuro che non sia stata laswapoff -a
causa della "tempesta" I / O?