Diagnosticarea stării de sănătate și a performanței discului

Situația pe care vreau să o iau astăzi este un caz special de transferare a sistemului pe alt disc. Anume, cea mai simplă versiune: se presupune că transferăm conținutul întregului hard disk pe un alt disc de aceeași dimensiune sau mai mare.







Varianta cu transferul secțiunilor individuale nu este luată în considerare în mod specific, dar metodele descrise pot fi luate ca bază (dar va fi necesară configurarea încărcătorului, etc.). Mutarea manuală a sistemului prin copierea fișierelor în cadrul acestui articol nu este considerată deloc.

Deci, în cazul meu a fost o sarcină de înlocuire a unui hard disk de 1TB cu 2TB. Sunt un iubitor de clădiri mici în format subțire mATX miniITX și, prin urmare, chiar și atunci când există un loc pentru un al doilea disc, este de dorit să se utilizeze un singur hard disk, pentru a evita supraîncărcarea sursei de alimentare de putere mică, pentru a nu afecta fluxul de ventilație și de a nu ridica temperatura din interiorul unității de sistem.

1. Verificați discul. Dacă există îndoieli cu privire la starea de sănătate a noului hard disk (de exemplu, a fost utilizat anterior pe un alt calculator, achiziționate la mâna a doua, sau pur și simplu au o dorință de a fi în siguranță, încă o dată, chiar și cu o nouă unitate), putem obține ajutor din următoarele comenzi:

1) Citirea datelor din S.M.A.R.T.

smartctl -a / dev / hard_disk_name

Utilitarul smartctl este inclus în pachetul smartmontools. deci dacă acest pachet nu este instalat, instalați-l:

sudo apt-get instala smartmontools

Dacă încă nu ați dat seama ce a fost numele dispozitivului după o nouă conexiune de hard disk (ține cont de faptul că numele dispozitivului atunci când este conectat unitatea hard disk se poate schimba, așa că folosiți întotdeauna UUID în loc de nume de dispozitiv în fișierul / etc / fstab), lista de hard disk-uri pot fi o echipă

sudo fdisk -l (utilizarea utilizatorului normal nu va da rezultatul, deci nu ratați sudo)

Dacă nu înțelegeți foarte bine ce ieșire smarttext le-ați dat, vă puteți limita la un singur parametru - Reallocated_Sector_Ct. După cum probabil știți, producătorii de hard discuri moderne își rezervă un anumit spațiu pe disc pentru înlocuirea transparentă a blocurilor rău. Prin urmare, dacă programele de testare nu detectează blocuri proaste, probabil că au fost deja detectate de către S.M.A.R.T. și înlocuite cu blocuri goale din rezervă. Efectul acestei soluții este ambiguu: pe de o parte, nu pierdem spațiu pe hard disk și înlocuirea blocurilor este invizibilă pentru utilizator; Pe de altă parte, acest lucru poate reduce performanțele (cap de hard disk se va muta din nou la unitatea de rezervă, și să se întoarcă înapoi) și deserviciul în cazul începe să se rostogolească pe disc pentru utilizator, care este obișnuit să se bazeze pe instrumente de diagnosticare de suprafață standard de disc.

Prin urmare, putem specifica interogarea:

sudo smartctl -a / dev / sdb | grep Reallocated_Sector_Ct

și, ca rezultat, primim un șir de căutare, de exemplu, în cazul meu:

5 Reallocated_Sector_Ct 0x0033 100 100 010 Pre-eșec întotdeauna - 0

În cazul nostru, numărul de blocuri substituite este 0 și acesta este cel mai bun rezultat.

Trebuie remarcat faptul că, de obicei, SMART nu este disponibil pentru hard-discurile conectate la USB, deși smartctl acceptă experimental anumite tipuri de poduri USB-SATA (mai multe informații despre acest lucru și cheile necesare conțin programe omenești).

2) Facem un test de suprafață pe hard disk folosind utilitarul badblocks. Este recomandabil să folosiți acest utilitar pe un disc nemontat, deci dacă doriți să verificați discul pe care îl utilizați, utilizați LiveCD (LiveUSB).







Varianta pe care o folosesc de obicei pentru a testa un disc nou sau, invers, un disc care este "eliminat" de pe un computer și pe care nu mai există informații necesare:

sudo badblocks -wvs / dev / device_name (pentru exemplul de mai sus, / dev / sdb)

-w - Permite scrierea pe hard disk, fără a fi îngrijorat de securitatea datelor. Nu folosiți niciodată discuri care au informațiile de care aveți nevoie! Mai multe accelerează testarea.
-v-produce informații despre erorile detectate pe ecran (mai degrabă pe stdout, adică într-un fișier, dacă utilizați redirecționarea ">" ieșire).
-s afișează starea scanării în%. Pentru un hard disk mare, testarea poate dura mai multe ore, deci este posibil să doriți să urmăriți progresul în procente. Această opțiune încetinește puțin utilitatea, deci dacă executați testul, de exemplu, noaptea, această opțiune poate fi omisă.

Utilitatea badblocks este inclusă în pachetul e2fsprogs. deci dacă acest pachet nu este instalat, instalați-l:

sudo apt-get instala e2fsprogs

3) Verificați performanța discului. Poate că cel mai simplu mod este să utilizați utilitarul hdparm cu opțiunea -t.
În manualul către utilitate este recomandat să efectuați operația de 2-3 ori pentru un hard disk. De asemenea, luați în considerare posibila utilizare a discului prin programe, astfel încât măsurătorile cele mai exacte vor fi pe un disc nemontat.

sudo hdparm -t / dev / device_name

Un exemplu de ieșire este afișat în captura de ecran:

Diagnosticarea stării de sănătate și a performanței discului

După ce toate verificările sunt finalizate, putem trece la procedura de transfer de date.

2. Transferarea sistemului pe alt hard disk. Vreau doar să spun că știu despre discurile de boot specializate, cum ar fi Clonezilla. Cu toate acestea, în situația mea, această decizie a eșuat. O altă limitare este că această soluție poate să nu fie potrivită pentru discuri mai mari de 2TB, datorită faptului că în acest caz este utilizată o altă tabelă de partiție în locul MBR.

Am folosit comanda dd. care este proiectat pentru lucrul direct cu discul. Această comandă poate funcționa atât cu partiții separate cât și cu discuri întregi și, în cazul meu, am ales a doua opțiune. Toate operațiile de mai jos au fost efectuate utilizând LiveCD cu Ubuntu.

sudo dd dacă = / dev / original_disk_name din = / dev / target_disk_name bs = 16M

dacă - specifică discul sursă (sau partiția, dar nu în cazul nostru) - "unde copiem", de - țintă "unde să copiezi" (nu confundă!), care trebuie să fie cel puțin nu mai mică decât cea originală. bs este dimensiunea blocului care este copiată într-o singură operație: în cazul nostru este egală cu cache-ul mai mic al două discuri - 16M.

Ca rezultat al operației (care poate dura mai multe ore), vom obține o copie exactă a discului sursă și a unei zone nealocate în cazul în care discul țintă a fost mai mare. Trebuie remarcat faptul că acest lucru va fi de asemenea UUID al partițiilor de pe cele două discuri sunt aceleași. Pentru a nu "deranja" Ubuntu, vă recomand să deconectați fizic unitatea hard disk originală și să încercați să încărcați din nou. Dacă descărcarea a trecut fără probleme, datele sunt OK, reconectați hard disk-ul și încărcați din LiveCD.

3. Eliminați conflictele aceluiași UUID. Rulați gparted (Imagini și de a lucra cu ea elementele de bază, există, de exemplu, aici), și fie să ștergeți partițiile de pe disc vechi, crearea de noi, sau pur si simplu schimba UUID lor (pentru toate secțiunile!) Pe de altă parte, faceți clic dreapta pe fiecare secțiune.

4. Ștergem informații confidențiale pe vechiul disc (dacă este necesar). Dacă nu intenționați să utilizați vechiul hard disk în viitor și intenționați să-l vindeți / donați, va fi înțelept să suprascrieți toate informațiile cu date aleatorii sau zerouri. Este de la sine înțeles că discul nu trebuie montat.

Din nou, consultați comanda dd:

sudo dd dacă = / dev / zero = = / dev / drive_name

Rețineți că această comandă va suprascrie chiar MBR-ul, deci după operație, vă recomandăm să re-creați tabela de partiții și cel puțin o partiție neformată dacă intenționați să transferați discul în alte mâini.

În loc de închisoare. Metoda descrisă mai sus este cel mai ușor atunci când aveți un hard disk este aproape plină de informații (ca copiile de comandă dd informațiile de pe disc, indiferent dacă ceva înregistrat în anumite sectoare sau suprafața discului marcat ca fiind neocupat) . Pentru situațiile în care aveți doar câteva procente din disc, este mai important să copiați numai partiția de sistem, să reinstalați manual încărcătorul și să copiați restul fișierelor folosind metodele uzuale. Această metodă depășește domeniul de aplicare al acestui articol, însă descrierea sa poate fi găsită pe Internet.

P.S. Și nu uitați să partiționați spațiul nealocat la sfârșitul noului disc cu gparted. Dacă era mai mare decât cea originală.







Trimiteți-le prietenilor: