Linux per a Netbooks (Dell Mini 910)
Després d'adquirir un netbook i evidentment posar-hi linux, he començat a buscar i investigar la millor forma de treure-li suc i de superar les seves limitacions.
Tot i que alguns aspectes encara són discutits amb controvèrsia i tot com ara la limitació del nombre d'escriptures sobre SSD creo aquesta pàgina a tall de recopilació.
Serveis, aplicacions i sistema operatiu
Evidentment un Netbook no és el sistema ideal per muntar-hi servidors i coses d'aquests, pel que es pot aconseguir fer una molt bona neteja eliminant software que no usarem. Val la pena fer una bona ullada a tot el que hi ha instal·lat i prescindir de coses que no tenen sentit. Per exemple jo fins i tot he desinstal·lat el dimoni cron.
Firefox
Firefox crea la cache al $HOME de l'usuari (sobre l'SSD). És recomanable o deshabilitar-la, limitar-la en tamany o guardar-la sobre /tmp i muntar aquest directori sobre tmpfs (com veurem més endavant).
Els paràmetres about:config
a revisar:
browser.cache.disk.parent_directory = /tmp browser.cache.disk.enable = false browser.cache.disk.capacity = 10240 browser.cache.offline.enable = false browser.cache.offline.capacity = 0
Terminal
Per els que com jo usen molt el terminal de consola, la millor opció per comoditat i en front a la petita pantalla: Guake.
Disc solid SSD
Si tenim un disc SSD cal tenir en compte que:
- El temps d'accés és molt ràpid
- Espai reduït
- Cicles d'escriptura limitats
L'espai no és massa problema tenint en compte que una instal·lació normal de Linux (sense servidors i amb el software típic d'escriptori) no sol excedir els 3Gb.
Per reduïr el nombre d'escriptures (i reduïr el temps d'accés) comentarem més endavant alguns canvis al sistema de fitxers.
Planificador E/S
Per defecte Linux usa el cfq (Complete Fair Queue), que és òptim per a discos físics amb rotació (spin) però no té sentit en discos d'adreçament directe com els SSD.
Per canviar el planificador d'E/S es recomana el deadline. Podem activar-lo afegint el paràmetre elevator=deadline
a l'arranc del kernel o escrivint-lo al fitxer /sys/block/sda/queue/scheduler
:
echo deadline > /sys/block/sda/queue/scheduler echo 1 > /sys/block/sda/queue/iosched/fifo_batch
Cal afegir el paràmetre elevator=deadline
a l'arranc del kernel. En Ubuntu cal editar /etc/grub.d/10linux
.
i afegir el paràmetre a la variable
GRUBCMDLINE_EXTRA
Sistema de fitxers
Reducció d'escriptures i augment de velocitat
Journaling
Els sistemes de fitxers amb journaling (com ext3,ext4) fan més escriptures del normal i a més suposa en retard en els accessos a disc. Podem desactivar el journal (a costa de recuperació d'errors):
# tune2fs -O ĥas_journal /dev/sda1
Evidentment cal fer-ho com a root i amb el dispositiu no muntat (podem usar un USB extern per botar Ubuntu Netbook Remix i fer-ho des d'allà). Alguns sistemes tenen problemes per trobar la partició després d'això, per solucionar-ho cal editar l'/etc/fstab
i identificar el disc pel nom de dispositiu (/dev/sda1) enlloc del UUID.
Temps d'accés
Linux actualitza la data d'accés als fitxers per cada accés que es fa. Això, a més de noves escriptures suposa un retard extra cada cop que llegim un fitxer. Podem desactivar aquesta funció també editant l'fstab:
/dev/sda1 ext4 / defaults,noatime,nodiratime 0 0
Per optimitzar el nombre d'escriptures en el disc SSD, podem optar per muntar alguns directoris volàtils com ara /tmp
en memòria. Per això cal editar el fitxer /etc/fstab
:
tmpfs /tmp tmpfs defaults,noatime,mode=1777,size=10m 0 0
Optimització d'espai
Evidentment cal fer un bona neteja de paquets de software, una bona manera és usar el Synaptic, seleccionar el filtre de paquets instal·lats, mostrar la columna de tamany i ordenar-lo per aquesta última (et pots emportar una bona sorpresa).
Val la pena revisar paquets petits però numerosos com ara tots els relacionats amb documentació o guies, així com tipografies, diccionaris i altres relacionats amb idiomes que no utilitzarem.
L'altre directori que pot ser interessant de “netejar” és /usr/share/doc/
APT
Podem configurar alguns paràmetres d'apt per tal de no abusar de l'espai a /var/cache/apt/archives/
editant /etc/apt.conf.d/preferences
:
APT::Archives::MaxAge = 10 APT::Archives::MinAge = 2 APT::Archives::MaxSize = 200
Memòria i cache
Editant el fitxer /etc/sysctl.conf
:
vm.swappiness = 1 vm.vfs_cache_pressure = 50 vm.dirty_writeback_centisecs = 60000 vm.dirty_ratio = 90 vm.dirty_background_ratio = 1 vm.laptop_mode = 5
Estalvi d'energia
La gestió de dispositius via el sistema de fitxers SYSFS és molt més senzilla si s'instal·len les sysfsutils que a més ens permetran configurar els canvis de forma permanent amb una sintaxis semblant a la de sysctl
.
Gestió de la CPU
Bàsicament fem que la freqüència de treball de la CPU estigui gestionada sota demanda, prenent mostres de la càrrega el més possible i escalant a partir del 40% d'ús de CPU.
Al fitxer /etc/sysfs.conf
:
devices/system/cpu/cpu0/cpufreq/scaling_governor = ondemand devices/system/cpu/cpu1/cpufreq/scaling_governor = ondemand devices/system/cpu/cpu0/cpufreq/ondemand/up_threshold = 40 devices/system/cpu/cpu1/cpufreq/ondemand/up_threshold = 40 devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate = devices/system/cpu/cpu1/cpufreq/ondemand/sampling_rate =
Suspensió de dispositius
Una bona eina per trobar quins dispositius afecte a la suspensió o entrada en estat “idle” és PowerTop.
De nou, al fitxer /etc/sysfs.conf
:
bus/usb/devices/?-?/power/level = auto bus/usb/devices/?-?/power/autosuspend = 1
I com a paràmetre d'arranc del kernel: usbcore.autosuspend = 1
.
Enllaços
Durant la resolució del 280 hem recopilat alguns enllaços interessants
Dell i Linux
- Actualització BIOS (genèric, no ha servit per al Mini9)
Usuaris
Tema bateries
Tot i que va resultar ser una sospita falsa, va haver-hi molt moviment quan molts programes (per culpa de la BIOS) reportaven una bateria de 24mWh enlloc de l'etiquetatge que mostrava 32mWh. Al final va resultar ser un bug de la BIOS: