Lo spazio swap è l'area riservata di un disco che il software del sistema operativo Oracle Solaris e il software delle applicazioni possono usare per la memorizzazione temporanea. Lo spazio swap è utilizzato come area di memorizzazione virtuale qualora il sistema non disponga di memoria fisica sufficiente per gestire i processi attualmente in esecuzione. In Oracle Solaris 10 un ambiente root UFS fornisce una slice di disco sia per i dispositivi swap che per i dispositivi dump. In Oracle Solaris 11 vengono creati due volumi separati, uno come dispositivo swap e uno come dispositivo dump. In un file system root ZFS, lo spazio su disco riservato per l'area swap è un volume ZFS. Utilizzare il comando dumpadm come descritto di seguito per visualizzare queste informazioni.
# dumpadm Dump content: kernel pages Dump device: /dev/zvol/dsk/rpool/dump (dedicated) Savecore directory: /var/crash Savecore enabled: yes Save compressed: on
# swap -l swapfile dev swaplo blocks free /dev/zvol/dsk/rpool/swap 182,2 8 4061176 4061176
Visualizzare informazioni sui nomi e le dimensioni dei volumi swap e dump, come descritto di seguito.
# zfs list -t volume -r rpool NAME USED AVAIL REFER MOUNTPOINT rpool/dump 4.13G 51.6G 4.00G - rpool/swap 4.13G 51.6G 4.00G -
È possibile visualizzare le dimensioni dello spazio di swap in un formato leggibile, come descritto nel seguente esempio.
# swap -sh total: 1.4G allocated + 227M reserved = 1.6G used, 432G available # swap -lh swapfile dev swaplo blocks free /dev/zvol/dsk/rpool/swap 285,2 8K 4.0G 4.0G
Di seguito viene indicato in quale modo la gestione dei volumi di swap e di dump ZFS è diversa da quella di una singola slice per un dispositivo swap e dump UFS.
Non è possibile utilizzare un singolo volume per entrambi i dispositivi swap e dump in un ambiente root ZFS.
Non è possibile utilizzare un file come dispositivo swap in un ambiente root ZFS.
Il sistema richiede che la dimensione del dispositivo dump sia pari alla metà o ai 3/4 della dimensione della memoria fisica. Se il dispositivo dump è troppo piccolo, viene visualizzato un messaggio di errore simile al seguente.
# dumpadm -d /dev/zvol/dsk/rpool/dump dumpadm: dump device /dev/zvol/dsk/rpool/dump is too small to hold a system dump dump size 36255432704 bytes, device size 34359738368 bytes
È possibile aumentare facilmente la dimensione del dispositivo dump aumentando il valore della proprietà volsize del volume, come descritto nell'esempio riportato di seguito, ma la reinizializzazione del volume potrebbe richiedere del tempo.
# zfs get volsize rpool/dump NAME PROPERTY VALUE SOURCE rpool/dump volsize 1.94G local # zfs set volsize=3g rpool/dump # zfs get volsize rpool/dump NAME PROPERTY VALUE SOURCE rpool/dump volsize 3G local
Se il dispositivo swap è in uso, è difficile modificare la dimensione del volume di swap. Si consideri la possibilità di creare un secondo volume di swap e di aggiungerlo come dispositivo swap, come descritto di seguito.
# zfs create -V 3G rpool/swap2 # swap -a /dev/zvol/dsk/rpool/swap2 # swap -l swapfile dev swaplo blocks free /dev/zvol/dsk/rpool/swap 182,2 8 4061176 4061176 /dev/zvol/dsk/rpool/swap2 182,4 8 6291448 6291448
Aggiungere quindi una voce per il nuovo dispositivo swap nel file /etc/vfstab. Ad esempio:
/dev/zvol/dsk/rpool/swap2 - - swap - no -
Per ulteriori informazioni sulla configurazione dello spazio di swap e del dispositivo di dump, vedere About Swap Space in Managing File Systems in Oracle Solaris 11.2 .