Tuesday, January 27, 2015

Solaris 11: Install Firefox 30 (latest version)


As you know Oracle Solaris 11 (11.1, 11.2) comes with Firefox 17 ESR and Mozilla 17 ESR, which is very good news. I have had no problems with this version until now when I upgrade our Oracle Database 12c to 12.1.0.2 and found out that I could no longer access the Enterprise Manager Database Express via the browser since you requireFirefox 24+.

Thankfully someone has compiled there our later version and placed them in mozilla contrib locations: http://download.cdn.mozilla.net/pub/mozilla.org/firefox/releases


  • Download latest version firefox-30.0.en-US.opensolaris-i386-pkg.bz2 (sparc version available and a tar version is also available)
  • Uncompress and install
    # bzip2 -d  firefox-30.0.en-US.opensolaris-i386-pkg.bz2
    # pkgadd -d firefox-30.0.en-US.opensolaris-i386-pkg
    • Firefox is now ready to run, but you need plugins. Copy your existing plugins from Solaris 11 install location. Note the new location
    # cd /usr/lib/firefox
    # find plugins -depth -print | cpio -pdm /opt/sfw/lib/firefox/browser
    # unzip fp_11.2.202.228_archive.zip
    # bzip2 -dc fp_11.2.202.228_archive/11_2r202_223_32bit/flash_player_11_2r202_228_solaris_x86.tar.bz2| tar xf -
    # cp flash_player_solaris_11_2_202_223_x86/libflashplayer.so /opt/sfw/lib/firefox/browser/plugins
    • That it away you go.
    # /opt/sfw/bin/firefox &

Solaris 11 Automated Installer quick setup guide in a zone


Setting up an Automated Install server with Solaris 11 is now very easy. Here is a quick guide.

  • Setup zone:
zonecfg -z aiserver 'create; set zonepath=/zones/aiserver'
  • Create system profile to speed install process up:
    • This allows you to setup hostname, server IP address, initial user, etc
# sysconfig create-profile -o sysconfig.xml
  • Install Zone with default manifest and using the system configuration create above:
    # zoneadm -z aiserver install -c /var/tmp/sysconfig.xml
    A ZFS file system has been created for this zone.
    Progress being logged to /var/log/zones/zoneadm.20120221T133021Z.aiserver.install
           Image: Preparing at /zones/aiserver/root.

    Install Log: /system/volatile/install.17908/install_log
    AI Manifest: /tmp/manifest.xml.yhaq9I
    SC Profile: /var/tmp/sysconfig.xml
        Zonename: aiserver
    Installation: Starting ...

                  Creating IPS image
                  Installing packages from:
                      solaris
                          origin:  http://pkg.oracle.com/solaris/support/
    DOWNLOAD                                  PKGS       FILES    XFER (MB)
    Completed                              167/167 32064/32064  175.8/175.8

    PHASE                                        ACTIONS
    Install Phase                            44313/44313

    PHASE                                          ITEMS
    Package State Update Phase                   167/167
    Image State Update Phase                         2/2
    Installation: Succeeded

            Note: Man pages can be obtained by installing pkg:/system/manual done.
            Done: Installation completed in 127.429 seconds
      Next Steps: Boot the zone, then log into the zone console (zlogin -C) to complete the configuration process.

    Log saved in non-global zone as /zones/aiserver/root/var/log/zones/zoneadm.20120221T133021Z.aiserver.install

    zoneadm -z aiserver boot
    zlogin -C -e\@ aiserver
  • Install auto-installer software in the zone
    # svcadm enable /network/dns/multicast
    # pkg list install/installadm
    pkg list: no packages matching 'install/installadm' installed
    # pkg install install/installadm
    # pkg list install/installadm
    NAME (PUBLISHER)                          &nbsVERSION                    IFO
    install/installadm                         0.5.11-0.175.0.0.0.2.1482  i--
  • Create the boot service.
    • No need to specify an ISO since the software will download an image.
