URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 96741
[ Назад ]

Исходное сообщение
"Не загружается сервер после freebsd-update (ZFS)"

Отправлено boffin , 15-Ноя-16 11:50 
Здравствуйте,
После обновления FreeBSD 10.3 через freebsd-update перестал загружаться сервер.
На загрузке вижу такое :(

Booting from Hard Disk ...
ZFS: i/o error - all block copies unavailable
ZFS: cant't read MOS of pool zroot
gptzfsboot: failed to mount default pool zroot

FreeBSD/x86 boot
ZFS: i/o error - all block copies unavailable
ZFS: cant't find dataset u
Default: zroot/<0x0>:

Загружаюсь в Rescue.
Делаю # zpool import -o altroot=/mnt zroot
В каталоге все файлы на месте.

# cat /mnt/boot/loader.conf
zfs_load="YES"
kern.geom.label.gptid.enable="0"
opensolaris_load="YES"
zpool_cache_load="YES"
zpool_cache_type="/boot/zfs/zpool.cache"
zpool_cache_name="/boot/zfs/zpool.cache"

# zpool status
pool: zroot
state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
        still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
        the pool may no longer be accessible by software that does not support
        the features. See zpool-features(7) for details.
  scan: scrub canceled on Thu Dec 24 10:45:01 2015
config:

        NAME        STATE     READ WRITE CKSUM
        zroot       ONLINE       0     0     0
          gpt/zfs0  ONLINE       0     0     0

errors: No known data errors

# gpart show

=>        34  7812939709  mfid0  GPT  (3.6T)
          34        1024      1  freebsd-boot  (512K)
        1058     4194304      2  freebsd-swap  (2.0G)
     4195362  7808744381      3  freebsd-zfs  (3.6T)

# zfs list
NAME                 USED  AVAIL  REFER  MOUNTPOINT
zroot               2.64T   888G    96K  none
zroot/ROOT          71.8G   888G    96K  none
zroot/ROOT/default  71.8G   888G  71.8G  /mnt
zroot/tmp           1.02M   888G  1.02M  /mnt/tmp
zroot/usr           2.57T   888G    96K  /mnt/usr
zroot/usr/home      2.57T   888G  2.57T  /mnt/usr/home
zroot/usr/ports     1023M   888G  1023M  /mnt/usr/ports
zroot/usr/src        552M   888G   552M  /mnt/usr/src
zroot/var           4.62M   888G    96K  /mnt/var
zroot/var/crash       96K   888G    96K  /mnt/var/crash
zroot/var/log       4.15M   888G  4.15M  /mnt/var/log
zroot/var/mail       160K   888G   160K  /mnt/var/mail
zroot/var/tmp        124K   888G   124K  /mnt/var/tmp


Помогите пожалуйста решить проблему загрузки.


Содержание

Сообщения в этом обсуждении
"Не загружается сервер после freebsd-update (ZFS)"
Отправлено universite , 15-Ноя-16 12:29 
> # cat /mnt/boot/loader.conf
> opensolaris_load="YES"

Это зачем? модуль zfs сам подгрузит.

А это откуда? Bsdinstall поставил? о_О
> zpool_cache_load="YES"
> zpool_cache_type="/boot/zfs/zpool.cache"
> zpool_cache_name="/boot/zfs/zpool.cache"

Добавьте еще:
kern.geom.label.disk_ident.enable=0


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено boffin , 15-Ноя-16 12:49 
> А это откуда? Bsdinstall поставил? о_О

Это я уже намудрил ...
было изначально так:
zfs_load="YES"
kern.geom.label.gptid.enable="0"

После добавления:
kern.geom.label.disk_ident.enable=0

Ошибка такая:
FreeBSD/x86 boot
ZFS: unsupported compression algorithm 35
ZFS: i/o error - unable to decompress block pointer data, error 5
ZFS: cant't find dataset u
Default: zroot/<0x0>:


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено eRIC , 15-Ноя-16 14:56 
> Здравствуйте,
> После обновления FreeBSD 10.3 через freebsd-update перестал загружаться сервер.

с какой версии на какую обновлялись?


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено Сергей , 15-Ноя-16 15:01 
>> Здравствуйте,
>> После обновления FreeBSD 10.3 через freebsd-update перестал загружаться сервер.

А сам то загрузчик zfs gptzfsboot обновили... Просто я думаю загрузчик старый, а пул уже новой версии zfs, вот и не совместимость...


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено boffin , 15-Ноя-16 15:06 
> с какой версии на какую обновлялись?

Я не переходил на другую ветку (если я правильно понял)
Cделал просто freebsd-update fetch install

>  А сам то загрузчик zfs gptzfsboot обновили... Просто я думаю загрузчик
> старый, а пул уже новой версии zfs, вот и не совместимость...

Нет, я ни чего не обновлял. Подскажите пожалуйста как сделать.
Опасаюсь перемудрить и потерять данные.


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено eRIC , 16-Ноя-16 07:44 
>> с какой версии на какую обновлялись?
> Я не переходил на другую ветку (если я правильно понял)
> Cделал просто freebsd-update fetch install

https://forums.freebsd.org/threads/54422/ почитайте как там один решил проблему, возможно поможет


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено boffin , 16-Ноя-16 11:14 
> https://forums.freebsd.org/threads/54422/ почитайте как там один решил проблему, возможно
> поможет

Спасибо, попробую.


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено Сергей , 15-Ноя-16 16:34 
> Здравствуйте,
> После обновления FreeBSD 10.3 через freebsd-update перестал загружаться сервер.
> На загрузке вижу такое :(

Обновиться то он успел или как? если успел, попробуйте скопировать новый загрузчик,
только возьмите его с обновленного диска, а не с rescue...


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено boffin , 15-Ноя-16 17:58 
>  Обновиться то он успел или как? если успел, попробуйте скопировать новый
> загрузчик,
>  только возьмите его с обновленного диска, а не с rescue...

Перед поломкой сервер нормально обновился.
Сделал следующее:

# gpart show
=>        34  7812939709  mfid0  GPT  (3.6T)
          34        1024      1  freebsd-boot  (512K)
        1058     4194304      2  freebsd-swap  (2.0G)
     4195362  7808744381      3  freebsd-zfs  (3.6T)

# gpart bootcode -b /mnt/boot/pmbr -p /mnt/boot/gptzfsboot -i 1 mfid0
bootcode written to mfid0

Не помогло.
Теперь
ZFS: i/o error - blocks larger than 128k are not supported

Еще смущает, что не показывает версию
# zpool get version
NAME   PROPERTY  VALUE    SOURCE
zroot  version   -        default

И не показывает диски, которые в пуле
# zpool status -v zroot
  pool: zroot
state: ONLINE
  scan: scrub canceled on Tue Nov 15 14:43:42 2016
config:

        NAME        STATE     READ WRITE CKSUM
        zroot       ONLINE       0     0     0
          gpt/zfs0  ONLINE       0     0     0

errors: No known data errors

Или это нормально если монтировано из rescue?



"Не загружается сервер после freebsd-update (ZFS)"
Отправлено tonys , 15-Ноя-16 16:56 
> Здравствуйте,
> После обновления FreeBSD 10.3 через freebsd-update перестал загружаться сервер.
> На загрузке вижу такое :(

https://lists.freebsd.org/pipermail/freebsd-current/2014-Jul...


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено boffin , 15-Ноя-16 19:16 
> https://lists.freebsd.org/pipermail/freebsd-current/2014-Jul...

Выше написал. Не вышло. Или я что-то не так делаю :(


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено Сергей , 15-Ноя-16 21:29 
>> https://lists.freebsd.org/pipermail/freebsd-current/2014-Jul...
> Выше написал. Не вышло. Или я что-то не так делаю :(

контроллер у вас какой?



"Не загружается сервер после freebsd-update (ZFS)"
Отправлено boffin , 16-Ноя-16 11:14 
>  контроллер у вас какой?

# dmesg | grep controller
ahci0: <Intel Lynx Point AHCI SATA controller> port 0x5070-0x5077,0x5060-0x5063,0x5050-0x5057,0x5040-0x5043,0x5020-0x503f mem 0xb1300000-0xb13007ff irq 19 at device 31.2 on pci0

оно?


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено Сергей , 16-Ноя-16 12:09 
>>  контроллер у вас какой?
> # dmesg | grep controller
> ahci0: <Intel Lynx Point AHCI SATA controller> port 0x5070-0x5077,0x5060-0x5063,0x5050-0x5057,0x5040-0x5043,0x5020-0x503f
> mem 0xb1300000-0xb13007ff irq 19 at device 31.2 on pci0
> оно?

  Да не похоже...


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено lavr , 16-Ноя-16 14:17 
>>  контроллер у вас какой?
> # dmesg | grep controller
> ahci0: <Intel Lynx Point AHCI SATA controller> port 0x5070-0x5077,0x5060-0x5063,0x5050-0x5057,0x5040-0x5043,0x5020-0x503f
> mem 0xb1300000-0xb13007ff irq 19 at device 31.2 on pci0
> оно?

Ну-у-у-ууу, батенька, как же Вы с ZFS управляетесь, если простых вещей
не разумеете?
Думаю, Вы не сами ставили и настраивали сервер и ZFS:

<quote>
# zpool status
pool: zroot
state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
        still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
        the pool may no longer be accessible by software that does not support
        the features. See zpool-features(7) for details.
  scan: scrub canceled on Thu Dec 24 10:45:01 2015
config:

        NAME        STATE     READ WRITE CKSUM
        zroot       ONLINE       0     0     0
          gpt/zfs0  ONLINE       0     0     0

<quote>

Выше сказано, zfs стал более свежей версии: некоторые возможности не доступны
пулу, action(что нужно сделать): zpool upgrade - нужно знать как это делать
безопасно, далее - читайте zpool-features
zroot - корневой пул установлен на gpt-label == zfs0

Далее Вы делаете:

<quote>
# gpart bootcode -b /mnt/boot/pmbr -p /mnt/boot/gptzfsboot -i 1 mfid0
bootcode written to mfid0
<quote>

mfid0 - это устройство у Вас имеет gpt-label zfs0?
обновление gptzfsboot должно быть на том устройстве, на котором создан zroot,
если это действительно mfid0, то вопрос как сконфигурен HW RAID.

далее Вы пишите про контроллер:

<quote>
# dmesg | grep controller
ahci0: <Intel Lynx Point AHCI SATA controller> port 0x5070-0x5077,0x5060-0x5063,0x5050-0x5057,0x5040-0x5043,0x5020-0x503f mem 0xb1300000-0xb13007ff irq 19 at device 31.2 on pci0

оно?
<quote>

mfi - это рейд на базе LSI, если Вы используете ZFS over HW RAID, то Вы ССЗБ,
даже если HW RAID позволяет JBOD или Single Disk или Passthru, их "можно"
использовать под ZFS, но "НУ ОЧЕНЬ НЕ РЕКОМЕНДУЕТСЯ" - ибо Вы получаете
прослойку между Controller <-> HW RAID <-> ZFS, а ZFS любит:
Controller <-> ZFS.

Выясните на что у Вас установлен zroot, посмотрите на что навешен gpt-label zfs0

# geom label list
или
# glabel list
или
# gpart show -l


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено boffin , 17-Ноя-16 11:10 
>  Думаю, Вы не сами ставили и настраивали сервер и ZFS:

Да, так и есть. первый раз столкнулся.


> Выше сказано, zfs стал более свежей версии: некоторые возможности не доступны
> пулу, action(что нужно сделать): zpool upgrade - нужно знать как это делать

Сделал:
# zpool status
  pool: zroot
  state: ONLINE
  scan: scrub canceled on Tue Nov 15 17:43:42 2016
config:

        NAME        STATE     READ WRITE CKSUM
        zroot       ONLINE       0     0     0
          gpt/zfs0  ONLINE       0     0     0

errors: No known data errors

> прослойку между Controller <-> HW RAID <-> ZFS, а ZFS любит:
> Controller <-> ZFS.

Как я понимаю лучше сменить, в данном случае, ZFS на UFS?

В итоге сервер поднялся. Сделал как в ссылке указанной выше.
# zpool import -R /mnt -f zroot
# cd /mnt
# mv boot boot.orig
# mkdir boot
# cd boot.orig
# mkdir /mnt/boot
# cp -Rp * /mnt/boot
# cd /
# zpool export
reboot

Всем огромное спасибо за помощь!!!


"Не загружается сервер после freebsd-update (ZFS)"
Отправлено Сергей , 17-Ноя-16 15:28 
> Как я понимаю лучше сменить, в данном случае, ZFS на UFS?

Ну это не лучше
>[оверквотинг удален]
> # zpool import -R /mnt -f zroot
> # cd /mnt
> # mv boot boot.orig
> # mkdir boot
> # cd boot.orig
> # mkdir /mnt/boot
> # cp -Rp * /mnt/boot
> # cd /
> # zpool export
> reboot

У меня такое ощущение, что на первом этапе, до загрузки драйвера mfi, устройства у вас опознаются как ada(0, 1 и т.д.) и в дальнейшем уже вступает в действие сам драйвер, посему, если это так и у вас  организовано зеркало средствами контроллера, то загрузчик надо записать и на другой диск, входящий в его состав...