Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 73 del 31/10/2007 16.25.48

Nascondi questo messaggio

BR

Introduzione

  • Questa FAQ è rivolta agli utenti inesperti di Linux

  • Le persone si domandano sempre quanta swap dovrebbero mettere durante l'installazione del sistema operativo. Oppure, dopo l'installazione, si domandano: avrò messo abbastanza swap? Forse dovrei reinstallare il sistema aggiungendo più swap?
  • Questa faq ti dirà di quanta swap hai bisogno e come aggiungere ulteriore memoria di swap dopo l'installazione.
  • Ti saranno date risposte semplici (così non dovrai perdere molto tempo a leggere questa faq) ed alcune spiegazioni che potranno aiutarti a capire meglio il funzionamento del tuo sistema operativo preferito :)

Di quanta swap ho bisogno?

La dimensione dell'area di swap è funzione della quantità di memoria installata e dell'utilizzo che verrà fatto del sistema. Solitamente, per sistemi con memoria fino a 512 (o anche 768) MiB, si consiglia la creazione di una partizione di swap di dimensione variabile da 1 (o 1,5) fino a 2 volte la RAM (quindi da 512 MiB a 1 GiB circa, a seconda delle esigenze). Per sistemi con quantitativi superiori a 512-768 MiB non è più necessario seguire la regola precedente: è sufficiente allocare un'area di swap con dimensioni pari alla RAM disponibile, e in casi di utilizzo a basse prestazioni (in ufficio per esempio), anche una quantità inferiore. È infatti eccessivo allocare 2 GiB per lo swap in sistemi dotati di 1 GiB di RAM (o più) e principalmente utilizzati per applicazioni da ufficio: in tal caso potranno bastare anche soltanto 512 MiB.

A cosa serve la swap?

Come vedremo, ci sono tre fondamentali e differenti motivi per avere una memoria swap:

  • Alcuni programmi necessitano di molta memoria di lavoro per funzionare correttamente.
  • Avere più memoria a portata di mano può comunque risultare utile in certe situazioni.
  • La memoria di lavoro viene ottimizzata.

Per iniziare, diciamo che i computer sono cambiati molto da quando fu introdotto il sistema di memoria swap: all'inizio, si aveva la necessità di estendere la reale capacità di memoria di lavoro del computer; grazie allo swap, la memoria disponibile nel sistema diventava la somma dello spazio ram più lo spazio swap. Oggigiorno, la dotazione di ram è spesso abbastanza grande, al punto che il nostro computer potrebbe non avere per niente bisogno della swap.

  • Alcuni programmi necessitano di molta memoria di lavoro per funzionare correttamente: In certi casi, l'uso di programmi grossi (come OpenOffice, giochi 3D, editor video e grafica) rende l'intero sistema bisognoso di memoria extra. In questi casi, la swap sarà usata per rendere il sistema più maneggevole.

  • Avere più memoria a portata di mano può comunque risultare utile in certe situazioni: possono accadere eventi imprevedibili (un programma va in errore e comincia a consumare memoria in modo inaspettato, alcune azioni chiedono più memoria del normale ed altri eventi del genere). In questi casi la swap permetterà al computer di continuare a funzionare, per salvare il lavoro corrente o per indagare su cosa stia andando per il verso sbagliato nei programmi aperti.
  • La memoria di lavoro viene ottimizzata: l'accesso alla memoria RAM è estremamente più veloce rispetto al disco rigido. Normalmente, un file (sia esso un file dati, un binario oppure librerie), viene letto sul disco rigido dal sistema che subito dopo lo alloca nella ram, in modo tale che sia pronto all'uso. Questa parte di RAM si chiama "memoria cache" e porta ad un'enorme riduzione dei tempi di risposta del computer. Linux automaticamente muove la memoria riservata per i programmi (quelli che non sono in uso al momento) dalla ram al disco fisso, in modo tale che questa ram può essere usata per ottimizzare la memoria cache.

Dovrei reinstallare Ubuntu impostando più memoria swap?

  1. Assolutamente no, non devi reinstallare niente.
  2. Se hai bisogno di più swap, basta leggere la sezione "Come posso aggiungere altra memoria swap?".

Come posso aggiungere altra memoria swap?

  • Di solito, le persone associano lo swap ad una partizione dedicata allo swap, forse perchè gli è stato suggerito di creare una partizione di swap durante l'installazione di Ubuntu. In realtà è possibile usare per lo swap sia una partizione che un normale file.
  • E' comunque vero che una partizione di swap è più veloce di un file di swap, ma la differenza non è poi così tanta. Se la vostra memoria swap viene usata di continuo dal sistema, il miglior modo per migliorare le prestazioni resta comunque l'aggiunta di un nuovo banco di ram, swappare una partizione o un file non cambierà di molto le cose in ogni caso.
  • In questo esempio aggiungeremo memoria creando un nuovo file di swap al sistema.
  • Sono sufficienti quattro passi:

    1. Creazione di un file con la dimensione voluta.
    2. Formattazione di questo file per creare un dispositivo(device) di swap.
    3. Aggiunta di questo swap file al sistema corrente.
    4. Rendere permanente l'impostazione effettuata.
  • Facciamo il caso che abbiamo bisogno di 512 Mb di swap.
  • Creazione di un file con la dimensione voluta:
    1. Il file di swap sarà /mnt/512Mb.swap.
    2. Comando da usare:
         sudo dd if=/dev/zero of=/mnt/512Mb.swap bs=1M count=512

      Il parametro importante è count=512, il quale imposta il nostro file in modo che contenga 512 blocchi di bs=1M, ovvero di dimensione uguale a 1 Mega Byte.

  • Formattazione di questo file per creare un dispositivo(device) di swap:
    •    sudo mkswap /mnt/512Mb.swap
  • Aggiunta di questo swap file al sistema corrente:

       sudo swapon /mnt/512Mb.swap
    • Puoi controllare con cat /proc/meminfo che il file di swap è ora disponibile per il sistema.

  • Rendere permanente l'impostazione effettuata:
    1. Apri il file di configurazione [:AmministrazioneSistema/Fstab:fstab] con il seguente comando:

            sudo gedit /etc/fstab
    2. Aggiungi questa linea alla fine del file:
      • /mnt/512Mb.swap none swap sw 0 0

Soluzioni a eventuali problemi

/!\ Nota I suggerimenti seguenti riguardano principalmente le partizioni di swap, ma potresti trovarli comunque d'aiuto. Quando trovi hdyX, la y(è una lettera) e la X(è un numero) vanno sostituite in base alla configurazione dei tuoi dischi rigidi e delle tue partizioni.

  • Aiuto! Lo swap file non viene usato dal sistema! Quando da terminale lancio il comando free mi compare qualcosa come:

    tom@tom:~$ free
                 total       used       free     shared    buffers     cached
    Mem:        515980     448664      67316          0      17872     246348
    -/+ buffers/cache:     184444     331536
    Swap:       674688          0     674688
  • Per prima cosa, cerchiamo di capire se il sistema è proprio impossibilitato a usare lo swap, o se piuttosto dipende dal fatto che non è necessario in questo momento usare memoria di swap. Prova ad avviare diversi programmi "pesanti"(e.g. Gimp, web browser, Openoffice etc) e dai di nuovo il comando free. Viene usato lo swap, ora?

  • Assicurati che nel file /etc/fstab sia presente questa riga (y è una lettera, X un numero):

    • /dev/hdyX       none            swap    sw              0       0
  • Prova a disabilitare la swap, e successivamente ricrearlo e abilitarlo di nuovo.
    • swapoff -a
      /sbin/mkswap /dev/hdyX
      swapon -a 
  • Ad alcuni ha funzionato questa procedura:
    1. cfdisk: Cancella la vecchia swap e ricreane una nuova.
    2. Riavvia il computer. (obbligatorio)
    3. mkswap /dev/hda8
    4. swapon -a

Ulteriori risorse


CategoryDaRevisionare CategoryAmministrazione