# Gentoo e SSD

## johnnystuff

Avrei bisogno di un (bel) po' di chiarimenti sulle operazioni da effettuare prima di installare un so in un ssd e in particolare vorrei capire come si comporta gentoo che è notoriamente avido di cicli di lettura e scrittura su disco, anche se un ssd non ha dischi ma vabbè vediamo dopo..... 

Per prima cosa vorrei capire la questione trim e allineamento, specialmente su dischi con più partizioni. Da quanto ho letto il trim è gestito automaticamente dal kernel ma se poteste darmi qualche informazione in più meglio. Tipo: dipende dal controller (alcuni usano il garbage collector invece del trim se non sbaglio)? Il kernel è così intelligente da capire con che controller ha a che fare o devo abilitare io qualcosa da menuconfig? Come posso verificare se è davvero abilitato e attivo?

Per l'allineamento anche avrei un po' di cose da chiedere: leggendo qua e là ho sentito sempre parlare di tool (diskpar) a cui affidare il delicato compito, ma se non ho capito male il tool dopo aver allineato fa una pre-formattazione in ntfs per cui quando installi winzozz non devi formattare sennò bruci tutto il prezioso lavoro. Domanda: ma se io quindi ci vado a mettere un ext3 in quella partizione che succede? Per non parlare del fatto di fare un'ulteriore partizionamento tramite fdisk. In altre parole: come posso effettuare l'allineamento con linux? Ci sono altri accorgimenti da usare per partizionare con fdisk? Se creo 2 partizioni, devo allinearle tutte e due o si allinea "il disco intero" e basta?

Ultima grande questione. Se non ho capito male una volta che abbiamo il trim attivo non dovremmo più avere il problema di montare /tmp in ram per preservare il disco quando synchiamo o aggiorniamo. Mi sbaglio? Ci sono però altre directory a cui gentoo accede massicciamente, direi soprattutto /usr ma anche /var (non so bene /sys ma dovrebbe essere su un fs virtuale giusto?). C'è qualche accorgimento generale da usare per queste (o altre) directory/partizioni? Ho letto recentemente che montare in ram più directory allo stesso tempo potrebbe portare a qualche problema, anche se uno ha un quantitativo esagerato di ram, è vero? Creare un ramdisk potrebbe essere una soluzione? Nel caso qualche link non sarebbe male visto che non ho la più pallida idea di come fare

ah dimenticavo: quali opzioni per /etc/fstab su un ext3? e su un ext4? ho letto di queste per far andare il trim su ext4: "discard,errors=remount-ro"

Scusate se vi ho flooddato di domande, ma è una tecnologia relativamente nuova e di esperienze dirette, specie su gentoo, non ne ho sentite molte. Sperando che sia d'aiuto anche per altri nabbi come me   :Smile: 

----------

## djinnZ

 *johnnystuff wrote:*   

> nabbi come me

 Siamo in italia, si parla l'italiano (anche se temo che il regime farà di tutto per toglierci anche l'autonomia linguistica) e comunque è novellino la traduzione più diffusa.  :Evil or Very Mad: 

discard al massimo noatime,nodiratime. Immagino che i tuoi dubbi vangano da qualcuno che ha riportato senza capire quello che è scritto qui

Il remount-ro è una opzione che merita un discorso a parte (che non sono in vena di fare).

In alternativa Filesystrem -> caches ->  nel menu o FSCACHE e CACHEFILES nella conf. e guardi a sys-fs/cachefilesd . Nota che è ancora sperimentale. ma molto interessante, quasi quanto aufs (quando lo si potrà avere builtin ... sempre troppo tardi ...) ai miei occhi.

----------

## johnnystuff

"nabbo" ha un che di dispregiativo e per quelli come me è decisamente preferibile a "novellino"   :Laughing: 

e..... no, quel link di utunti non l'avevo visto ma un paio di cose su fstab in effetti le ho trovate nel foro di utuntu in cui si sono ispirati a quel link mi sa. No, non credere che io sia abituato a leggere siti malevoli di quel tipo, è solo che mi ci ha mandato gugol

cmq per fstab mi rimetto totalmente ai vostri sommi consigli, come per tutto il resto, ma nel frattempo ho trovato alcuni link interessanti sulla questione allineamento che in effetti mi preme di più per ora visto che è la prima cosa da fare quando si deve partizionare: 

 thread generale

da cui tra le tante cose si trova questo

e pure il dettaglio di come allineare un disco per win tramite fdisk Scelta empia e deprecabile, ma tutto sommato mi sa che siamo un bel po' quelli che volenti o dolenti (la "d" non è un errore di battitura) lo devono fare. In questo caso se non ho capito male sarebbe sempre meglio lasciare un offset di 1mb, per cui far iniziare la prima partizione primaria (quella per winzozz) al cilindro 3

nel secondo link in particolare si spiega molto bene come sia possibile intervenire sulla dimensione dei blocchi per allineare il disco in base agli "erase block" dei nostri ssd, anche se non vorrei dire una stupidaggine nel dire che attualmente sono tutti di 512kb quindi i settaggi di testine e cilindri di fdisk dovrebbero andar bene così come sono di default

