15
May
09

59695

No Gravatar

Acesta este numarul unui “bug” Ubuntu despre care se spune ca distruge discurile de laptop. Hai sa vedem despre ce este vorba. Pe un sistem de ruleaza Linux (orice Linux, nu doar Ubuntu) in configuratia implicita se poate auzi discul facand “click” de cateva ori pe minut, dar numai cand functioneaza pe baterie (nefiind conectat la sursa de curent). Zgomotul ce se aude este produs de capetele de citire ale discului atunci cand sunt parcate. De ce se parcheaza discul atat de des?  Sistemul de power management opreste motorul ca sa economiseasca curent sau pentru a proteja platanele in cazul in care computerul se misca.

Ok, discul este parcat de cateva ori pe minut; de ce ar fi asta o problema? Pentru ca discul rezista la un numar finit de parcari, circa 600.000. Daca facem un calcul, ne rezulta ca, in rimtul de 4 parcari pe minut, un disc care este folosit intr-o companie cate 8 ore in fiecare zi lucratoare va efectua 480.000 de parcari intr-un an sau 600.000 de parcari in 15 luni. Asta inseamna inlocuirea discului de laptop aproximativ odata pe an, pentru nu vrea nimeni sa astepte pana in ultimul minut si sa isi piarda datele.

Care ar fi solutia? Am cautat solutii si am gasit o multime. Cele mai multe nu au functionat, dar am gasit si solutii viabile, cu diferite grade de complexitate. Dintre toate, cea mai simpla si usor de aplicat mi se pare cea de la comentariul 63:

  1. Deschizi un terminal (konsole, xterm, gterm, ce ai la indemana);
  2. Deschizi “/etc/laptop-mode/laptop-mode.conf” cu un editor de text; trebuie sa fii root sau sa folosesti sudo:
  3. sudo vi /etc/laptop-mode/laptop-mode.conf

  4. Te asiguri ca fisierul contine liniile urmatoare:
  5. CONTROL_HD_IDLE_TIMEOUT=1
    LM_AC_HD_IDLE_TIMEOUT_SECONDS=300
    LM_BATT_HD_IDLE_TIMEOUT_SECONDS=300
    NOLM_HD_IDLE_TIMEOUT_SECONDS=7200
    CONTROL_HD_POWERMGMT=1
    BATT_HD_POWERMGMT=254
    LM_AC_HD_POWERMGMT=255
    NOLM_AC_HD_POWERMGMT=255

  6. Deschizi “/etc/default/acpi-support” si te asiguri ca exista liniile urmatoare:
  7. CONTROL_HD_IDLE_TIMEOUT=1
    ENABLE_LAPTOP_MODE=true
    SPINDOWN_TIME=60

In solutia originala mai zice sa editezi si “/etc/acpi/power.sh“, dar in Ubuntu 8.10 sau 9.04 acest fisier nu exista. Dupa ce ai modificat fisierele, bootezi si gata!

Modificarile efectuate au ca efect schimbarea politicii de power saving pentru disc si discul nu se va mai opri sau parca deloc atunci cand computerul functioneaza pe baterie. Prin urmare, discul se va incalzi mai mult decat de obicei si va trebui sa aveti grija ca laptopul sa fie bine ventilat/aerisit. Temperatura maxima de functionare a unui disc variaza, dar nu este bine sa depaseasca 50 de grade Celsius. Pentru a afla temperatura discului, ne folosim de smartmontools (se instaleaza cu sudo apt-get install smartmontools):

sudo smartctl /dev/sda -A

unde /dev/sda este device-ul discului. Rezultatul arata cam asa:

ketherius@kehterius-laptop:~$ sudo smartctl /dev/sda -A
smartctl version 5.38 [i686-pc-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate     0x000f   200   200   051    Pre-fail  Always       -       1
3 Spin_Up_Time            0×0003   187   186   021    Pre-fail  Always       -       1625
4 Start_Stop_Count        0×0032   098   098   000    Old_age   Always       -       2831
5 Reallocated_Sector_Ct   0×0033   200   200   140    Pre-fail  Always       -       0
7 Seek_Error_Rate         0x000f   100   253   051    Pre-fail  Always       -       0
9 Power_On_Hours          0×0032   095   095   000    Old_age   Always       -       4177
10 Spin_Retry_Count        0×0013   100   099   051    Pre-fail  Always       -       0
11 Calibration_Retry_Count 0×0012   100   100   051    Old_age   Always       -       0
12 Power_Cycle_Count       0×0032   099   099   000    Old_age   Always       -       1450
187 Reported_Uncorrect      0×0032   100   100   000    Old_age   Always       -       0
188 Unknown_Attribute       0×0032   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0×0022   050   034   040    Old_age   Always   In_the_past 50
192 Power-Off_Retract_Count 0×0032   200   200   000    Old_age   Always       -       193
193 Load_Cycle_Count        0×0032   189   189   000    Old_age   Always       -       33346
194 Temperature_Celsius     0×0022   097   081   000    Old_age   Always       -       50
196 Reallocated_Event_Count 0×0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0×0012   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0×0010   100   253   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0×0009   100   253   051    Pre-fail  Offline      -       0

Current Mood:Cool emoticon Cool

Articole asemanatoare:

  • No Related Post

3 Responses to “59695”


  1. 1 IonutNo Gravatar May 16th, 2009 at 01:16

    Versiunea in romana cand o scrii!? :D

  2. 2 ketheriusNo Gravatar May 16th, 2009 at 18:21

    Pai ce e neclar?

  1. 1 gOS | Pauza de Cafea Blog Pingback on Jun 11th, 2009 at 05:41

Leave a Reply














Noi vorbim despre











Add to Technorati Favorites