Manteniment de discs durs: Diferència entre les revisions

De Guifi.net - Wiki Català

(Desenvolupant secció de còpies de seguretat amb rdiff-backup)
(Identificar i recuperar blocs fets malbé dins d'una partició)
Línia 97: Línia 97:
  
 
=== badblocks ===
 
=== badblocks ===
==== Identificar i recuperar blocs fets malbé dins d'una partició ====
+
==== Identificar els blocs fets malbé dins d'una partició ====
Si el que volem és salvar el que quedi del disc, i també les dades:
+
Si el que volem és salvar el que quedi del disc, sense intentar fer malbé les dades:
 
  badblocks -svn /dev/sdb1 -o llista-badblocks.txt
 
  badblocks -svn /dev/sdb1 -o llista-badblocks.txt
  
 
Els paràmetres:
 
Els paràmetres:
-s ens mostra el procés d'escaneig del disc, amb el percentatge de blocs comprovats.
+
* -s ens mostra el procés d'escaneig del disc, amb el percentatge de blocs comprovats.
-v mode verbose
+
* -v mode verbose
-n mode no destructiu, és a dir, que si es recuperaren els blocs fets malbé la informació al disc dur no serà feta malbé o eliminada.
+
* -n mode no destructiu, és a dir, que si es recuperaren els blocs fets malbé la informació al disc dur no serà feta malbé o eliminada.
-o addicionalment ens guarda un llistat dels blocs fets malbé, per si l'hem de tornar a necessitar
+
* -o addicionalment ens guarda un llistat dels blocs fets malbé, per si l'hem de tornar a necessitar
  
'''Nota:''' l'argument <code>-w</code> du a terme una escriptura destructiva, és a dir, esborra les dades al discs dur. Només fer-ho servir en cas que volguem provar d'arreglar el disc dur per a dur a terme un nou formateig. Això és poc recomanable, ja que un cop apareixen blocs fets malbé, en continuaran apareixent, doncs el motiu pel qual han aparegut continua existint i es faran malbé més blocs. El millor és no tornar-ho a fer servir, tot i que si hem identificat que la causa de l'error està fóra del disc, podria no ser mala idea del tot.
+
'''Nota:''' addicionalment l'argument <code>-w</code> du a terme una escriptura destructiva, és a dir, esborra les dades al discs dur. Només fer-ho servir en cas que volguem provar d'arreglar el disc dur per a dur a terme un nou formateig sense que ens importin les dades, encara que això és poc recomanable, ja que un cop apareixen blocs fets malbé, en continuaran apareixent, doncs el motiu pel qual han aparegut continua existint i es faran malbé més blocs. El millor és no tornar-ho a fer servir, tot i que si hem identificat que la causa de l'error està fóra del disc, podria no ser mala idea del tot. L'argument <code>-w</code> és més ràpid que el no-destructiu.
  
 
==== Identificar blocs fets malbé a un disc dur i fer una partició nova on no els faci servir ====
 
==== Identificar blocs fets malbé a un disc dur i fer una partició nova on no els faci servir ====

Revisió de 15:45, 8 feb 2020

Icona d'esboç

Aquest article està en desenvolupament. Pràcticament totes les pàgines del Wiki de Guifi.net són editables, però en aquesta falta informació essencial. Ampliant-ho ajudaràs a millorar Guifi.net.
Potser puguis ajudar-te amb els wikis castellà i anglès si tenen una pàgina equivalent.





Els disc durs són components estadísticament susceptibles de fallar al cap d'un temps sobretot d'ús ininterromput. Altres components que fallen més són les fonts d'alimentació i, en segon lloc les plaques bases de portàtils i d'ordinadors de sobretaula, però una fallada de disc dur pot ser molt més problemàtica, per això és important:

Addicionalment, per a servidors o per ordinadors que treballin amb dades sensibles, a mode de previsió s'ha de valorar també:

Afegir un RAID i/o afegir LVM i/o decidir el sistema d'arxius més adient per les tasques que realitzaran

Comparativa de disc durs segons la utilitat

Els discs SSD (Unitat d'eStat Sòlid)

  • Avantatges: Són els millors discs en termes de consum i vida útil (al no tenir components mecànics, l'erosió i desgast es produeix molt més a poc a poc i no té motor que pugui fallar).
  • Inconvenients: Són cars i tenen poca capacitat amb relació als SATA.

Recomanables si no es necessita massa capacitat, per exemple per a enrutadors, portàtils o servidors que només facin servir sistema operatiu.

Discs SATA

Són els discs durs per a servidors que requereixen gran capacitat. De discos SATA existeixen dues versions actualment: SATA2 i SATA3. La velocitat de transferència de dades és fins a 300 MB/s i 600MB/s respectivament. Es poden connectar a l'ordinador de diverses maneres: directament amb el connector SATA o externament, bé sigui amb el connector eSATA o amb un adaptador USB2 o USB3, respectivament. Els discos SATA3 són compatibles amb els connectors SATA2 i viceversa, tot i que si es fa servir algun component SATA2, la velocitat que s'usa és la d'aquest (màxim de 300MB/s).

Discs IDE

Antic connector de discs durs que encara es poden trobar a plaques de routers. Actualment en desús per l'ús massiu del connector SATA, com a curiositat val a dir que la connexió que fa servir Compact Flash és una adaptació d'IDE, per tant les targetes Compact Flash porten una controladora IDE integrada.

  • Inconvenients: Velocitat de transmissió de dades molt lenta. Baixa capacitat. Tecnologia antiga: moltes de les noves plaques base ja no tenen connectors IDE o només en tenen un.

Només recomanables en cas de cost zero (reciclatge).

Discs SCSI

Discs durs dissenyats principalment per a servidors. Els avantatges d'aquests discos són la seva llarga durabilitat, la ràpida velocitat de resposta i l'enorme velocitat de transferència de dades. Els seus inconvenients són l'alt preu dels discs i de les seves controladores, així com una capacitat reduïda en comparació amb els discs SATA.

Només recomanables en cas de cost zero (reciclatge).

Connexió de corrent

No per obvi menys important: la connexió dels discs durs ha de ser la del seu voltatge i amperatge procurant garantint-la de forma constant amb fonts d'alimentació adients. En discs durs amb parts mecàniques les seves necessitats de corrent són als de 3,5" (habituals) als 5 i als 12 Volts amb un amperatge que sol anar dels 0,65 als 0,72 Ampers als 5 volts i dels 0,35 al 0,6 Ampers als 12 Volts; i als de 2,5" (els de portàtils) als 5 Volts amb un amperatge al voltant dels 0,55 Ampers. Està inscrit sempre a la part superior dels discs durs. La dada de l'Amperatge defineix la quantitat d'energia que consumirà el disc dur (però en principi no és més que orientativa i no definirà si el disc dur gastarà més o menys electricitat, ja que hi ha altres factors com la quantitat d'accessos a disc o la tecnologia d'aquest, per exemple fer servir la tecnologia NCQ evita fer voltes de més als discs durs i poden reduir temps i energia.

Un context on connectar la corrent adient és important és en el cas de discs externs de 2,5" on, alguns d'ells poden funcionar habitualment amb la única connexió de 5 Volts del mateix USB per on porten les dades. No està en absolut de més connectar el connector d'energia auxiliar (abans de connectar el connector de dades) en el cas dels discs durs que tinguin dos connexions USB, ja que encara que el connector de l'USB pot donar tota la energia en connectar-se, en algun cas li podria faltar energia al estar fent molts accessos a disc, amb el conseqüent risc de corrupció del sistema d'arxius o disc.

Comprovació de funcionament de discs durs

Hi ha tres eines fonamentals per a la comprovació dels discs durs:

  • fsck: comprova la integritat del sistema d'arxius
  • smartmontools: conjunt d'eines per visualitzar i rebre avisos sobre discs durs que pugin ser susceptibles de fallar en breu
  • badblocks: detecta blocs amb errors i els pot marcar per a no fer-los servir

I una eina addicional que és la proveïda pel seu fabricant.

fsck

Fa una comprovació de l'estat del sistema d'arxius (útil per a relocalitzar dades després d'una apagada sobtada del disc dur)

fsck /dev/partició_del_disc

On partició_del_disc pot ser sda1, per exemple.

Per, a més, comprovar si el disc dur té blocs amb errors es fa servir el:

fsck -c /dev/partició_del_disc

Nota: fsck és una eina comú per a tots els tipus de sistemes de fitxers. En realitat, fsck fa una crida al programa propi del sistema de fitxers. Així, per exemple, quan es comprova un sistema de fitxers ext2 o reiserfs, fsck fa una crida a e2fsck o reiserfsck respectivament. Aquestes funcions específiques de cada sistema de fitxers tenen opcions extres per al seu seguiment i gestió.

smartmontools

Smartmontools és un conjunt d'eines de monitorització de discs durs. Es compon de dos programes principals: smartctl per visualitzar dades a temps real per pantalla i smartd, per a rebre avisos. smartctl seria el primer programa que hauries de fer córrer en cas de que estiguessis reciclant un disc dur.

Instal·lació:

apt-get install smartmontools smart-notifier

Visualitzar dades d'un disc dur:

smartctl -a /dev/discdur

La sortida s'interpreta de la següent manera:

SMART overall-health self-assessment test result

indica l'estat del disc dur. PASSED significa que el disc dur està en bon estat.

Power_Cycle_Count

indica el número de vegades que ha arrancat el disc dur

Power_On_Half_Minutes

o

Power_On_Hours

indica el temps total que ha treballat el disc dur

Reallocated_Sector_Ct

indica els sectors danyats que s'han pogut corregir internament. Els disc durs tenen uns quants sectors extra per a poder-los utilitzar les primeres vegades que es detecta un sector danyat. Aquestes correccions es fan sense que el sistema operatiu hagi de fer res. Un cop no té més sectors per a relocalitzar, és quan comencen a aparèixer sectors danyats visibles al sistema de fitxers.

A la part final llista els errors enregistrats al disc dur.

La presència d'errors a la visualització smartmontools no et parla sobre errors presents reals d'un disc dur. Encara que smartmontools et digui que no ha passat el test, el disc dur pot continuar funcionant, però es tracta d'un avís òptim sobre un disc dur que has de jubilar en no massa temps. Per a errors reals del disc es fa servir l'eina badblocks.

Una eina gràfica que corre smartmontools per sota és smart-gui, poc recomanable per servidors, ja que necessita un entorn de X.

També es pot fer seguiment de l'estat SMART dels discos fent ús de l'eina d'estadístiques del sistema Munin.

badblocks

Identificar els blocs fets malbé dins d'una partició

Si el que volem és salvar el que quedi del disc, sense intentar fer malbé les dades:

badblocks -svn /dev/sdb1 -o llista-badblocks.txt

Els paràmetres:

  • -s ens mostra el procés d'escaneig del disc, amb el percentatge de blocs comprovats.
  • -v mode verbose
  • -n mode no destructiu, és a dir, que si es recuperaren els blocs fets malbé la informació al disc dur no serà feta malbé o eliminada.
  • -o addicionalment ens guarda un llistat dels blocs fets malbé, per si l'hem de tornar a necessitar

Nota: addicionalment l'argument -w du a terme una escriptura destructiva, és a dir, esborra les dades al discs dur. Només fer-ho servir en cas que volguem provar d'arreglar el disc dur per a dur a terme un nou formateig sense que ens importin les dades, encara que això és poc recomanable, ja que un cop apareixen blocs fets malbé, en continuaran apareixent, doncs el motiu pel qual han aparegut continua existint i es faran malbé més blocs. El millor és no tornar-ho a fer servir, tot i que si hem identificat que la causa de l'error està fóra del disc, podria no ser mala idea del tot. L'argument -w és més ràpid que el no-destructiu.

Identificar blocs fets malbé a un disc dur i fer una partició nova on no els faci servir

badblocks /dev/disc_dur > llista-badblocks.txt

Això pot trigar hores.

Després fer la partició, per exemple ext3:

mkfs.ext3 -l llista-badblocks.txt /dev/partició_del_disc_dur

Veure els blocs fets malbé a un sistema d'arxius

dumpe2fs -b  filesystemname

Esborrar les dades dels inodes que marquen els blocs fets malbé

Podria fer perdre dades:

debugfs -w /dev/sdc1
clri <1>
quit

Això en realitat lo que fa és netejar l'inode número 1 (el primer que conté el llistat de blocs fets malbé marcats) del teu sistema d'arxius.

Després has de fer córrer fsck

Identificació de tipus d'error

Error de partició

Error físic de blocs de disc

Buffer I/O error on device sdc5, logical block XXXXXXXX

Fes-li un e2fsck -c o un badblocks.

Error físic de motor de disc

Error de la controladora de la placa base

A vegades la controladora de la placa base pot fallar, un error d'aquest tipus pot significar un error per part de la placa base:

Dec 11 18:41:25 npx-desktop kernel: [  325.010436] ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
Dec 11 18:41:25 npx-desktop kernel: [  325.010447] ata1.00: BMDMA stat 0x25
Dec 11 18:41:25 npx-desktop kernel: [  325.010455] ata1.00: failed command: READ DMA
Dec 11 18:41:25 npx-desktop kernel: [  325.010471] ata1.00: cmd c8/00:08:58:1e:a6/00:00:00:00:00/ea tag 0 dma 4096 in
Dec 11 18:41:25 npx-desktop kernel: [  325.010475]          res 51/40:08:58:1e:a6/00:00:00:00:00/ea Emask 0x9 (media error)
Dec 11 18:41:25 npx-desktop kernel: [  325.010483] ata1.00: status: { DRDY ERR }
Dec 11 18:41:25 npx-desktop kernel: [  325.010488] ata1.00: error: { UNC }
Dec 11 18:41:25 npx-desktop kernel: [  325.025242] ata1.00: configured for UDMA/133
Dec 11 18:41:25 npx-desktop kernel: [  325.025271] ata1: EH complete

Es pot provar de sol·lucionar, fent proves de desactivació de baixar la velocitat de DMA a 100 o desactivant DMA i ACPI (i per tant, forçant a fer servir el processador). A /etc/default/grub afegim la següent linia:

GRUB_CMDLINE_LINUX="libata.dma=0 libata.noacpi=1"

i, després, update-grub

Errors de controladors del sistema operatiu

Es pot provar de sol·lucionar, fent proves de desactivació de NCQ (és possible que es perdi velocitat o que mai la hagués pogut tenir, perquè el disc no hagués funcionat mai amb NCQ).

A /etc/default/grub afegim la següent linia:

GRUB_CMDLINE_LINUX="libata.force=1.00:noncq" 

i, després, update-grub

Errors pendents d'identificar

Sembla error del motor del disc dur:

[2513158.907095] Buffer I/O error on device sdc5, logical block 14737350
[2513197.456102] sd 23:0:0:0: [sdc] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE,SUGGEST_OK
[2513197.456102] sd 23:0:0:0: [sdc] Sense Key : Aborted Command [current]
[2513197.456102] sd 23:0:0:0: [sdc] Add. Sense: No additional sense information
[2513197.456102] end_request: I/O error, dev sdc, sector 149932608
[ 9.672007] ata3: link is slow to respond, please be patient (ready=0)
[ 14.320007] ata3: COMRESET failed (errno=-16)

També errors a la RAM podrien provocar errors als discs durs, a l'hora d'escriure en ells, però no està comprovat. Per a comprovar la RAM, cal fer servir l'eina memtest, que s'executa a l'arrencada (sense el sistema operatiu engegat). Si no el tens instal·lat, ho pots fer amb:

 apt-get install memtest86+

Això afegirà una opció a l'arrencada. Si abans només en tenies una, probablement no us presentaria la pantalla d'engegada (GRUB). Ara la presentarà i permetrà engegar el memtest en comptes del sistema operatiu (Debian, Ubuntu, ...).

Còpies de seguretat

Hi han vàries eines per a fer còpies de seguretat de particions. Moltes d'elles estan basades sobre rsync. Per exemple una de les que recomanem és rdiff-backup que es pot utilitzar tant a la mateixa partició com per fer còpies de seguretat des de un disc dur a un altre al mateix ordinador com també es pot utilitzar per xarxa tenint instal·lat el rdiff-backup als dos ordinadors passant les còpies sobre SSH.

Recomanem instałlar la última versió que funciona sobre Python 3 amb l'instałlador de programes Python PIP:

sudo apt install python-pip
pip3 install --pre rdiff-backup

Per a crear les còpies de seguretat, la comanda bàsica és:

rdiff-backup directori_a_copiar directori_on_desem_la_còpia

Formateig de disc i particions

Per a donar-li format a una partició, primer cal decidir de quin tipus de fitxers la volem. Un cop escollit, fem servir l'eina mkfs (MaKe FileSystem) o les seves germanes, pròpies de cada sistema de fitxers: mkfs.ext2, mkfs.reiserfs, etc.

 mkfs.ext2 /dev/partició

Afegir RAID

Afegir LVM

Sistemes d'arxius

afegeix aquí les virtuts de cada sistema d'arxius

LVM en clúster

Actualitzar firmware

L'actualització de firmware dels discs durs és una tasca molt poc habitual i que necessita de recursos especials que només s'hauria de fer en cas de que la controladora del disc dur hagués quedat inutilitzada. Normalment implica engegar un sistema MSDOS degut a que l'instal·lador sol ser de propietari i només funciona en aquest sistema operatiu.

Encara que hi ha altres maneres de fer-ho la millor és fent servir el maquinari-programari PC3000 o algun dels seus clònics, de preu alt tots ells.

Enllaços externs generals

Eines de l'usuari