Raspberry Pi ha solo 256 MB di RAM, quindi vorrei utilizzare lo spazio di scambio (su scheda SD o memoria USB collegata). Come lo installo?
Raspberry Pi ha solo 256 MB di RAM, quindi vorrei utilizzare lo spazio di scambio (su scheda SD o memoria USB collegata). Come lo installo?
Risposte:
Raspbian utilizza dphys-swapfile , che è una soluzione basata su file di scambio anziché la soluzione "standard" basata su partizione di scambio. È molto più facile cambiare la dimensione dello swap.
Il file di configurazione è:
/etc/dphys-swapfile
Il contenuto è molto semplice Di default il mio Raspbian ha 100 MB di swap:
CONF_SWAPSIZE=100
Se si desidera modificare le dimensioni, è necessario modificare il numero e riavviare dphys-swapfile:
/etc/init.d/dphys-swapfile restart
Modifica: su Raspbian la posizione predefinita è / var / swap, che si trova (ovviamente) sulla scheda SD. Penso che sia una cattiva idea, quindi vorrei sottolineare che il file / etc / dphys-swap può avere anche la seguente opzione: CONF_SWAPFILE = / media / btsync / swapfile
Ho solo un problema, l'archiviazione USB è montata automaticamente, quindi una potenziale corsa qui (automount vs. swapon)
/var/swap
è una cattiva idea?
Puoi impostare lo spazio di swap in modo abbastanza semplice. Ad esempio, se il tuo drive USB è /dev/sdx
, dovresti usare (devi essere root per questo):
$ mkswap /dev/sdx
$ swapon /dev/sdx
Nota che questo userebbe l'intero dispositivo e probabilmente perderai tutti i dati esistenti su di esso.
Puoi anche creare un file di scambio (usando un loop
dispositivo) in questo modo:
$ dd if=/dev/zero of=/path/to/swapfile bs=1M count=1024 # For 1GB swap file
$ mkswap /path/to/swapfile
$ swapon /path/to/swapfile
Quando non è più necessario il file di scambio (ad esempio se si desidera espellere l'unità USB), è necessario utilizzare swapoff <device>
. In caso contrario, probabilmente si verificherà un arresto anomalo del sistema.
Dovresti stare attento però . Le schede SD hanno limiti di lettura / scrittura limitati e ne ridurranno la durata. Se stai usando un disco rigido esterno, dovresti andare bene, ma sarà molto lento.
mkswap
sulla loro partizione di root. Penso che sdx
sia una buona convenzione.
Non farlo affatto.
Si dovrebbe non consentire di swap sul Raspberry Pi.
Sebbene sia possibile, non è utile. Anche su una scheda SDHC di classe 10, è troppo lento. Inoltre ridurrai la durata della scheda SD.
Su qualsiasi dispositivo di archiviazione basato su flash (scheda SD, SDD, chiavette USB) è anche probabile che vengano visualizzate pause a livello di sistema mentre viene cancellato un ampio gruppo di blocchi flash.
Possibili eccezioni:
Raspbmc utilizza /etc/init/swap.conf
per configurare lo scambio tramite il file / swap. Per prima cosa controlla la presenza di /home/pi/.enable_swap
.
Se si elimina, il /home/pi/.enable_swap
file di scambio non viene creato, quindi ricrearlo con touch /home/pi/.enable_swap
se è necessario attivare e riavviare lo scambio.
È un peccato che Raspberry Pis non abbia GigaBit Ethernet ma almeno teoricamente è possibile avere spazio di swap su un dispositivo di rete - il Linux Terminal Server Project può offrirlo dal server ai client secondo questo articolo sul loro wiki .
Ho trovato un argomento del Forum della Fondazione "Suggerimento: Scambia su nfs" che mostra come qualcuno che aveva già alcuni montaggi NFS già in atto utilizzava un file di scambio su uno di essi e lo montava tramite un loop-mount (probabilmente necessario perché Linux non consente un Attacco NFS da utilizzare direttamente). Dato che il file di scambio remoto conterrà dati che il sistema operativo non deve perdere, lo prenderei in considerazione solo per una rete Ethernet cablata: un collegamento wireless sarebbe troppo fragile IMHO. Inoltre, ovviamente non devi consentire lo spegnimento del server remoto senza disattivare lo swap e consentirne prima lo svuotamento completo!