On Fri, 28 Sep 2007, Kugutsumen wrote:

>
> Using build 70, I followed the zfsboot instructions at http://
> www.opensolaris.org/os/community/zfs/boot/zfsboot-manual/  to the
> letter.
>
> I tried first with a mirror zfsroot, when I try to boot to zfsboot
> the screen is flooded with "init(1M) exited on fatal signal 9"
>
> Than I tried with a simple zfs pool (not mirrored) and it just
> reboots right away.
>
> If I try to setup grub manually, it has no problem in both cases
> finding the root_archive, etc...:
>
> grub> root (hd0,0,a)
>  Filesystem type is zfs, partition type 0xbf
>
> grub> /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS
> loading 'platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS
> cpu: 'AuthenticAMD' family 15 model 47 step 0
> [BIOS accepted mixed-mode target setting!]
>   [Multiboot-kluge, loadaddr=0xbffe38, text-and-data=0x161958,
> bss=0x0, entry=0xc00000]
> '/platform/i86pc/kernel/amd64/unix -B zfs-bootfs=rootpool/21' is loaded
>
> grub> boot
>
> Any idea what I am doing wrong?

No - but I'll post my (very ugly) ZFS boot "cheat sheet" that'll get 
you up and running, from scratch, in less than one hour.  Apologies 
for the nastiness of this cheat sheet - I'll pretty it up and post it 
later.

# this "cheat sheet" makes the following assumptions:

# The install server is at 192.168.80.18
# The install server is using a ZFS based filesystem with 
# a pool called tanku.  The users home directory is also
# in this pool at /tanku/home/al
# the target machine has ethernet address: 00:e0:81:2f:e1:4f

# verify that your ethernet interface supports PXE boot
# most systems do - except for low-end ethernet cards that
# don't have an option RAM
# verify that you know which two disks you'll be loading the
# OS to.  If need be, you'll have to boot the box off a DVD
# and run format to determine the available disk drives

# determine the ethernet address of the interface you'll be
# using for PXE boot.  See more notes below.  Make a note 
# of it.

# next: download Lori Alts/Dave Miners ZFS boot tools:

wget 
http://www.opensolaris.org/os/community/install/files/zfsboot-kit-20060418.i386.tar.bz2

# Yes - the date should be 20070418
# unzip and untar them - in this case they'll end up in
# /tanku/home/al/zfsboot/20070418 (aka ~al/zfsboot/20070418)
# Find and read the README file.  But don't spend too much
# time studying it.  The cheat sheet will tell you what to do.

# on the install server setup a ZFS bootable netinstall image for b72
mkdir /mnt72
chown root:sys /mnt72
chmod 755 /mnt72
# FYI only: /solimages is an NFS mount
lofiadm -a /solimages/sol-nv-b72-x86-dvd.iso
# assumes that lofiadm returned "/dev/lofi/2"
mount -F hsfs -o ro /dev/lofi/2 /mnt72
zfs create tanku/b72installzfs
zfs set sharenfs='ro,anon=0' tanku/b72installzfs
cd /mnt72/Solaris_11/Tools
./setup_install_server /tanku/b72installzfs
cd /tanku/home/al/zfsboot/20070418
# next step takes around 13 minutes (why?)
ptime ./patch_image_for_zfsboot /tanku/b72installzfs
# remove the DVD image mount and cleanup
umount /mnt72
lofiadm -d /dev/lofi/2

# verify that you can mount /tanku/b72installzfs on another machine
# as a quick test.  Best to check this _now_ than try to figure it
# out later.
# mount -F nfs -o ro,vers=3,proto=tcp 192.168.80.18:/tanku/b72installzfs /mnt
# go to the prepared zfs boot area (in this case /tanku/b72zfsinstall
cd /tanku/b72installzfs/Solaris_11/Tools

# add the install server files
./add_install_client -d -e 00:e0:81:2f:e1:4f -s 
192.168.80.18:/tanku/b72installzfs  i86pc

# you'll see instructions to add the client macros (something) like:

     If not already configured, enable PXE boot by creating
     a macro named 0100E0812FE14F with:
       Boot server IP (BootSrvA) : 192.168.80.18
       Boot file      (BootFile) : 0100E0812FE14F

