Booting Nexenta from an LSI 3Ware 9750-8i

Added by Mike T. 11 months ago

Hi.

I'm trying out nexentastor. I'm new at the Solaris platform, but am quite experienced with Linux.

The machine I'm using to test nexenta uses an LSI 3Ware 9750-8i RAID card.

The problem is while I'm able to install nexenta into it. It goes into a cycle of endless reboots when I try to boot the resulting install. Booting into safemode is ok though. I did some research though before posting this forum. It seems that the kernel is not loading the tw driver at boot time (before loading the root fs).

From safemode boot, I mounted syspool/rootfs-nmu-000 to /mnt and found the tw driver at /usr/kernel/drv and /usr/kernel/drv/amd64/ folders. From what I've read, the tw driver should be at /kernel/drv and /kernel/drv/amd64/ folders in order for the kernel to load the driver at boot time. Is this correct? Taking a gamble, I copied the drivers to these folders and rebooted, but the machine still goes into a continuous reboot cycle.

My questions are:

  1. Is this particular RAID controller card supported in NexentaStor (for booting the OS)? And;
  2. If so, how?

Regards.

--- mike t.


Replies

RE: Booting Nexenta from an LSI 3Ware 9750-8i - Added by Mike T. 11 months ago

On the same box, I was able to install and boot from the raid card OpenIndiana with help from the instructions found here. This somewhat answers my first question above.

--- mike t.

[SOLVED] RE: Booting Nexenta from an LSI 3Ware 9750-8i - Added by Mike T. 11 months ago

The server the link points to seems to be down at the moment.

But the good news is I finally solved the problem. I'm posting below the steps I made for the benefit of the others that may be in a similar situation.

  1. Install Nexenta
  2. Upon completion of the install, reboot the machine and choose safe mode.
  3. It will ask fo a user. Type root. Then just press enter when asked fo a password.
  4. Import syspool: zpool import -f syspool
  5. Mount root to /mnt: mkdir /mnt ; mount -F zfs syspool/rootfs-nmu-000 /mnt
  6. Copy the 32-bit tw drivers to /kernel/drv: cp /mnt/usr/kernel/drv/tw /mnt/kernel/drv/
  7. Copy the 64-bit tw drivers to /kernel/drv/amd64: cp /mnt/usr/kernel/drv/amd64/tw /mnt/kernel/drv/amd64/
  8. Update the boot archive: bootadm update-archive -f -R /mnt
  9. Unmount /mnt: umount /mnt
  10. Export syspool: zpool export syspool
  11. Reboot with init 6

This worked for me. But your mileage may vary.

Regards.

--- mike t.