🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

2 total messages Started by Emil Smolenski Thu, 12 Nov 2009 10:48
[FreeBSD] Maszyna nie bootuje: ZFS: i/o error - all block copies unavailable
#21058
Author: Emil Smolenski
Date: Thu, 12 Nov 2009 10:48
39 lines
2987 bytes
 Po upgradzie maszyna nie wstaje z następującym błędem:

ZFS: i/o error - all block copies unavailable
ZFS: can't read MOS
ZFS: unexpected object set type lld

FreeBSD/i386 boot 
Default: pgpool:/boot/kernel/kernel 
boot:
ZFS: unexpected object set type lld

 System to 7.2-STABLE. ZFS postawiony jest na jednym logicznym dysku, na
sprzętowej macierzy RAID5 (HP Smart Array P400). Bootuje się wyłącznie
z ZFS, za pomocą zfsboot i loadera podmienionego bodajże z ósemki.
System działał stabilnie kilka miesięcy. Przeżył przeniesienie
bootowania z roota zpoola (pgpool) na dataset pgpool/ROOTFS (property
zpoola bootfs + vfs.root.mountfrom w loader.conf). Macierz jest około
4TB-owa, obsługuje ją ciss(4). Maszyna to amd64.
 Trudno jest mi przeklejać cokolwiek z niebootującego się serwera, więc
nie podaję wszelkich możliwych informacji, ale mogę je na żądanie podać.
 Błąd pojawił się po standardowej procedurze upgrade'u ze źródeł do
najnowszego 7-STABLE (z przedwczoraj). Przed upgradem zrobiłem snapshoty
datasetów pgpool, pgpool/ROOTFS, pgpool/usr. Po wystąpieniu problemu
zbootowałem serwer z 8.0-BETA3-amd64-memstick.img i w konsoli Fixit# da
się zaimportować pgpool bez żadnych błędów. Zrobiłem więc rollback tych
datasetów do stanu sprzed upgrade -- nie pomogło. Spróbowałem też
zbootować serwer z pgpool (zamiast pgpool/ROOTFS), który nie był ruszany
od miesięcy (nie był upgradowany) -- również nie pomogło.
 Google zwracają jeden ważny wynik: http://42.pl/u/1TIb, jednak problem
tam dotyczy bootowania z RAIDZ, który od początku nie był wspierany i od
początku był problematyczny. U mnie występuje tylko jeden logiczny dysk.
Dodatkowo, nie używam gptzfsboot, tylko zfsboot.
 Zaproponowanych patchy przez rnolanda jeszcze nie próbowałem, w tej
chwili przebudowuję macierz na sprzętowym raidzie. Piszę na tę grupę,
zamiast na freebsd-fs@ czy freebsd-current@, bo liczę na polskich
commiterów, którzy mocno się angażują w projekt ZFS na FreeBSD. TIA.

-- 
am
Re: [FreeBSD] Maszyna nie bootuje: ZFS: i/o error - all block copies unavailable
#21059
Author: Emil Smolenski
Date: Fri, 13 Nov 2009 15:39
98 lines
4231 bytes
Emil Smolenski <ameel@bezspamu.wp.pl.invalid> rzecze:

> ...

 Z wykorzystaniem /boot na UFS z zewnętrznego nośnika, udało się
zbootować system. Zrobiłem scrub, który poszedł bez problemów. Założyłem
więc patche proponowane przez rnolanda@ -- bez rezultatu. Założyłem więc
również patch Matta Reimera, który raczej nie ma związku ze sprawą, więc
także bez rezultatu. Zsynchronizowałem kod zfsboot z wersją
z -CURRENT-a (pliki zmodyfikowane w svn rev. 198420):
/sys/boot/i386/zfsboot/zfsboot.c
/sys/boot/zfs/zfs.c
/sys/boot/zfs/zfsimpl.c
/sys/cddl/boot/zfs/zfsimpl.h

Wykonałem:
# cd /usr/src/sys/boot/
# make obj ; make depend ; make
# cd i386/loader
# make install
# cd /usr/src/sys/boot/i386/zfsboot
# make install
# sysctl kern.geom.debugflags=16
# dd if=/boot/zfsboot of=/dev/da0 count=1
# dd if=/boot/zfsboot of=/dev/da0 skip=1 seek=1024
# reboot

 Komunikat obecnie wygląda nieco inaczej, rnoland@ poprawił printf:

ZFS: i/o error - all block copies unavailable
ZFS: can't read MOS
ZFS: unexpected object set type 0

FreeBSD/i386 boot
Default: pgpool:/boot/kernel/kernel
boot:
ZFS: unexpected object set type 0

 Więcej informacji:

# zpool list
NAME     SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT
pgpool  4.06T  2.17T  1.89T    53%  ONLINE  -      

# zpool status                                                                             
  pool: pgpool                                                                             
 state: ONLINE                                                                             
 scrub: none requested                                                                     
config:                                                                                    

        NAME        STATE     READ WRITE CKSUM
        pgpool      ONLINE       0     0     0
          da0       ONLINE       0     0     0

errors: No known data errors

# zfs list | grep ROOTFS
pgpool/ROOTFS                568M  1.80T  55.3M  legacy    

# zpool get all pgpool
NAME    PROPERTY       VALUE          SOURCE
pgpool  size           4.06T          -
pgpool  used           2.17T          -
pgpool  available      1.89T          -
pgpool  capacity       53%            -
pgpool  altroot        -              default
pgpool  health         ONLINE         -
pgpool  guid           3920915583055727184  -
pgpool  version        13             default
pgpool  bootfs         pgpool/ROOTFS  local
pgpool  delegation     on             default
pgpool  autoreplace    off            default
pgpool  cachefile      -              default
pgpool  failmode       wait           default
pgpool  listsnapshots  off            default

 loader.conf:
usb_load="YES"
uplcom_load="YES"
umass_load="YES"
ugen_load="YES"
ukbd_load="YES"
random_load="YES"
loader_color="YES"
vfs.root.mountfrom="zfs:pgpool/ROOTFS"
zfs_load="YES"
autoboot_delay="2"

FreeBSD 7.2-STABLE #0: Fri Jun 19 13:27:29 CEST 2009
(jak wspomniałem wcześniej, był rollback)

ciss0: <HP Smart Array P400> port 0xe800-0xe8ff mem
0xdef00000-0xdeffffff,0xdeeff000-0xdeefffff irq 35 at device 0.0 on pci4
ciss0: [ITHREAD]
da0 at ciss0 bus 0 target 0 lun 0

-- 
am
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads