[OpenIndiana-discuss] Include driver and rebuild ISO

Edward Ned Harvey (openindiana) openindiana at nedharvey.com
Fri Dec 21 14:57:27 UTC 2012


> From: Ram Chander [mailto:ramquick at gmail.com]
> 
> I have downloaded OI  ISO and want to include below driver and rebuild ISO.
> After extracting ISO, how do add this and rebuild ISO ?
> Any steps would be helpful. Thanks.

You don't need to rebuild ISO.  Here's what you do:

Before you begin, see below, the command that says "specific per-HBA"  The command I pasted is for a 3ware adapter (I can look up the model number if needed) and came from 9.5.4-Codeset-Complete.iso, and the specific command was posted on some discussion forum by a 3ware software developer, who said "I'm the only person who knows this, and we were just instructed to stop developing for opensolaris, so we won't be developing new installers moving forward, and you're going to need this command to use the driver..."

You really best look inside the opensolaris installation package for your driver.  They'll probably have a less manual way of installing it.  But the notes below might be useful for you anyway - Even if the specifics are not useful to you, at least the general concept will be useful.  So you can stop trying to figure out how to rebuild the ISO.   ;-)

Long story short:  Boot from the live CD.  In your live environment, install the driver.  Then launch the OS installer.  The driver should get automatically built into the boot loader for the OS, but if it doesn't, there's a command you can run in the live CD to force it.

These are my notes for the systems that I did this on:

Boot from the openindiana live CD.
You're going to be glad you do this, so you can use copy/paste below.  ;-)  
    Open a terminal, 
    sudo svcadm enable svc:/network/ssh:default

Now, you can sftp or ssh into the machine
    username:  jack
    password:  jack

Somehow, copy the "tw" file (which is the actual driver) to "jack's" home directory.

If necessary, (for example, if driver is downloaded inside an iso file, such as was the case for my 3ware HBA) here is how to mount an ISO:
sudo mkdir /mnt/cd
sudo mount -F hsfs file.iso /mnt/cd

Live CD environment, to get OS installed:
    Somehow, copy "tw" /kernel/drv/amd64/
        sudo cp /mnt/cd/packages/drivers/opensolaris/amd64/tw /kernel/drv/amd64/

The following command is going to be specific per-HBA.
    sudo add_drv -m "* 0666 root sys" -i '"pci13c1,1003" "pci13c1,1004" "pci13c1,1005" "pci13c1,1010"' -c scsi tw

Now you can install the OS.

I don't know how critical the timing is for the commands below, but they need to be done after the filesystem is created, and before everything is closed.  Or maybe they don't need to be done at all; I don't know.  But I *do* know this is what I did, and it works, and it's repeatable.  Timing may not be very critical, and these steps might actually be optional.

When the installer gets to about 30% or so, do this:
sudo cp /kernel/drv/amd64/tw /a/kernel/drv/amd64/

When it gets to around 75%, do this:
sudo rm /a/var/run/AdDrEm.lck
# (don't do this one)   sudo add_drv -b /a -m "* 0666 root sys" -i '"pci13c1,1003" "pci13c1,1004" "pci13c1,1005" "pci13c1,1010"' -c scsi tw
sudo bootadm update-archive -R /a

You should be long since completed with the above commands, before the installer reaches 90%

When the installer gives you the Reboot button...  Reboot.

Notice, it boots up but doesn't go through grub or anything.  Shutdown, halt, or go to the Shutdown menu and un-select "Skip boot menu on restart."   Or use "reboot -p" This will force the system to completely reset, and go through BIOS, and grub.

This should solidly confirm for you, that the system is able to load the necessary drivers during boot.




More information about the OpenIndiana-discuss mailing list