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:
- Deschizi un terminal (konsole, xterm, gterm, ce ai la indemana);
- Deschizi “/etc/laptop-mode/laptop-mode.conf” cu un editor de text; trebuie sa fii root sau sa folosesti sudo:
- Te asiguri ca fisierul contine liniile urmatoare:
- Deschizi “/etc/default/acpi-support” si te asiguri ca exista liniile urmatoare:
sudo vi /etc/laptop-mode/laptop-mode.conf
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
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


Versiunea in romana cand o scrii!?
Pai ce e neclar?