Sfatiamo il mito della swap

Kill Bill vol. 1
Dopo aver letto cose comiche da parte di *illuminari dell’informatica* ho deciso di raccontare tutta la verità su come è andata la questione “uso swap in DEFT Linux”.
Partiamo dal principio: in tutti i sistemi Ubuntu la parte di codice che va a trattare la partizione di swap è all’interno dell’ initrd.gz, nel dettaglio scripts/casper-bottom/13swap
All’interno dello script, dopo una serie di if, vi è la sintassi che si auto inserisce al momento della creazione del file fstab. Tale parametro è il seguente:
for device in $devices; do
cat >> $FSTAB <<EOF
$device swap swap default 0 0
EOF
done
In soldoni scrive nel file fstab come montare la swap (se trovata). Quel default vuol dire “usa la swap in scrittura”.
Già dalla DEFT v3 tale implementazione aveva valore null, cioè se trovi la swap non fare nulla (se non ci credete adate sul mirror o usate un live cd vecchio masterizzato).
Dalla v4 avevo deciso di adottare una soluzione diversa, cioè quella di usare la swap in ro, dato che la mia implementazione passata risultava essere identica a quella adottata dalla nuova Helix 3 (coincidenza? cambio di distribuzione più implementazioni simili… MA!?!?)
Pertanto il codice risultava essere il seguente
for device in $devices; do
cat >> $FSTAB <<EOF
$device swap swap ro 0 0
EOF
done
Provata con sistemi a 128 mb di ram, sia da me che da Litiano Piccin, DEFT v4 non usava la swap, al boot non alterava la partizione e se stressato, il sistema non utilizzava alcuna partizione di swap!
PERFETTO NO?
E no invece! Giancarlo bussa alla porta di Litiano informandolo che con sistemi con meno di 100 MB di ram, DEFT al boot monta la partizione in read only senza sporcare il device, ma dopo breve utilizzo decide autonomamente di swappare.
Scoperta questa cosa ci è voluto veramente poco a ripristinare la vecchia inplementazione di DEFT v3 e il problema è stato risolto in pochi minuti.
L’ *illuminare dell’informatica* ha affermato che sono io un incompetente perchè nella sintassi del mount andava inserito anche un noauto…. peccato che queste persone non si sono mai lette la man page del mount che cita testuali parole:
- noauto
- Can only be mounted explicitly (i.e., the -a option will not cause the file system to be mounted).
L’uso in read only è un read only… e basta!!! Il sistema non deve prendere iniziative e decidere di infischiarsene della sintassi scritta; farò presente di questo comportamento alla comunità di sviluppo, sia di Ubuntu che linuxiana internazionale.
Fesso io che ci perdo pure del tempo nel leggere certe ca****e!
Qualcuno ha poi anche affermato che a questo punto anche Caine non alterava la swap…. peccato che qualcuno non si è editato il scripts/casper-bottom/13swap dove avrebbe trovato i parametri di default di Ubuntu, quindi un bellissimo $device swap swap default 0 0
In ultimo rispondo a chi fa il doppio gioco con me. Da buon uomo del sud ho sempre odiato comportamenti di vittimismo associati al doppio giochismo. Cose simili mi fanno molto arrabbiare (non le concepisco proprio, io sono trasparente e sincero, quindi mi aspetto la stessa cosa dalle altre persone) pertanto è meglio evitare falsi buonismi per poi pugnalare alle spalle con affermazioni del tutto inesatte.
Cevoli nella sua celebre imitazione dice sempre “FATTI, NON PUGNETTE”!
Non si smette mai di imparare sul comportamento dell’uomo. Altro che Z10, siamo noi le macchine complesse :-)
Buon week end a tutti.
p.s: “illuminare” per chi non l’avesse capito è stato scritto volutamente così!
Ahahah fantastico!!! :D
Ma parliamo di Flora? Pfff..
Ho già detto tutto..