# using: the screen-by-screen guide at: 
# http://www.sun.com/bigadmin/features/articles/jumpstart_x86_x64.jsp
# starting at step 5:
#             ^^^^^^
# 5. Configure and Run the DHCP Server
#
# add the two macros and use the name 0100E0812FE14F

# NB: Ignore *all* the stuff up to step 5.  You don't need any of it!

# NB: the macro must have the correct name
# verify that the tftp based files are available

df |grep tftp

# it should look something *like* this:
#/tanku/b72installzfs/boot
#                     260129046 3564877 256564169     2%    
/tftpboot/I86PC.Solaris_11-2

# test that the tftp files can be retrieved via tftp:

cd /tmp
tftp

> connect 192.168.80.18
> get 0100E0812FE14F
> quit

# enable FTP on your boot server to allow snagging the zfs boot profile file:

svcadm enable ftp

# change your password before you dare use ftp.  Remember to use a disposable
# password - because it can be sniffed on the LAN.  After we're done with FTP,
# restore your original password.

# enable the PXE boot on the target systems BIOS

# boot the target machine
# during the early phases of booting press F12  ASAP

# you should see the machine contact the DHCP server and start downloading
# the required files within a couple of seconds.

NB: verify that the ethernet address displayed by the PXE code is the same one
you expected and is associated with the physical interface in use.  Some 
machines
pick the ethernet port that will be used for PXE boot for you - you don't have 
a 
choice.  Newer BIOSes allow you to enable PXE separately for each supported 
interface.

expect to see a GRUB prompt for the release you're installing (i.e., b72)

Select 4 (Console install) - its the least likely to cause you issues.
If you're using bge0 as the PXE boot interface, ensure that you leave 
the bge0 interface enabled for networking  "[x] bge0" - otherwise you 
won't be able to "see" the install server.

Fill in the minimum required config details, and take the first EXIT option
as soon as you see one.  Now you'll have a command line prompt.

# the following assumes you've setup a profile file called (simply) 
# profile.zfs on your boot server.  See samples below.
# At the prompt:

cd /tmp
ftp 192.168.80.18
user:
password: (use the dummy password you setup earlier)
get profile.zfs
quit


# Now load the system with pfinstall

pfinstall /tmp/profile.zfs

# the system should begin loading Solaris within a couple of Seconds.


# Sample ZFS boot profile file 1 (simple):
# You may wish to change the cluster type (see next sample)

install_type initial_install
cluster SUNWCall
filesys c1t0d0s1 auto swap
pool mypool free / mirror c1t0d0s0 c2t1d0s0
dataset mypool/be1 auto /
dataset mypool/be1/usr auto /usr
dataset mypool/be1/opt auto /opt
dataset mypool/be1/var auto /var
dataset mypool/be1/export auto /export

# Note the (subtle) changed cluster name in the next sample.
# Also *all* the locales are loaded.  This will
# almost double the required install disk space requirement

install_type initial_install
cluster SUNWCXall
system_locale en_US.UTF-8
geo N_Africa
geo C_America
geo N_America
geo S_America
geo Asia
geo Ausi
geo C_Europe
geo E_Europe
geo N_Europe
geo S_Europe
geo W_Europe
geo M_East
filesys c1t0d0s1 auto swap
pool tanks free / mirror c1t0d0s0 c2t0d0s0
dataset tanks/be1 auto /
dataset tanks/be1/usr auto /usr
dataset tanks/be1/opt auto /opt
dataset tanks/be1/var auto /var
dataset tanks/be1/export auto /export

# With cluster SUNWCXall and no additional geo regions, you
# should be ready to reboot in 7 to 10 minutes

# reboot nicely:

init 6

----- end of story -----


Al Hopper  Logical Approach Inc, Plano, TX.  [EMAIL PROTECTED]
            Voice: 972.379.2133 Fax: 972.379.2134  Timezone: US CDT
OpenSolaris Governing Board (OGB) Member - Apr 2005 to Mar 2007
http://www.opensolaris.org/os/community/ogb/ogb_2005-2007/
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to