Thread View: pl.comp.os.bsd
2 messages
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
Author: Emil Smolenski
Date: Thu, 12 Nov 2009 10:48
Date: Thu, 12 Nov 2009 10:48
39 lines
2987 bytes
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
Author: Emil Smolenski
Date: Fri, 13 Nov 2009 15:39
Date: Fri, 13 Nov 2009 15:39
98 lines
4231 bytes
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