# installadm create-service -n solarisx86
Creating service from: pkg:/install-image/solaris-auto-install
OK to use default image path: /export/auto_install/solarisx86? [y/N]: y
Download: install-image/solaris-auto-install ...  Done
Install Phase ...  Done
Package State Update Phase ...  Done
Image State Update Phase ...  Done
Reading Existing Index ...  Done
Indexing Packages ...  Done

Creating service: solarisx86

Image path: /export/auto_install/solarisx86

Refreshing install services

Creating default-i386 alias.

No local DHCP configuration found. This service is the default
alias for all PXE clients. If not already in place, the following should
be added to the DHCP configuration:
        Boot server IP       : 193.xx.xx.xx
        Boot file            : default-i386/boot/grub/pxegrub

Refreshing install services

# ls -l /etc/netboot
total 6
drwxr-xr-x 19 root root 28 Feb 21 15:42 default-i386
drwxr-xr-x 19 root root 28 Feb 21 15:42 solarisx86
  • You are ready to boot PXE client towards this server

Solaris 11: Setting up Sendmail / SASL to handle SMTP AUTH


I thought I would finally get SMTP AUTH working on my Solaris 11 servers, so that I could then setup my phone to send e-mail correctly. Solaris 11 can't do it with the standard software.

Build Cyrus SASL

  • Install the packages which we requite and download Cyrus SASL Library
    # sudo pkg install pkg:/developer/build/make system/header developer/gcc-3 text/gnu-grep database/berkeleydb-5

    # echo $PATH
    /usr/sbin:/usr/bin
    # export PATH=$PATH:/usr/gnu/bin:/usr/sfw/bin

  • At this time it will not compile, so alter the following lines.
    # gzip -dc cyrus-sasl-2.1.25 | tar xf -
    # cd cyrus-sasl-2.1.25

    # vi ./lib/saslutil.c ./plugins/kerberos4.c ./plugins/digestmd5.c utils/Makefile.am
    ./lib/saslutil.c
    85c85
    extern int gethostname(char *, int);
    change to:
    extern int gethostname(char *, unsigned int);

    ./plugins/kerberos4.c
    113c113
    extern int gethostname(char *, int);
    change to:
    extern int gethostname(char *, unsigned int);

    ./plugins/digestmd5.c
    106c106
    extern int gethostname(char *, int);
    change to:
    extern int gethostname(char *, unsigned int);

    ./utils/Makefile.am
    59a60,62
    add the following lines:
    saslpasswd2_LDFLAGS = -rpath $(libdir)
    dbconverter_2_LDFLAGS = -rpath $(libdir)
    pluginviewer_LDFLAGS = -rpath $(libdir)

  • Now we are ready for building.
    # ./configure --enable-cram --enable-digest --enable-plain \
              --enable-login --disable-krb4 --disable-anon \
              --disable-gssapi --with-saslauthd=/var/run/saslauthd
    # make
    # sudo make install

  • Add the following links:
    # sudo ln -s /usr/local/lib/sasl2 /usr/lib/sasl2
    # sudo ln -s /usr/local/lib/libsasl2.so.2.0.25 /usr/lib/libsasl2.so.2

Build Sendmail

  • Stop existing sendmail processes.
    # sudo svcadm disable svc:/network/smtp:sendmail
    # sudo svcadm disable svc:/network/sendmail-client:default

    # gzip -dc sendmail.8.14.5.tar.gz | tar xf -
    # cd sendmail-8.14.5

  • Set up sendmail FEATURES (SSL, SASL, DB)
    # cat > devtools/Site/site.config.m4
    dnl ### Changes to disable the default NIS support
    APPENDDEF(`confENVDEF', `-UNIS')

    dnl ### Changes for STARTTLS support
    APPENDDEF(`confENVDEF',`-DSTARTTLS')
    APPENDDEF(`confLIBS', `-lssl -lcrypto')
    APPENDDEF(`confLIBDIRS', `-L/usr/local/lib -L/usr/lib -R/usr/lib')
    APPENDDEF(`confINCDIRS', `-I/usr/include/openssl')

    dnl ### SASL support
    APPENDDEF(`confENVDEF', `-DSASL=2')
    APPENDDEF(`conf_sendmail_LIBS', `-lsasl2')
    APPENDDEF(`confINCDIRS', `-I/usr/local/sasl -I/usr/include')

    dnl ### Berkley DB support
    APPENDDEF(`confENVDEF', `-DNEWDB')
    APPENDDEF(`confINCDIRS', `-I/usr/include')
    APPENDDEF(`confLIBDIRS', `-L/usr/lib')

    dnl ### TCP Wrapper
    APPENDDEF(`confENVDEF', `-DTCPWRAPPERS')
    APPENDDEF(`conf_sendmail_LIBS', `-lwrap')
    EOF
    #

  • Build Sendmail
    # ./Build -c
    /* It should build but ignore the gtroff:error at the end */

    # sudo mv /usr/lib/sendmail /usr/lib/sendmail_orig
    # sudo cp obj.SunOS.5.11.i86pc/sendmail/sendmail /usr/lib/sendmail
    # sudo sudo chgrp smmsp /usr/lib/sendmail
    # sudo sudo chmod g+s,u-ws /usr/lib/sendmail

  • Now a Vendor and SASL support to sendmail.cf file (I hope you know what you are doing here)
  • Edit sendmil.mc add add the extra lines:
    define(`VENDOR_NAME', `Berkeley')
    define(`confAUTH_OPTIONS', `A')dnl
    TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
    define(`confAUTH_MECHANISMS', `DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

    # cd /etc/mail/cf/cf
    # cat sendmail.mc
    divert(0)dnl
    VERSIONID(`sendmail.mc (Sun)')
    define(`VENDOR_NAME', `Berkeley')
    OSTYPE(`solaris11')dnl
    DOMAIN(`solaris-generic')dnl
    define(`confAUTH_OPTIONS', `A')dnl
    TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
    define(`confAUTH_MECHANISMS', `DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl define(`confFALLBACK_SMARTHOST', `mailhost$?m.$m$.')dnl
    MAILER(`local')dnl
    MAILER(`smtp')dnl

    LOCAL_NET_CONFIG
    R$* < @ $* .$m. > $* $#esmtp $@ $2.$m $: $1 < @ $2.$m. > $3
    #
    # sudo make sendmail.cf
    # sudo cp sendmail.cf ../../sendmail.cf

    # sudo /usr/lib/sendmail -bt -d0 < /dev/null
    Version 8.14.5
    Compiled with: DNSMAP LOG MAP_REGEX MATCHGECOS MILTER MIME7TO8 MIME8TO7
        NAMED_BIND NDBM NETINET NETINET6 NETUNIX NEWDB PIPELINING
        SASLv2 SCANF STARTTLS TCPWRAPPERS USERDB XDEBUG

Setup sasl authentication server

  • Now lets set up SASL plugin via a Sendmail.conf
    # sudo cat > /usr/local/lib/sasl2/Sendmail.conf
    pwcheck_method: saslauthd
    EOF
    #

  • For authentication to work the saslauthd has to be started, so you can start in as a one off process (good for debugging) and at boot time.
    # sudo /usr/local/sbin/saslauthd -n 1 -V -d -a pam
    saslauthd[398] :main : num_procs : 1
    saslauthd[398] :main : mech_option: NULL
    saslauthd[398] :main : run_path : /var/run/saslauthd
    saslauthd[398] :main : auth_mech : pam
    saslauthd[398] :ipc_init : using accept lock file: /var/run/saslauthd/mux.accept
    saslauthd[398] :detach_tty : master pid is: 0
    saslauthd[398] :ipc_init : listening on socket: /var/run/saslauthd/mux
    saslauthd[398] :main : using process model
    saslauthd[398] :get_accept_lock : acquired accept lock

  • To set it up ant boot time we should set up a services, but for now we will stick to init.d files.
    cat > /etc/init.d/saslauthd
    #!/usr/sbin/sh
    #
    NAME=saslauthd
    DAEMON="/usr/local/sbin/${NAME}"
    DESC="SASL Authentication Daemon"

    # -a Selects the authentication mechanism to use.
    # -n Number of worker processes to create.
    # -V Enable verbose logging
    # -d Debugging (don't detach from tty, implies -V)

    case "$1" in
    'start')
    ${DAEMON} -n 1 -V -d -a pam
    ;;

    'stop')
    pgrep saslauthd
    ;;

    *)
    echo "Usage: $0 { start | stop }"
    exit 1
    ;;
    esac
    EOF
    #
    # sudo ln init.d/saslauthd rc0.d/K38saslauthd
    # sudo ln init.d/saslauthd rc1.d/K38saslauthd
    # sudo ln init.d/saslauthd rc2.d/S82saslauthd
    # sudo ln init.d/saslauthd rcS.d/K38saslauthd

  • Time for some testing, via first the SASL daemon.
    # cyrus-sasl-2.1.25/saslauthd/testsaslauthd -u RealUser -p MyPassword
    0: OK "Success."

  • We need the encrypted username and password to test sendmail:
    # perl -MMIME::Base64 -e 'print encode_base64("\000MyUser\000MyPassword")'
    AE15VXNlcgBNeVBhc3N3b3Jk

  • Test the sendmail part:
    # sudo /usr/lib/sendmail -bv  -O LogLevel=14 -bs -Am
    220 mailer5.dcs.bbk.ac.uk ESMTP Sendmail 8.14.5/8.14.5; Tue, 31 Jan 2012 09:52:24 GMT
    EHLO localhost
    250-mailer5.dcs.bbk.ac.uk Hello root@localhost, pleased to meet you
    250-ENHANCEDSTATUSCODES
    250-PIPELINING
    250-EXPN
    250-VERB
    250-8BITMIME
    250-SIZE
    250-DSN
    250-ETRN
    250-AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN
    250-DELIVERBY
    250 HELP
    AUTH PLAIN AE15VXNlcgBNeVBhc3N3b3Jk
    235 2.0.0 OK Authenticated
    quit
    221 2.0.0 mailer5.dcs.bbk.ac.uk closing connection

  • That is it.

Identify Sun Fibre Channel (FC) HBA


Assuming there is not a mixture of SUN and NON-SUN FC HBAs in server, (ie. all HBAs from same vendor) if one of the HBAs is down looking at other HBAs in server will tell us if HBAs in server are SUN Branded or not.
These steps only apply to:
  • Fibre channel (FC-AL and Point-to-Point) HBAs Cards:  – Single or Dual port FC only ports
  • Ethernet/IP and FC HBA Combo Cards:    – 2 Ethernet ports and 2 FC ports
  • CEE/FCoE CNAs (Converged Network Adapters) Cards:  – 2 FCoE ports (Fibre Channel over Ethernet)
Using fcinfo Command:
For Solaris 10 U1 or above  – 
Command:   fcinfo hba-port
For Solaris 8 & 9 or Solaris 10 before U1 or if fcinfo command does not work for some reason go to "prtpicl" Command  and check "Model:" field in conjunction with "Manufacturer:" field.
LPxxxxxx-S are SUN Emulex HBA Cards  (ie has a "-S" for Sun at end).
LPxxxxxx-E are usually NON-SUN HBAs resold by EMC.
LPxxxxxx-H are usually NON-SUN HBAs resold by Hitachi.
375-xxxx-xx are SUN Qlogic HBA Cards.

 
  • QLAxxxx may or may not be SUN Qlogic HBA Cards so you would need to use "prtpicl Command:"  to determine.
  • Model: 2200 with Manufacturer: QLogic Corp is a old SUN Fibre Channel Arbitrated Loop (FC-AL) HBA Cards.
  • Legacy discontinued JNI FC HBAs with jfca Driver are SUN HBA cards but other JNI cards may also be listed and would require SUN SAN engineer analysis of explorer output to determine if it SUN branded or not.
 Example:
# fcinfo hba-port
HBA Port WWN: 2300080020fb288d
OS Device Name: /dev/cfg/c1
Manufacturer: QLogic Corp.
Model: 2200
Firmware Version: 2.01.145
FCode/BIOS Version: ISP2200 FC-AL Host Adapter Driver: 1.14 01/11/20
Serial Number: not available
Driver Name: qlc
Driver Version: 20090415-2.30
Type: L-port
State: online
Supported Speeds: 1Gb
Current Speed: 1Gb
Node WWN: 2200080020fb288d
HBA Port WWN: 10000000c94a30f8
OS Device Name: /dev/cfg/c5
Manufacturer: Emulex
Model: LP10000DC-S
Firmware Version: 1.92a1 (T2D1.92A1)
FCode/BIOS Version: Boot:5.01a4 Fcode:1.50a4
Serial Number: BG52130223
Driver Name: emlxs
Driver Version: 2.31t (2009.04.05.14.10)
Type: N-port
State: online
Supported Speeds: 1Gb 2Gb
Current Speed: 2Gb
Node WWN: 20000000c94a30f8
HBA Port WWN: 10000000c94a30f9
OS Device Name: /dev/cfg/c6
Manufacturer: Emulex
Model: LP10000DC-S
Firmware Version: 1.92a1 (T2D1.92A1)
FCode/BIOS Version: Boot:5.01a4 Fcode:1.50a4
Serial Number: BG52130223
Driver Name: emlxs
Driver Version: 2.31t (2009.04.05.14.10)
Type: N-port
State: online
Supported Speeds: 1Gb 2Gb
Current Speed: 2Gb
Node WWN: 20000000c94a30f9
HBA Port WWN: 210100e08b263e96
OS Device Name: /dev/cfg/c3
Manufacturer: QLogic Corp.
Model: 375-3030-xx
Firmware Version: 2.01.145
FCode/BIOS Version:  fcode: 1.13;
Serial Number: not available
Driver Name: qlc
Driver Version: 20090415-2.30
Type: L-port
State: online
Supported Speeds: 1Gb
Current Speed: 1Gb
Node WWN: 200100e08b263e96
HBA Port WWN: 210000e08b063e96
OS Device Name: /dev/cfg/c4
Manufacturer: QLogic Corp.
Model: 375-3030-xx
Firmware Version: 2.01.145
FCode/BIOS Version:  fcode: 1.13;
Serial Number: not available
Driver Name: qlc
Driver Version: 20090415-2.30
Type: unknown
State: offline
Supported Speeds: 1Gb
Current Speed: not established
Node WWN: 200000e08b063e96
#
Using prtpicl Command:
If prtpicl command not available or does not work for some reason then go to "prtdiag Command:".
Sample Command:  prtpicl -v | egrep "devfs-path|driver-name|subsystem-id" | nawk '/:subsystem-id/ { print $0; getline; print $0; getline; print $0; }' | nawk -F: '{ print $2 }'
Note: Make sure entire command string is entered correctly
Example:
# prtpicl -v | egrep "devfs-path|driver-name|subsystem-id" | nawk '/:subsystem-id/ { print $0; getline; print $0; getline; print $0; }' | nawk -F: '{ print $2 }'
subsystem-id 0x8
devfs-path /pci@1f,4000/TSI,gfxp@4
driver-name gfxp
subsystem-id 0x10a
devfs-path /pci@4,4000/SUNW,qlc@3
driver-name qlc
subsystem-id 0x10a
devfs-path /pci@4,4000/SUNW,qlc@3,1
driver-name qlc
subsystem-id 0xffff
devfs-path /pci@6,4000/pci@3/scsi@4
driver-name qus
subsystem-id 0xffff
devfs-path /pci@6,4000/pci@3/scsi@5
driver-name qus
subsystem-id 0x4083
devfs-path /pci@6,2000/pci@1/SUNW,qlc@4
driver-name qlc
subsystem-id 0x4083
devfs-path /pci@6,2000/pci@1/SUNW,qlc@5
driver-name qlc
#
This list will include FC HBAs, as well as, other components.  Check table below under SSID column.
NOTE: If WinDriver (unsupported NON-SUN driver development tool) is installed it can alter HBA card info by a  prepending a digit "8" to SSID and changing fcode driver strings which alter the device path to QLGC,qlc. This WinDrivers has also can cause servers to panic and reboot.
Search /var/adm/messages for following strings to determine if WinDriver is installed:

windrvr6
Jungo
WinDriver
WDsolarisAttach
Example:
SUN Qlogic HBA
subsystem-id     0x143
devfs-path       /pci@0/pci@0/pci@8/pci@0/pci@8/SUNW,qlc@0
driver-name      qlc
binding-name     pciex1077,143
changed to
subsystem-id     0x8143
devfs-path       /pci@0/pci@0/pci@8/pci@0/pci@8/QLGC,qlc@0
binding-name     QLGC,qlc
Not supported by SUN or Qlogic.  Do not know effect on Emulex HBAs.
NOTE: Keep in mind that the table may not have been updated yet with any recently release (ie. new) FC HBAs and CNAs Cards. SUN SAN support may need to be engaged to determine if new FC HBAs are SUN branded or not.
- First look at devices that use SUN Qlogic HBA Driver "qlc" and/or SUN Emulex HBA Driver "emlxs" to see if their subsystem-id matches any in table.
- If no matches are found then there are no SUN FC HBAs (see NOTE above) in server therefore any FC HBAs in server are NON-SUN HBA Cards.
- Then check for reference to "fibre-channel" in the device path. It typically means that it is a NON-SUN HBA Cards with no Fcode installed. One exception to this is the SUN-Emulex jumper problem.
- If you see any of the following references they are NON-SUN HBA Cards:
NON-SUN Qlogic:
  • qlaxxxx
  • QLGC,qla
  • QLGC,qlc
  • SUNW,qla
NON-SUN Emulex:
  • emlx (emlxs is SUN)
  • lpfc
- These may or may not be SUN HBA Cards:
  • fibre-channel
  • JNI
Using prtdiag Command:
For SPARC (not x86) server/Solaris only. If x86 server or none of these commands provide conclusive data on hba then provide Explorer output per instruction at beginning of this document to support engineer for analysis.
Command:  prtdiag -v 
Then go to "IO Cards" or "IO Devices" section of output.  You may be able to see model and/or subsystem-id of hbas then check table for any matches.
Examples:
========================= IO Cards =========================
Bus  Max   IO   Port Bus       Freq Bus  Dev,Brd  Type  ID  Side Slot MHz  Freq Func State Name                              Model
—- —- —- —- —- —- —- —- —– ——————————–  ———————-
I/O   PCI   8    B    4    33   33  1,0  ok    pci-pci1011,26.5/SUNW,qlc (scsi-+ PCI-BRIDGE
I/O   PCI   8    B    4    33   33  4,0  ok    SUNW,qlc-pci1077,2200.1077.4083.+ device on pci-bridge
I/O   PCI   8    A    1    66   66  1,0  ok    SUNW,emlxs-pci10df,fc00/fp (fp)   LP10000DC-S
I/O   PCI   8    A    1    66   66  1,1  ok    SUNW,emlxs-pci10df,fc00/fp (fp)   LP10000DC-S

 
Note: the qlogic HBA shows the subsystem-id (4083, using the above example).
LPxxxxxx-E are usually NON-SUN HBAs resold by EMC.
LPxxxxxx-H are usually NON-SUN HBAs resold by Hitachi.

 
Below is the HBA Reference table from official Sun support site:
PART#ChipsetFRUModelSSIDBUSxGb
Emulex HBAs
SG-XPCI1FC-EM2Thor375-3304LP10000-Sfc00PCI-X1Gb
SG-XPCI2FC-EM2Thor375-3305LP10000DC-Sfc00PCI-X2Gb
SG-XPCI1FC-EM4-ZHelios375-3398LP11000-Sfc11PCI-X4GB
SG-XPCI2FC-EM4-ZHelios375-3399LP11002-Sfc12PCI-X4GB
SG-XPCIE1FC-EM4Zephyr375-3396LPe11000-Sfc21PCI-E4GB
SG-XPCIE2FC-EM4Zephyr375-3397LPe11002-Sfc22PCI-E4GB
SG-XPCIE2FC-EB4-ZZephyr375-3386LPem11002-Sfc2ePCI-E4GB
SG-XPCIE20FC-NEM-ZZephyr375-3385LPe11020-Sfc2aPCI-E4GB
SG-XPCIE2FC-ATCA-Znot listed371-3264LPeA11002-Sfc2dPCI-E4GB
SG-XPCIE2FCGBE-E-Znot listed371-4018LPem11002E-Sfc23PCI-E4GB
SG-XPCIE1FC-EM8-ZSaturn371-4295LPe12000-Sfc41PCI-E8Gb
SG-XPCIE2FC-EM8-ZSaturn371-4306LPe12002-Sfc42PCI-E8Gb
SG-XPCIEFCGBE-E8-Znot listed371-4666LPem12002E-Se402PCI-E8Gb
              
Qlogic HBAs
x6799ISP-2200A375-3019ISP22004082PCI1Gb
x6727ISP-2200A375-3030ISP22004083PCI1GB
x6748ISP-2200A375-0118ISP22004084cPCI1GB
x6757ISP-2200A375-3048ISP22004085Sbus1GB
SG-XPCI1FC-QF2ISP2310375-3102ISP2300106PCI-X2Gb
SG-XPCI1FC-QL2ISP2312375-3383ISP2312149PCI-X2Gb
SG-XPCI2FC-QF2ISP2312375-3108ISP231210aPCI-X2Gb
SG-XPCI2FC-QF2-ZISP2312375-3363ISP231210aPCI-X2GB
SG-XPCI1FC-QLCnot listed375-3253SP212132PCI-X2GB
SG-XPCI1FC-QLC-Znot listed375-3364SP212132PCI-X2GB
SG-XPCI1FC-QF4ISP2422375-3354QLA2460140PCI-X4GB
SG-XPCI2FC-QF4ISP2422375-3294QLA2462141PCI-X4GB
SG-XPCIE1FC-QF4ISP2432375-3355QLE2460142PCI-E4Gb
SG-XPCIE2FC-QF4ISP2432375-3356QLE2462143PCI-E4Gb
SG-XPCIE2FC-QB4-ZISP2432375-3384QEM246213dPCI-E4Gb
SG-XPCIE2FCGBE-Q-Znot listed371-4017QEM347214bPCI-E4Gb
SG-XPCIE1FC-QF8-ZISP2532371-4324QLE2560170PCI-E8GB
SG-XPCIE2FC-QF8-ZISP2532371-4325QLE2562171PCI-E8GB
SG-XPCIEFCGBE-Q8-Znot listed371-4522QEM3572172PCI-E8GB
              
JNI HBAs
SG-XPCI1FC-JF2not listed375-3156FCX-6562-L656cPCI-X2Gb
SG-XPCI2FC-JF2not listed375-3157FCX2-6562-L656bPCI-X2Gb
              
FCoE CNAs
SG-XPCIEFCOE2-Q-SRISP8112375-3681ISP8112183-qlc 184-qlgePCIe10Gb
SG-XPCIEFCOE2-Q-TAISP8112375-3682ISP811218b-qlc 18c-qlgePCIe10Gb
SG-XEMFCOE2-Q-SRnot listed375-3684QEM815220d-qlc 20e-qlgePCIe10Gb
SG-XEMFCOE2-Q-TAnot listed375-3685QEM815220d-qlc 20e-qlgePCIe10Gb
Note:
  • Boot from SAN will not work on SPARC.  This is because FCode will not be recognized    on SPARC systems.  The device path will say "fibre-channel" instead of "SUNW,emlxs."
  • The Solaris Leadville driver will not check the HBA firmware and update it if there    is a mis-match between what is on the board and what is in the driver.   However,    firmware can be updated manually.