Re: boot from raidz

From: Paul Wootton <paul_at_fletchermoorland.co.uk>
Date: Mon, 07 Sep 2009 17:22:38 +0000
Oliver Fakler wrote:
> On Mon 07/09/09 13:40 , Bernhard Schmidt  wrote:
>  Am 07.09.2009 um 11:13 schrieb Oliver Fakler:
>  >
>  > BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px; }
>  >
>  > On Mon 07/09/09 10:07 , Bernhard Schmidt   
>  > wrote:
>  >
>  >
>  > Am 06.09.2009 um 21:45 schrieb Oliver Fakler:
>  >
>  > >
>  > >
>  > > Hi all,
>  > >
>  > > i installed a 8.0 beta 3 amd64 based testsystem.
>  > >
>  > > i tried with a root on a raidz, but i have a problem after the
> first
>  > > reboot, there is a error message:
>  > >
>  > > can't load kernel
>  > > I found something that boot root from raidz is not supported,
> but
>  > > maybe there is a solution??
>  > > Hope some can help me
>  >
>  >
>  > There are patches from Doug Rabson which add support for booting
> from
>  > raidz/raidz2.
>  >
>  >
> http://lists.freebsd.org/pipermail/freebsd-fs/2008-December/005498.html
> [2]"
> target="_blank">http://lists.freebsd.org/pipermail/freebsd-fs/2008-December/005498.html
>
>  > "
> target="_blank">http://lists.freebsd.org/pipermail/freebsd-fs/2008-December/005498.html
> [3]"
> target="_blank">http://lists.freebsd.org/pipermail/freebsd-fs/2008-December/005498.html
>  Seems that patch made it already into the tree (r192194).
>  >
>  >
>  > I tried it, but after a make obj && make depend the make failed
> with  
>  > different errors like undeclared and has no member named.
>  >
>  > I used patch raidzboot-14052009.diff started patching from
> /usr/src/ 
>  > sys/ , i'm not sure if this was the right way.
>  >
>  > I'm also not sure if the way of installation was the right one,  
>  > here's the way i go:
>  >
>  >
>  > gpart create -s GPT da0
>  > gpart add -b 34 -s 128 -t freebsd-boot da0
>  > gpart add -b 162 -s 5242880 -t freebsd-swap da0
>  > gpart add -b 5243042 -s 11534141 -t freebsd-zfs da0
>  > gpart bootcode -b /mnt2/boot/pmbr -p /mnt2/boot/gptzfsboot -i 1
> da0
>  > gpart bootcode -b /mnt2/boot/pmbr -p /mnt2/boot/gptzfsboot -i 1
> da1
>  > gpart bootcode -b /mnt2/boot/pmbr -p /mnt2/boot/gptzfsboot -i 1
> da2
>  >
>  Can you try zfsboot instead of gptzfsboot?
>
> http://unix.derkeiler.com/Mailing-Lists/FreeBSD/stable/2009-05/msg00689.html
> [4]"
> target="_blank">http://unix.derkeiler.com/Mailing-Lists/FreeBSD/stable/2009-05/msg00689.html
>
>    at the end of the mail.
>  >
>  >
>  > kldload /mnt2/boot/kernel/opensolaris.ko
>  > kldload /mnt2/boot/kernel/zfs.ko
>  >
>  > zpool create tank raidz da0p3 da1p1 d2p1
>  >
>  > zfs create tank/tmp
>  > zfs create tank/usr
>  > zfs create tank/var
>  >
>  > cd /dist/8.0-BETA3/base
>  > export DESTDIR=/tank
>  > ./install.sh
>  > You are about to extract the base distribution into /tank - are
> you  
>  > SURE
>  > you want to do this over your installed system (y/n)? y
>  > cd ../kernels
>  > ./install.sh generic
>  > cd /tank/boot
>  > cp -Rp GENERIC/* kernel/
>  >
>  > cd /dist/8.0-BETA3/src
>  > ./install.sh all
>  > Extracting sources into /usr/src...
>  >   Extracting source component: base
>  >   Extracting source component: bin
>  >   Extracting source component: cddl
>  >   Extracting source component: contrib
>  >   Extracting source component: crypto
>  >   Extracting source component: etc
>  >   Extracting source component: games
>  >   Extracting source component: gnu
>  >   Extracting source component: include
>  >   Extracting source component: krb5
>  >   Extracting source component: lib
>  >   Extracting source component: libexec
>  >   Extracting source component: release
>  >   Extracting source component: rescue
>  >   Extracting source component: sbin
>  >   Extracting source component: secure
>  >   Extracting source component: share
>  >   Extracting source component: sys
>  >   Extracting source component: tools
>  >   Extracting source component: ubin
>  >   Extracting source component: usbin
>  > Done extracting sources.
>  > Done extracting sources.
>  > cd ../manpages
>  > ./install.sh
>  >
>  > echo 'zfs_enable="YES"' > /tank/etc/rc.conf
>  > echo 'LOADER_ZFS_SUPPORT="YES"' > /tank/etc/src.conf
>  > echo 'zfs_load="YES"' > /tank/boot/loader.conf
>  > echo 'vfs.root.mountfrom="zfs:tank"' >> /tank/boot/loader.conf
>  > echo &acute;/dev/da0p2 none swap sw 0 0&acute;>> /tank/etc/fstab
>  >
>  > mkdir /boot/zfs
>  > zpool export tank && zpool import tank
>  > cp /boot/zfs/zpool.cache /tank/boot/zfs/
>  >
>  > chroot /tank
>  > mount -t devfs devfs /dev
>  > unset DESTDIR
>  > cd /usr/src/sys/boot/
>  > make obj
>  > make depend
>  > make
>  > cd i386/loader
>  > make install
>  > umount /dev
>  > touch /etc/fstab
>  > exit
>  >
>  > export LD_LIBRARY_PATH=/mnt2/lib
>  > zfs set mountpoint=legacy tank
>  > zfs set mountpoint=/tmp tank/tmp
>  > zfs set mountpoint=/var tank/var
>  > zfs set mountpoint=/usr tank/usr
>  > zpool set bootfs=tank tank
>  >
>  Seems correct at first glance.
>  --
>  Bernhard
> 	testet with zfsboot instead of gptzfsboot but it was not successfull
> :-(
>
> Links:
> ------
> [2] http://mail.kuehlbox.de/parse.php?redirect=<a href=
> [3] http://mail.kuehlbox.de/parse.php?redirect=<a href=
> [4] http://mail.kuehlbox.de/parse.php?redirect=<a href=
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org

I have a fully running GPT ZFS RaidZ setup using what was at the time 8-HEAD


I cant remember the exact steps I took, but one thing I have different 
is I have a root filesystem within my zpool


[paul_at_demophon /usr/home/paul]$ gpart show
=>       34  976773101  ada1  GPT  (466G)
         34        256     1  freebsd-boot  (128K)
        290    8388608     2  freebsd-swap  (4.0G)
    8388898  147912557     3  freebsd-zfs  (71G)
  156301455  820471680        - free -  (391G)

=>       34  488394988  ada2  GPT  (233G)
         34        256     1  freebsd-boot  (128K)
        290    8388608     2  freebsd-swap  (4.0G)
    8388898  147912557     3  freebsd-zfs  (71G)
  156301455  332093567        - free -  (158G)

=>       34  156301421  ada3  GPT  (75G)
         34        256     1  freebsd-boot  (128K)
        290    8388608     2  freebsd-swap  (4.0G)
    8388898  147912557     3  freebsd-zfs  (71G)


[paul_at_demophon /usr/home/paul]$ zpool status
  pool: zboot
 state: ONLINE
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        zboot       ONLINE       0     0     0
          ada1p3    ONLINE       0     0     0
          ada2p3    ONLINE       0     0     0
          ada3p3    ONLINE       0     0     0

errors: No known data errors


[paul_at_demophon /usr/home/paul]$ zfs list
NAME           USED  AVAIL  REFER  MOUNTPOINT
zboot         33.5G   175G    18K  none
zboot/root    12.4G   175G  12.2G  none
zboot/tmp     82.9M   175G  82.6M  none
zboot/usr     20.8G   175G  16.5G  none
zboot/var      216M   175G   123M  none


Im also using fstabs to mount my ZFS filesystems

[paul_at_demophon /usr/home/paul]$ more /etc/fstab
# Device        Mountpoint      FStype          Options         Dump    
Pass#
zboot/root      /               zfs             rw              0       0
zboot/usr       /usr            zfs             rw              0       0
zboot/var       /var            zfs             rw              0       0
zboot/tmp       /tmp            zfs             rw,noatime      0       0
proc            /proc           procfs          rw              0       0


I remember speak to someone a while back, and I *think* we came to the 
conclusion that using the zpool as your root will not work correctly and 
you should really create a root filesystem inside the zpool

Lets me know how this works out for you

Paul


-----------------------------------------------------------------------------------
Fletcher Moorland Limited is a company registered in England and Wales. 
Registration number: 2984467. 
Registered office: Elenora Street, Stoke on Trent, Staffordshire, ST4 1QG. 
VAT Registration number: 478730606 
Telephone: 01782 411021 | Fax: 01782 744470 | http://www.fletchermoorland.co.uk 
Received on Mon Sep 07 2009 - 14:23:35 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:55 UTC