----------

## djinnZ

sempre nel post originale c'è questo per verificare se funziona il trim.

Quanto al partizionamento devi attivare la modalità retrocompatibile di fdisk (ora non posso andare a verificare, cercatela nel manuale). Non basta -u o digitare u.

Ricorda che almeno in fase di installazione il bootloader di windows è limitato ai primi 1024 settori quindi non puoi creare partizioni prima di quell'inutile orpello (ma tanto il regime passerà ad imporlo per legge piuttosto che tramite gli attuali artifizi).

Mi pare però che 7 abbia superato queste legacy (forse).

Mi pare che ci sia un poco di confusione tra i problemi specifici degli ssd ed i problemi di compatibilità con l'altro.

La cosa odiosa della documentazione e dei forum ubuntu è che è tutto nell'ordine di aplolica la formula magica e d'incanto tutto si risolve. Non c'è mai un mezzo riferimento agli antefatto o spiegazione del perché si sceglie una cosa piuttosto che un'altra.

Questo è quel che so.

----------

## johnnystuff

modalità retrocompatibile di fdisk? Scusa ma in tanti anni di installazioni varie anche per "l'altro" non ne ho mai avuto bisogno (o almeno non mi sono mai accorto del problema). A che serve su un ssd?

Penso che ti riferisci a questo:

 *Quote:*   

>  -c[=mode]
> 
>               Specify  the  compatiblity  mode,  'dos'  or 'nondos'.  The default is non-DOS mode.  For backward compatibility, it is possible to use the option without the <mode> argument -- then the default is
> 
>               used.  Note that the optional <mode> argument cannot be separated from the -c option by a space, the correct form is for example '-c=dos'.
> ...

 

ed è un'opzione deprecata dallo stesso fdisk   :Rolling Eyes: 

bo intanto provo, è appena arrivata la creatura ^^

----------

## djinnZ

```
fdisk -cu /dev/sdx
```

per fdisk (e per linux) è deprecato ma di sicuro ricordo l'installer di xp dare i numeri davanti ad un disco partizionato senza.

Ricorda che in ogni caso è bene che azzeri l'inizio di ogni partizione sempre perchè quella sottospecie di os non si basa sulla tavola delle partizoni ma su quello che trova all'inizio di ogni partizione per identificare cosa c'è.

Nel dubbio preferisco sempre partizionare ed installare la schifezza prima, poi completo il partizionamento da linux. Se ha partizionato nella vecchia modalità te ne accorgi perchè fdisk si incazza e parla di partizioni che non finiscono al settore.

Fai la prova con -u se hai problemi aggiungi -c. Questo era il senso.

----------

## johnnystuff

peccato che la guida sul wiki di gentoo sia un po' vecchiotta, ho trovato però un altro link con qualche spunto interessante: https://wiki.archlinux.org/index.php/Solid_State_Drives_(Italiano)

alla fine ho fatto:

#fdisk -H 32 -S 32 /dev/sda

questo per dare una pseudo-geometria alla tabella delle partizioni con blocchi da 512k. Non è l'unica scelta possibile ma quella più semplice e anche consigliata. In questo modo si lavora con blocchi multipli (in questo caso uguali) dell'EBS (Erase Block SIze). Poi ho dato un "u" da dento fdisk per avere l'output tradizionale in cilindri invece che quello in settori. Anche qui non ho capito perchè fdisk mi diceva che quell'ouput era "deprecated", invece per me è stato fondamentale anche perchè se si fanno più partizioni bisogna stare attenti ad allinearle tutte e non solo la prima. Per cui quando si da il parametro di fine partizione se lo si da in cilindri basta dare un +N dove N è divisibile per 4 e sei apposto, almeno a me ha funzionato. Da segnalare anche che fdisk come inizio di default non da il cilindro 1 ma il 3 come in effetti sarebbe meglio fare (anche se ho ancora alcuni dubbi sul fatto che il 5 sarebbe meglio). 

In ogni caso su win il disco è allineato ma ho qualche problema coi bench sui 4k, sono un po' bassini, mentre gli altri sono nella norma (per chi ha un sata2 e una mobo di 2 anni fa). Secondo voi la geometria del disco (quella data con fdisk -H x -S y) può influire sui transfer rate vari? O una volta che il so riconosce tutto (dimensioni e allineamento) è solo una questione di driver e di chipset della mobo? Ah, un'altra cosa che non ho capito: LBA va disattivato da bios o semplicemente non viene usato dal so in caso di ssd?

----------

## fbcyborg

Discussione interessante.  :Smile: 

Stavo valutando anche io la possibilità di installare Gentoo su un notebook con l'SSD, ma leggendo qui, mi è passata la fantasia sinceramente.

All'inizio, parlando con qualche amico, sembrava che il problema fosse principalmente la compilazione, di fatto risolvibile compilando in RAM, come faccio di norma anche su diski "old style"  :Very Happy: , ma considerando che ho la /home criptata, che si suggerisce di montare /tmp in RAM, /usr/portage via NFS (ipotizzo un disco esterno USB invece di NFS, non avendo un'altro PC a disposizione) e altre dir che sull'SSD sono sconsigliate, sinceramente mi è venuta la paranoia. 

A leggere la nota sui Laptop comunque sembrerebbe che l'importante sia solo compilare in RAM. Di fatto il problema con /tmp e /var/log, ad esempio ce lo avremmo con qualsiasi distribuzione. 

Ma allora, che si fa?

Questi SSD sono veramente così "delicati"? Addirittura so che lo swapping su windows fa molto più danno di quello che si potrebbe immaginare, e sicuramente più di Linux. A questo punto, è un bel dilemma.

----------

## djinnZ

 *fbcyborg wrote:*   

> Ma allora, che si fa?

 Un accrocchio infame in stile android o peggio una serie infinita di mount --bind, link simbolici, uso smodato di FSCACHE (cosa tra l'altro poco fattibile, non supporta più di un mount alla volta) e script ad hoc.

Questa dell'ssd è la piena dimostrazione delle limitazioni di LFSH (perché cavolo mettere file temporanei e cache in /var e /home? è solo security by obscurity per me) e della miopia di chi dice che nel kernel l'unione non serve (tralasciando il fatto che così com'è unionfs non serve a molto).

Tanto per augurare sempre tutto il male possibile agli "imbecilli in marcia" (una certa distribuzione pseudo commerciale, guru e sacerdoti del piffero,  comitati ed esperti assortiti etc.) non perché voglia contribuire, con un simile quadro contingente (è lavar la testa all'asino).

----------

## fbcyborg

Ad un certo punto comunque mi verrebbe da fare una cosa: potrei strafregarmene di tutte queste seghe mentali (giuste per carità) e installare Gentoo pure sull'SSD, con almeno l'accortezza di compilare in RAM (ormai è un'abitudine consolidata).

Quello che più che altro mi piacerebbe sapere, è almeno una stima approssimativa della durata del disco. Almeno, so che dura X anni, con un uso normale, e dopo X-1 anni vedo di cambiarlo per sicurezza ed evitare la perdita di dati (anche se la regola vuole che un bel backup si faccia sempre).

Dico questo perché, c'è chi dice che l'SSD dura poco, chi invece dice il contrario, e chi invece dice che gli SSD odierni non sono come i primi usciti, quindi durano molto di più.

Quello che spero è che almeno 2 anni riesca ad usarlo!

----------

## xdarma

Se sei indeciso su quale modello prendere, posso dirti che a posteriori avrei scelto una marca che rilasci dei tool per linux.

Aggiornare il firmware è praticamente obbligatorio visti i "bug" che affliggono questi dischi e dover togliere il disco per attaccarlo ad un pc con windows è una seccatura di cui avrei fatto volentieri a meno.

----------

## fbcyborg

No aspetta non ti seguo. Io il notebook ce l'ho già.

Non ho capito il discorso della marca che rilascia i tool per Linux.

Bisogna (si può?) aggiornare i firmware dei dischi SSD? Io comunque non devo togliere nessun disco né tantomeno attaccarlo ad un PC con windows.

----------

## xdarma

 *fbcyborg wrote:*   

> Bisogna (si può?) aggiornare i firmware dei dischi SSD? Io comunque non devo togliere nessun disco né tantomeno attaccarlo ad un PC con windows.

 

Non è obbligatorio, ma può essere utile. Ovviamente se non riscontri problemi nell'uso non serve aggiornare.

Per la mia esperienza il disco di "tizio" SATA-2 non ha mai perso un colpo anche se continua a non andare d'accordo con lo spegnimento/riaccensione rapidi (è un bug che probabilmente non elimineranno mai attraverso gli aggiornamenti del firmware). Il disco di "caio" SATA-3 andava in segfault con uptime superiori ai 7-10 giorni. L'aggiornamento del firmware (attaccandolo ad una macchina windows) sembra aver risolto.

Da quanto ho capito, per molti drive ssd la procedura completa di aggiornamento del firmware sotto windows prevede anche una cancellazione totale del disco con reinstallazione. L'aggiornamento sotto linux non richiede il "secure erase". Comunque prima di queste operazioni è OBBLIGATORIO avere un backup completo del drive.

Non preoccuparti troppo, questi problemi valgono solo per certi tipi di dischi e per certi tipi di bug, ma volevo solo farti notare che potenzialmente avrai dei problemi che richiedono tempo e risorse per essere risolti. Ma poter aggiornare da live-usb piuttosto che piallare tutto e reinstallare mi avrebbe fatto comprare  dischi di "sempronio".

Prova a scorrere le pagine di questo sito, vedrai che quasi tutti i produttori aggiornano il firmware o per eliminare bug o per migliorare il comportamento del drive.

Prova a fare un "giro informativo" nei forum dei produttori che ti interessano per capire quanto sia problematico il drive che stai per comprare. E non spaventarti: i clienti drammatizzano.  ;-)

----------

