29 November 2010

Host Info - Boot Parameters

Now entering the batter's box of the 'host info' series, boot parameters
of a running host.  Our lineup of hosts and "stats" are:
        HOSTS:          snorkle (sunhost), tux (linhost), beastie (bsdhost)
        PROMPT:         host [0]
        Solaris INFO:   Solaris 10, x86
        Linux INFO:     CentOS 5.4, x86
        FreeBSD INFO:   FreeBSD 8.1, x86
Leading the lineup, and recently traded to a new team, Solaris:
        snorkle [0] /usr/sbin/prtconf -vp | /usr/bin/egrep 'boot(args|-command|-device)'
                bootargs:  '-rmverbose'
                boot-command:  'boot'
                boot-device:  '/pci@1e,600000/ide@d/disk@0,0:a'
    Solaris gives the boot arguments, command, and device.

Up next is Linux:
        tux [0] /bin/cat /proc/cmdline
        ro root=LABEL=/1
    Linux only give up boot arguments and the root (boot) device, in
    this case, by volume label.

Followed by FreeBSD:
        beastie [0] /bin/kenv | /usr/bin/egrep '^(currdev|kernel_option|kernelname|loaddev|vfs.root.mountfrom)'
        currdev="disk1s1a:"
        kernel_options=""
        kernelname="/boot/kernel/kernel"
        loaddev="disk1s1a:"
        vfs.root.mountfrom="ufs:/dev/mirror/gm0s1a"
        vfs.root.mountfrom.options="rw,acls"
    FreeBSD's 'kenv' output from above breaks down to:
        currdev:        selected default boot device
        kernel_options: effectively, boot arguments
        kernelname:     kernel file to load
        loaddev:        actual loaded boot device
        vfs.root.mountfrom:     FreeBSD root device path and FS type
        vfs.root.mountfrom.options:     any FS options to pass
    Of note, 'currdev' and 'loaddev' use BIOS disk names (ex: disk1s1a)
    instead of those normally identified by FreeBSD, such as gm0s1a
    or da0s1a.  Also, in older versions of FreeBSD, 'kenv' resides at
    '/usr/bin/kenv' rather than '/bin/kenv'.

Up next, Windows Server, pt. 1.