|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Valentin Nechayev 2:5020/400 15 Jul 2004 20:22:26 To : Andrey Ostanovsky Subject : Re: repair data -------------------------------------------------------------------------------- >>> Andrey Ostanovsky wrote: AO>>> Hе монтирует AO>>> # fsck /dev/vn0 AO>>> ** /dev/vn0 AO>>> BAD SUPER BLOCK: MAGIC NUMBER WRONG AO>>> /dev/vn0: NOT LABELED AS A BSD FILE SYSTEM (unused) VN>> Ищешь запасной суперблок и скармливаешь его в fsck. VN>> Хотя как fsck это делает - мне не нравится, похоже, лучше делать VN>> напрямую dd суперблока из проверенной запасной копии в основное место VN>> и затем напускать fsck на результат. AO> Тогда дурацкий вопрос - как искать этот суперблок и как вставлять "в AO> основное место"? Искать умеет вроде scanffs из портов. Hо можно и вручную: где-то так: ## jot 100 | while read N; do dd if=/dev/ad0s3a bs=8192 count=1 skip=$N 2>/dev/ null | hd | grep ^00000550 | fgrep -q '54 19 01 00' && echo $N; done 1 2 Тут нашли на смещениях 1 (это и есть основной суперблок) и 2 (первый запасной); учти, что это блоки размера 8k. Ставить где-то так (например, мы первый запасной копируем в основной): dd if=/dev/vn0 bs=8k count=1 skip=2 | dd of=/dev/vn0 bs=8k count=1 seek=1 ^ ^ здесь - из 8k-блока номер 2 в 8k-блок номер 1. -netch- --- ifmail v.2.15dev5.3 * Origin: Dark side of coredump (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/223833eb48fde.html, оценка из 5, голосов 10
|