restaurarea superblock`a

restaurarea superblock`a

Uneori, hard disk-uri sypyatsya. Și de multe ori - nu în momentul potrivit, și de rezervă este depășit ... Și apoi trebuie să se miște.

În general, următoarea situație:

Server "păros" ani, Reid nu, SATA, vechi, sistem FreeBSD 5.x.

După mutarea serverul nu a crescut, dar o mai aproape de obiecte care plasează a dezvăluit că mult a plouat hard-disk. Presarati într-o asemenea măsură, încât secțiunea de îngrijire bătute în panică kernel-ul, dar unele secțiuni nu am verificat, am jurat ca acest lucru - sistem de fișiere este incorect Superblock, rău, executați manual fsck ...

soluţie:
Prezența a trei discuri
ad0 - vechea unitate de luptă.
AD2 - un disc nou, copiați ham.
AD3 - noul disc va fi muncitorii, în loc de vechi.

1. Conectați-vă la de operare garantat sistemnike unitate ad0 vechi. Noul AD2 unitate (mai bună volum mai mare) și CD-ROM.
2. Georgia cu CD FreeBSD, trece la modul live-cd.
3. Faceți o copie de siguranță (vechea unitate se poate prăbuși în orice moment)

# Dd if = / dev / ad0 of = / dev / AD2 bs = 64k conv = noerror

4. Așezați pe partea de rezervă.
5. Reboot.

Ridicați același sistem pe noua unitate.

1. Conectați ad0 drive-urile și AD3.
1. Georgia cu CD FreeBSD, trece la modul live-cd.
2. Se împarte noul CD-ul într-un mod similar (aproximativ la fel ca și cel vechi, principalele secțiuni de oțel pentru a nu mai puțin decât erau). Nu uitați să instalați încărcătorul de boot (Boot Manager) la noua unitate.
3. Reboot, doar în cazul în care, pentru a verifica dacă sunt păstrate exact toate modificările aduse sistemului de fișiere pe noua unitate.
4. Evidențiați. Suntem în modul live-cd. Acum trebuie să se conecteze secțiunile de pe disc vechi. Pentru a face acest lucru, vom restabili superblocul.
4.1. Cautam superblocks alternative

Nu uita cheia -N. Vedem ceva de genul următoarele:

/ Dev / ad0s1a: 1024.0MB (2097152 sectoare) mărimea blocului 16384, dimensiunea fragment 2048
folosind 6 grupe cilindri de 183.77MB, 11761 blks, 23552 inodes.
backup super-bloc (pentru fsck -b #) la:
160, 376512, 752864, 1129216, 1505568, 1881920

Suntem interesați în linia de „copii de rezervă super-bloc (pentru fsck -B #) la:“
și super-blocuri care sunt listate acolo.
4.2. Fix super-bloc

# Fsck_ufs -b 160 / dev / ad0s1a

4.3. Mount secțiunea modificată în modul de aplicare, așa cum tocmai am citit

# Mount -f / dev / ad0s1a / mnt / vechi

5. Acum, transferul în sine. Se montează partiția cu o nouă unitate (AD3):

# Mount / dev / ad3s1a / mnt / noi

Copiați conținutul secțiunii-lea tar

# Tar-C / mnt / -cvf vechi -. | tar -C / mnt / new -xpf

6. Asigurați-vă că transferul sa încheiat, pot fi verificate de volum, de exemplu, df -h comanda. Forum Demonta / mnt / vechi și / mnt / noi

7. Repetați pasul 4-6 (dacă este necesar restabilirea super-bloc) sau 5-6 pentru toate secțiunile.

Asta e tot. Unele nuanțe:
Sistemele de fișiere trebuie să fie aceeași în discul vechi și noi. Aceasta este, în cazul în care vechiul 5.x disc FreeBSD și de mai sus a fost - cel mai probabil UFS2 la crearea de noi partiții, puteți utiliza fie noul CD-ul live. În cazul în care 4.x pe discul vechi -, de asemenea, o nouă nevoie pentru a crea partiții UFS1.
În versiunea 4.x nu va funcționa fsck_ufs -b, puteți utiliza dd:


# Dd if = / dev / ad0s1a sări peste = 32 de = / dev / ad0s1a caută = 16 bs = 512 count = 16

În orice caz, pentru a direcționa copierea. Puteți salva sectorul de stat „ca“:

#DD if = / dev / ad0s1a sări = 16 = / old_16 bs = 512 count = 16

articole similare