Montare un disco SSD sotto linux

Qualche giorno fa stavo parlando con il mio amico Luizz e gli spiegavo che avevo intenzione di scrivere un articolo che descrivesse il come montare un ssd sotto linux.
Luizz mi ha risposto sorridendo:
<<Che bisogno c’è di scrivere un articolo su come si monta un SSD, non basta togliere il vecchio hard disk e sostituirlo col nuovo ssd?>>
Mbè, il mio articolo non descriverà come avvitare le viti, descriverà come ottimizzare il sistema operativo per lavorare con un ssd, visto che un ssd si differenzia da un disco tradizionale con pregi e difetti.

DIFETTI DI UN SSD

Costo per spazio molto più elevato di un disco tradizionale
Rallentamento progressivo direttamente proporzionale allo spazio occupato
Limitato numero di scritture

PREGI DI UN SSD

L’ ssd è una memoria allo stato solido, quindi nessuna parte in movimento
L’ ssh è MOLTO più veloce di un disco tradizionale
L’ ssd non emette rumore
L’ ssd non è soggetto a usura in lettura o in inattività

Detto questo, cominciamo con il settare il controller sata in AHCI e poi iniziamo con l’istallare il sistema operativo, solitamente facciamo 2 partizioni, una di boot in ext2 e l’altra di root in ext4, per l’SSD, invece, facciamo un unica partizione / in ext4, su cui mettiamo tutto il sistema operativo.
Se abbiamo un disco tradizionale ed un ssd mettiamo / in ext4 sul ssd e /home sul disco tradizionale.
Per creare le partizioni, dobbiamo usare NECESSARIAMENTE l’utility gparted o meglio ancora gdisk, questa infatti permette il partizionamento nel formato GPT, la grandezza del blocco deve essere di 512K o suoi multipli, io uso 1024.
Assicuriamoci di usare ALMENO un kernel 2.6.19, i precedenti non vanno bene con l’ssd perchè nei kernel precedenti non è presente il supporto AHCI.
La ram è di vitale importanza, per usare un ssd dobbiamo avere ALMENO 8 Gb di ram, meglio 16 o più, visto che non useremo, ne file ne partizioni di swap.
Appena create le partizioni installiamo subito il software necessario ad allineare le partizioni, quindi apt-get install gdisk -y poi digitiamo gdisk -l ed otteniamo tutti i dettagli del nostro SSD.
Poroseguire con un installazione standard.
Al termine dell’istallazione, togliere il dvd e riavviare il sistema, se tutto funziona riavviamo nuovamente con il live cd e procediamo con la rimozione del JOURNALING, qualcuno si chiederà, perchè abbiamo formattato in ext4 se poi dobbiamo rimuovere il journaling? non si faceva prima a formattare in ext2 che è senza journaling?
In effetti avremmo fatto prima, ma ext2 è poco performante, pertanto di solito viene usato per caricarci il kernel, visto che la ext2 non occupa ram, e poi diventa una partizione senza utilizzo, quindi anche se più lenta ve benissimo per fare il boot e poi non viene più utilizzata.
Quindi assicuriamoci di NON avere partizioni del SSD montate e digitiamo dumpe2fs -h /dev/sda1 (o partizione equivalente), controlliamo l’output ed individuiamo la scritta Filesystem features che deve recare l’opzione has_journal, se va tutto secondo i piani digitiamo tune2fs -O ^has_journal /dev/sda1 e poi rieseguire il comando dumpe2fs -h /dev/sda1 per verificare che il journal sia stato disabilitato.
Adesso montiamo il ns ssd con un saggio mount /dev/sda1 /mnt e cominciamo a modificare il grub.
vi /mnt/etc/default/grub
cerchiamo la riga GRUB_CMDLINE e modifichiamola come segue GRUB_CMDLINE_LINUX_DEFAULT=”quiet rootfstype=ext4 elevator=noop”
:wq per salvare e uscire
adesso dobbiamo montare i device e chroottare per aggiornare il grub, quindi
mount –bind /dev /mnt/dev
mount –bind /proc /mnt/proc
mount –bind /sys /mnt/sys
chroot /mnt
update-grub2
exit
umount /mnt/dev
umount /mnt/proc
umount /mnt/sys
umount /mnt/
reboot
togliere il LIVE ed avviare la macchina dal SSD
Per scrupolo controlliamo che il JOURNALING sia stato effettivamente disabilitato, quindi dalla shell, come utente root digitiamo dumpe2fs -h /dev/sda1
OK
Adesso dobbiamo spostare alcune partizioni in ram per ridurre al minimo le scritture sul SSD, altrimenti il nostro bel disco ci dura mezza giornata 🙂
Per fare questo editiamo il file fstab, quindi
vi /etc/fstab
ed aggiungiamo le partizioni da spostare

tmpfs /var/cache/apt/archives tmpfs defaults,noatime,mode=0755 0 0
tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/run tmpfs rw,nosuid,noexec,relatime,size=406000k,mode=755 0 0
tmpfs /var/run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0
tmpfs /tmp tmpfs rw,nosuid,nodev,relatime,size=812000k 0 0
tmpfs /var/run/shm tmpfs rw,nosuid,nodev,relatime,size=812000k 0 0

ricordiamoci di usare i tab e dare un aspetto umano alle partizioni, altrimenti, se pur perfettamente funzionanti non ci si capisce nulla
salviamo ed usciamo.
Spegnamo il daemone syslog con un sano ed onesto /etc/init.d/rsyslog stop
Puliamo le partizioni che dovremo montare in ram con un
rm -rf /tmp/*
rm -rf /var/tmp/*
rm -rf /var/cache/apt/archive/*
Giunti a questo punto SPEGNAMO IL SISTEMA con un sano ed onesto shutdown -h now. Il sistema va spento per permettere alla ram di pulirsi perbene.
Attendiamo un minuto e riaccendiamo la nostra linux box.
Dato che il nostro sistema linux è ottimizzato per un disco tradizionale, dobbiamo aggiustare la scrittura delle “PAGINE SPORCHE” quindi editiamo il file sysctl.conf
vi /etc/sysctl.conf
ed aggiungiamo in coda
vm.dirty_writeback_centisecs = 1500
vm.dirty_ratio = 20
vm.dirty_background_ratio = 10
vm.laptop_mode = 5
vm.swappiness = 0
salviamo ed usciamo, e riavviamo la nostra linux box, non è windows che va riavviato continuamente, ma qui stiamo cambiando l’assetto del funzionamento, quindi purtroppo il riavvio è necessario. Certo avremmo anche potuto fare prima tutte le configurazioni da live cd e poi partire direttamente, io infatti faccio così, però dovendo scrivere una guida è meglio verificare le cose passo per passo.
ATTENZIONE con queste modifiche il pc non avrà più la modalità ibernazione e neppure la modalità sospensione, quindi o acceso o spento.
La modalità ibernazione prevede che la ram venga scritta per intero nella partizione di swap, noi, nonsolo non l’abbiamo creata ma addirittura abbiamo inibito qualsiasi scrittura della ram sul disco, addirittura /tmp è mappato in ram, ovvero abbiamo fatto il contrario, abbiamo messo il disco nella ram 🙂
Adesso diamo il colpo di grazia, spostiamo la cache di firefox in ram, questo ci consente di essere molto più veloci e di evitare di scrivere sul disco tutto ciò che visitiamo.
Apriamo il ns firefox e digitiamo nella barra degli indirizzi about:config, si aprirà la pagina di configurazione, cliccare su FARÒ ATTENZIONE PROMETTO !? poi nell’area del filtro digitare browser.cache premere invio e modificare la voce browser.cache.memory.enable impostandola a true, poi modificare la voce browser.cache.disk.enable impostandola a false.
Nello spazio bianco cliccare con il tasto destro del topo, selezionare nuovo e aggiungere la voce browser.cache.memory.capacity di tipo INTERO e nel valore scrivere 256. Chiudere la finestra delle impostazioni e “cliccheggiare” Modifica —-> Preferenze —-> Avanzate —-> Rete selezionare “Non utilizzare la gestione automatica della cache” poi in “Limita la cache” impostare 0, quindi cliccare su cancella adesso.
Chiudere firefox e riaprirlo per far leggere le modifiche.
Adesso possiamo goderci il ns amato SSD.


Commenti

Montare un disco SSD sotto linux — 4 commenti

  1. Ciao e complimenti per la guida. Purtroppo io sono un po Noob e ho il terrore di mettere le mani dove sicuramente andrò a fare danni 🙂
    ti scrivo per un consiglio:
    Ho acquistato un notebook usato (LINK CENSURATO)
    Pre installato ha windows 8.1
    Ho acquistato un ssd (LINK CENSURATO)
    Partendo da zero vorrei installare solo linux (preferibilmente ubuntu – vista la mia noobiaggine) come mi conviene procedere – devo semplicemnte seguire la tua guida?
    Spero tu possa darmi qualche suggerimento. Ti ringrazio per l’attenzione
    Nicola (VI)

    • Io ho scritto questa guida mentre istallavo una ubuntu.
      La mia guida sostanzialmente non fa nulla di strano, semplicemente sposta alcune directory, che normalmente stanno sul disco fisico, in un disco virtuale che sta in ram.
      Se incontri qualche problema contattami tranquillamente, compatibilmente con il tempo, sarò felice di aiutarti, è sempre un piacere sottrarre un cervello funzionante ad una nota software house che produce il pessimo software a finestre.
      PS
      Ricordati che con ssd perdi alcune importanti funzioni, fra cui lo standby.
      Il consiglio ulteriore che posso darti è questo, istalla tutto su disco tradizionale, fai funzionare bene tutto, quando è tutto configurato copi tutto su SSD e fai le opportune modifiche.

  2. Pingback: LA SWAP CIFRATA - Il pensiero di un uomo libero

  3. Buongiorno, un po’ in ritardo, quattro anni, ma avrei due domande, ad oggi la guida è ancora utilizzabile o i sistemi sono cambiati ? Ad esempio grub2; e poi cosa intendi con “ricordiamoci di usare i tab e dare un aspetto umano alle partizioni” ?
    Grazie comunque per aver condiviso la guida, per pe è una manna.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.