Skip to content

Instantly share code, notes, and snippets.

@limepanda
Created August 2, 2013 06:26
Show Gist options
  • Save limepanda/6137864 to your computer and use it in GitHub Desktop.
Save limepanda/6137864 to your computer and use it in GitHub Desktop.
PXEGRUB & OpenSolaris Legacy
PXEGRUB & OpenSolaris Legacy
OpenSolaris traditionally was netbooted using PXEGRUB. The procedure was to copy the boot framework from the OpenSolaris ISO to /tftpboot and symlink /tftpboot/I86PC.Solaris_11-XXX/grub/pxegrub to /tftpboot/nbp.SUNW.i86pc. The grub menu would be found in /tftboot/boot/grub/menu.lst.
Booting SmartOS using PXEGRUB is now obsolete. You certainly can do it if you wish, particularly for compatibility with existing deployments, but we strongly recommend using iPXE for all new deployments.
For those who insist on using GRUB, here is an example GRUB menu.lst:
default=0
timeout=5
title SmartOS Live 64-bit
kernel /smartos/20121004T212912Z/platform/i86pc/kernel/amd64/unix
module /smartos/20121004T212912Z/platform/i86pc/amd64/boot_archive
title Live 64-bit +kmdb
kernel /smartos/20121004T212912Z/platform/i86pc/kernel/amd64/unix -kd
module /smartos/20121004T212912Z/platform/i86pc/amd64/boot_archive
title Live 64-bit Serial (ttyb)
kernel /smartos/20121004T212912Z/platform/i86pc/kernel/amd64/unix -B console=ttyb,ttyb-mode="115200,8,n,1,-"
module /smartos/20121004T212912Z/platform/i86pc/amd64/boot_archive
title Live 64-bit Serial (ttyb) +kmdb
kernel /smartos/20121004T212912Z/platform/i86pc/kernel/amd64/unix -kd -B console=ttyb,ttyb-mode="115200,8,n,1,-"
module /smartos/20121004T212912Z/platform/i86pc/amd64/boot_archive
title Live 64-bit Serial (ttya)
kernel /smartos/20121004T212912Z/platform/i86pc/kernel/amd64/unix -B console=ttya,ttya-mode="115200,8,n,1,-"
module /smartos/20121004T212912Z/platform/i86pc/amd64/boot_archive
title Live 64-bit Serial (ttya) +kmdb
kernel /smartos/20121004T212912Z/platform/i86pc/kernel/amd64/unix -kd -B console=ttya,ttya-mode="115200,8,n,1,-"
module /smartos/20121004T212912Z/platform/i86pc/amd64/boot_archive
title Live 64-bit Rescue (no importing zpool)
kernel /smartos/20121004T212912Z/platform/i86pc/kernel/amd64/unix -B noimport=true
module /smartos/20121004T212912Z/platform/i86pc/amd64/boot_archive
Kernel Boot Options
Several parameters can and should be passed to the "unix" kernel. These would be comma-delimited following "-B", as seen in examples above.
smartos=: If set true and /usbkey/shadow is present, it will use the root password within /usbkey/shadow
root_shadow=: A root password hash as would be found in /etc/shadow. If present, and "smartos=" is not present, this will override the default platform password in /usbkey/shadow
hostname=: Set the hostname
noimport=true: Don't import the Zpool
standalone=true: Used only by Smart Data Center
headnode=true: Used only by Smart Data Center
Other options to know about are:
console=ttya,ttya-mode="115200,8,n,1,-": Console redirection to ttya (COM1)
console=ttyb,ttyb-mode="115200,8,n,1,-": Console redirection to ttyb (COM2)
console=text: Console is directed to local keyboard and monitoring. This is the default behavior.
-kd: Enable the Kernel Debugger (KMDB); this is typically only used for debugging drivers
-v: Verbose boot
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment