FreeBSD - при загрузке получаем :Aug 26 12:52:14 kernel: (ada0:ata0:0:0:0): READ_DMA. ACB: c8 00 00 02 00 40 00 00 00 00 10 00
Aug 26 12:52:14 kernel: (ada0:ata0:0:0:0): CAM status: ATA Status Error
Aug 26 12:52:14 kernel: (ada0:ata0:0:0:0): ATA status: 51 (DRDY SERV ERR), error: 40 (UNC )
Aug 26 12:52:14 kernel: (ada0:ata0:0:0:0): RES: 51 40 04 02 00 00 00 00 00 00 00
...
gptboot: error 16 lba 290
...
gptboot: No /boot/loader on0:ad(0p2)
gptboot: No /boot/kernel/kernel on 0:ad(0p2)
Freebsd /x86 boot
Default: 0:ad(0p1)/boot/kernel/kernelВообщем отказывается грузится.
Загрузился с лив-сиди. Поднял ssh.
# ls /dev | grep ad
ada0
ada0p1
ada0p2
ada0p3# camcontrol devlist
<ST340014A 3.06> at scbus0 target 0 lun 0 (pass0,ada0)
<TOSHIBA DVD-ROM SDM2012C TU01> at scbus1 target 0 lun 0 (cd0,pass1)# gpart show
=> 34 78165293 ada0 GPT (37G)
34 128 1 freebsd-boot (64K)
162 73400192 2 freebsd-ufs (35G)
73400354 3907584 3 freebsd-swap (1.9G)
77307938 857389 - free - (419M)=> 34 78165293 diskid/DISK-5JX7YWF5 GPT (37G)
34 128 1 freebsd-boot (64K)
162 73400192 2 freebsd-ufs (35G)
73400354 3907584 3 freebsd-swap (1.9G)
77307938 857389 - free - (419M)Ну и вроде что еще есть.
Не подскажите, как восстановить загрузчик? И загрузиться штатно.
У вас сам загрузчик имеется, вот только проблема с самим жестким диском, попробуйте после загрузки с лав-сиди подмонтировать раздел ad0p2 и посмотреть что на нем осталось...
можно попытаться прочекать этот раздел
> Aug 26 12:52:14 kernel: (ada0:ata0:0:0:0): READ_DMA. ACB: c8 00 00 02
> 00 40 00 00 00 00 10 00
> Aug 26 12:52:14 kernel: (ada0:ata0:0:0:0): CAM status: ATA Status Error
> Aug 26 12:52:14 kernel: (ada0:ata0:0:0:0): ATA status: 51 (DRDY SERV ERR),
> error: 40 (UNC )
> Aug 26 12:52:14 kernel: (ada0:ata0:0:0:0): RES: 51 40 04 02 00
> 00 00 00 00 00 00
> Aug 26 12:52:14 kernel: (ada0:ata0:0:0:0): ATA status: 51 (DRDY SERV ERR),UNC - это проблема чтения поверхности. Надо загрузиться и прочитать SMART диска. Так же можно попробовать попробовать вычитать сбойный LBA через dd.
Скорее всего, надо думать не о загрузке, а о спасении данных.
>[оверквотинг удален]
> 0 lun 0 (pass0,ada0)
> <TOSHIBA DVD-ROM SDM2012C TU01> at scbus1 target 0 lun
> 0 (cd0,pass1)
> # gpart show
> => 34 78165293 ada0
> GPT (37G)
> 34
> 128 1 freebsd-boot
> (64K)
> 162 73400192смотрим как у Вас создана партиция freebsd-boot,
начало с 34 блока, размер 64k:# gpart add -t freebsd-boot -b 34 -s 64k ada0
вот только я сомневаюсь что современный gpart разрешит
создавать freebsd-boot начиная с -b 34... с 40'ого разрешит.Возможно, имеет смысл найти старый дистрибутив: 8'ка или 7'ка
и попробовать gpart оттуда.
Ну или другой вариант, на стороннем или виртуальном диске
выполнить:
# gpart add -t freebsd-boot -b 40 -s 64k ada0
а затем используя dd скопировать сектора freebsd-boot
на ваш диск.# gpart bootcode -b /boot/pmbr -p /boot/gptboot -i1 ada0
>[оверквотинг удален]
> (35G)
> 73400354 3907584
>
> 3 freebsd-swap (1.9G)
> 77307938 857389
>
> - free -
> (419M)
> Ну и вроде что еще есть.
> Не подскажите, как восстановить загрузчик? И загрузиться штатно.Лучше проверяйте диск и переносите систему.
Нашел дистрибутив FreeBSD 8.1
Но там, я так понимаю нету LiveCD, он с 9 версии начинается.А как тогда нужно грузиться ?
Пробуем грузиться.
3. Boot FreeBSD in Safe Mode --- что то зависла клавиатура.Грузимся:
4. Boot FreeBSD in single user mode
Получилось.
Выбираем Fixit.
Shell. - не помогло.А как попасть в Shell ??
Думаю попробовать перенести данные на другой диск.
Подключил другой диск.
> Нашел дистрибутив FreeBSD 8.1
> Но там, я так понимаю нету LiveCD, он с 9 версии начинается.там FixitMode.
>[оверквотинг удален]
> Пробуем грузиться.
> 3. Boot FreeBSD in Safe Mode --- что то зависла клавиатура.
> Грузимся:
> 4. Boot FreeBSD in single user mode
> Получилось.
> Выбираем Fixit.
> Shell. - не помогло.
> А как попасть в Shell ??
> Думаю попробовать перенести данные на другой диск.
> Подключил другой диск.Скачать iso или usb с livefs, я попробовал 7.3 и 8.1 - gpart работает без проверки на aling:
http://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-relea...
http://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-relea...загружаемся, давим enter при выборе locale,
выбираем выход в Fixit, выбираем CD/DVD livefs для iso или USB livefs если memstick образ.Далее ALT-F4: попадаем в shell
# gpart show ad0
не забываем что в старых дистрибутивах adX вместо adaX.
... нужные команды ...Все.
Перед тем как перенести данные, я бы попробовал dd на чтение
# dd if=/dev/ada0 of=/dev/null bs=128k conv=sync,noerror
посмотреть сбойные блокиЕсли диск читабельный, переносить можно чем угодно:
- dump/resore
- rsync
- dd в образ, с образом потом можно что угодно делать (обязательно с conv=sync,noerror)ps. на железных форумах вычитал что сбойные HDD лучше копировать поставив на ребро,
мне таким способом удалось достаточно дисков скопировать, особенно те у которых
были проблемы с раскруткой.
> Вообщем отказывается грузится.В общем, отказывается грузиться.
> Не подскажите, как
Не подскажете, как