Laptop mode per retrasar esciptures al disc


El laptop_mode és una feature del kernel 2.6.6 que permet a l’usuari retrasar les escriptures al disc, amb la conseqüent possibilitat d’aturar el disc dur.
ACTUALITZACIÓ: Canvis menors per comentaris dels bulmeros i de l’autor de les tools

Des de els kernels >=2.6.6 (i als >=2.4.23) una “feature” coneguda com laptop_mode permet al kernel retrasar les escriptures al disc.

El laptop_mode pot esser usat en qualsevol arquitectura linuxera i qualsevol tipus de màquina. Malgrat això sols se recomana posar-la als portàtils, ja que al un servidor o a un sobretaula els discs durs no estan dissenyats per fer tantes postes en marxa/aturades.

Tal dia com avui ja tenim Debian, SuSE, Fedora, Mandrake (i totes les de “aquí jo ho compilo tot”) tenen paquets per aquesta utilitat.

Per posar en marxa el laptop_mode necessitarem les “laptop_mode tools”. Aquests paquets els podem trobar actualment a ca l’autor d’elles ( http://www.xs4all.nl/~bsamwel/laptop_mode/tools ). Com que no existeix ni una llista de correu, FAQ ni how-to, aquest article intentarà fer de complement.
No existeix de moment dins cap versió estable de les distribucions. Malgrat en un futur pròxim existeix la possibilitat, ara ho instal·larem nosaltres mateixos. Tal dia com avui, però, a les

Per proseguir, recordar que necesitam un kernel funcional que ho incloi (no té cap opció especial, basta que estigui dins el ranc que hem marcat abans). Desprès, baixam les fonts de les tools de la web abans enunciada.
Per instal·lar-les, anam on haguem descarregat les fonts,
desentaram i desenzipam
#tar -xzf , per exmeple),
entram dins el directori,
ens tornam superusuaris,
fem un install
#./install.sh

Si usam una distribució Debian, l’autor ens proposa uns paquets precompilats. Amb ells sols haurem de fer:
#dpkg -i laptop-mode-tools_x.xx-x_all.deb

Ara ja ho tenim instal·lat. Per afinar, tenim l’arxiu de configuració a /etc/laptop_mode/laptop_mode.conf (en pricipi això no hauria de canviar per a cap distribució).
Jo recoman modificar, com a mínim, els següents paràmetres:

MAX_AGE=1800
MINIMUM_BATTERY_MINUTES=5
LAPTOP_MODE_ALWAYS_ON=1
READAHEAD=16384
BATT_HD=1

Aquesta configuració, faria modificacions a:
-el temps màxim sense escriure al disc
-fins a quin punt de la bateria funcionarà; (ens pot estalviar pèrdues de dades)
-el laptop_mode funcionarà tant si com no. Això no és tant recomenable com pareix i pot ser molt millor posar-lo a =0 si no sofriu inportants problemes d’escalfaments o renous de disc dur.
-el tamany de la lectura quan el disc llegueix.
-el temps que tardarà el disc en parar-se. Els paràmetres és x*5 en segons. Jo recomano el mínim possible (un 1), ja que farà que el disc es pari tant com pugi (els paràmetres són distints, segons endollant o tirant de bateria).

Si fem un:
#laptop_mode start , el laptop-mode començarà;.

Altres opcions que es recomanen posar són:
DO_REMOUNTS=1
DO_REMOUNT_NOATIME=1
–> en cas de no tenir un “noatime” al fstab.
HD=”/dev/dispositiu-del-disc”

Per afagir l’script a cada runlevel, hauria de bastar fent:
una còpia o enllac de les laptop_mode a la carpeta /etc/init.d
-executa #update-rc.d -f laptop_mode

Preguntes més prequents.
El disc se me posa en marxa o no s’atura.
Coses a fer:
-Revisar configs
-Laptop_mode engegat? Comprova amb un:
#cat /proc/sys/vm/laptop_mode (el resultat no pot ser zero)
-Estàs provocant lectures continues? Com que el disc es posa en marxa, el kernel aprofita i escriu.
– #hdparm -C /dev/disco ens pot ajudar a veure el seu estat.

El disc s’encalenteix molt.
-Tant pot ser per mor de la part elèctrica de la màquina (insolucionable) com que el disc no es para. La millor manera de saber si és una cosa o l’altre és comprovar l’estat del disc (idle= roda/standby=aturat).
Per mirar això continuament podem fer un:
#watch -n 1 “hdparm -C /dev/disc

Seguiex en marxa, el disc dur.
-Una possible sol·lució és crear un sistema de memòria compartida, el /dev/shm (SHared Merory).
Aquest lloc de treball el crearem amb un kernel on tenguem el shm activat. L’opció és troba a:
filesystems –> pseudofilesystems –> virtual memory.
Un cop iniciat amb aquest kernel, si feim un #df , veurem que tenim un espai al dispositiu de la memòria compartida.
Allà podem ficar coses que haguen d’usar però amb les que no volem que ens faci lectura al disc (com cançons o una grapada de html que esteim llegint).
El fet de que hi fiquem aquest tipus de coses és el següent: malgrat haguem posat una READAHEAD= gros, això només serà per un fitxer. Quan haguem de passar de cançó haurem de fer igualment una lectura al disc (=se posa en marxa). Si ho hem gordat al /dev/shm no.

NOTA: tot el que posem a la memoria virtual s’esborrarà un cop aturem la màquina (amb suspen-to-disk això no passa).

Si jo ja tinc el cpudynd que m’atura el disc dur, perquè vull això?
-El cpudynd no retrasa les escriptures, per la qual cosa els períodes d’aturada són molt menors dels que aconseguirem aquí.

Jo ja tinc alters programes posats que m’aturin el disc, però aquest ho fa quan vol.
– Programes (en general) que ens aturin el disc poden esser combinat a la perfecció amb les laptop_mode tools. Haurem de mirar la linea DO_HD= i posar-lo a zero si no volem que ho faci el laptop_mode.

Recoman comprovar coses sobre escriptures al disc com els logs, dimonis varis i configuracions rares que pogue tenir.

No tingueu cap dubte a escriure-me si ho provau, tant si funciona com si no.























Este post ha sido traido de forma automatica desde https://web.archive.org/web/20140625063149/http:/bulma.net/body.phtml?nIdNoticia=2090 por un robot nigromante, si crees que puede mejorarse, por favor, contactanos.


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.