loading mvsas driver changes device order, prevents boot
I am running slackware64 14.0 with 2 hba/raid sas/sata cards based on Marvel chips. Actual cards are Highpoint Rocketraid 2740 (16x) and Highpoint Rocket 2720SGL (8x). I don't use hardware raid, I just use the available sata connections.
Slackware boots from a SSD which must be /dev/sda as specified in lilo. When I connect the SSD to a port and in BIOS select that drive to be the primary bootdevice slackware starts booting. But after loading the mvsas driver the drive letter order changes. ie. I see that suddenly another disk which is connected to the sas card becomes /dev/sda and Slackware suddenly cannot find the root device anymore.
I have found that when I connect the SSD to port 9 of the 2740 card the /dev/sda stays with the SSD even after loading the mvsas driver. Connecting the SSD on any other port on the card or on the motherboard leads to the renaming of the /dev/sda after loading the mvsas driver which will cause the boot to fail.
The question is :
Is there any way to force that the boot drive /dev/sda remains the same even after loading the mvsas driver?
I would prefer to connect the SSD to the mother board and boot from that port.
Can udev be used for this?
Maybe I could setup the SSD fixed as /dev/sdz and point lilo to /dev/sdz ? How would I do this?
For the data it is not important which drive denomination is used. I use zfs on Linux and LVM to put drives in pools and volume groups and both zfs and lvm find the member drives fine regardless of how they are connected.
Thanks for any help or suggestions.
Try that one!
I have used initrd for ext4 in the past, but am now running with the huge kernel where ext4 is already in.
I will try to make an initrd with cpio and see if that will load OK.
After that I can try with the dev-by-id and uuid names.
I'll backup the SSD to another one because this is risky stuff for me :)
I followed the instructions more or less and it seems to have worked OK :) super!
I created a standard initrd with ext4 just like the README.initrd says.
mkinitrd -c -k 3.2.29 -m ext4
which created the /boot/initrd.gz image.
I changed lilo.conf :
boot = /dev/sda
boot = /dev/disk/by-id/ata-Crucial_CT120M500SSD1_1308092BD91E
And a new boot section added to the lilo menu :
I also adapted my /etc/fstab :
By the way i did get some warnings on lilo :
|All times are GMT -5. The time now is 01:17 AM.|