Migrating from adaptec 39320 to lsi u320-2

Bernard Buri berni at ask-us.at
Wed Jun 13 18:13:19 UTC 2007

Nico -telmich- Schottelius wrote:
> Hello guys!
> I replaced the 39320 in our dell sc1425 with a lsi logic u320-2.

I could not get any information. The controller in my server is actually 
branded as "ServeRaid". This is all a mess, but you seem to have found a 
controller anyway;

> Now I've the problem that the u320-2 seems to export the disks to the
> OS only if one creates logical disks. If I create a logical disk it
> seems to use some bytes at the end of the harddisk to store its metadata
> on the harddisk.
> The problem with that is, that the gmirror information is lost.

Is the fdisk partition ok ?
Meaning: Partitions do not exeed the logical disk size;

If you don't have fdisk partitions, I'd check the bsd label.

If you don't have a bsd label, check the volume size (diskinfo -v)

If there is any problem with that, you should take care.

> My question now:
> - Does anyone have experiences with the u320 and knows whether it's
>   possible to use the harddisk without adding metadata to the drive?
> - Or is it possible to tell gmirror to add the metadata twice / to
>   another location? Afaics the lsi uses 2856*512 Bytes at the end of
>   the disk for metadata. So if one could put the gmirror metadata
>   at end-((2856*512)+gmirror_length), it should also work
> And yes, I know that the u320-2 has hardware drive capabilities, but
> I wanted to stay with software raid, if possible, so it is no problem
> to exchange the controller later (no vendor/controller dependency makes
> life much easier).

You can resetup one the mirrored disks in a way that keeps you 
independent of hardware controllers in any way:

First initialize the disk with an fdisk partition covering the whole 
disk without the metadata section. When conntected via the new 
controller, this will happen with fdisk -I /dev/daX;

Next setup a gmirror and add the created partition:
gmirror label -v newvol /dev/da0s1
newfs /dev/mirror/newvol
mount /dev/mirror/newvol /mnt

Make sure you have sane access to the old volume on the second drive (no 
data is cut off at the end) and dump the filesystem to the new mirror:
cd /mnt
dump -0a -f - /dev/da1 | restore -rf -

Make sure your system operates ok with the new mirror.

To make it a real mirror again, fdisk -I the second drive and add the 
new partition to the mirror:
fdisk -I /dev/da1
gmirror insert newvol /dev/da1s1

The effect of this setup is, that you don't care what is on the disk 
after the end of your fdisk partition, because the kernel will first 
recognize the partition table in the mbr near the start of the disk. 
Then it will create /dev/da0s1 and /dev/da1s1, next the geom taste 
mechanism will recognize the metadata at the end of da0s1 and da1s1 and 
create the /dev/mirror/newvol device.

This setup can also be migrated to bigger disks, by leaving the size of 
the first fdisk partition the same and adding further partitions behind.

The same is of course possible with gpt partitions.

More information about the freebsd-scsi mailing list