How to config UNRAID SMARTCTL for use with my 3ware 9650SE


Recommended Posts

I am not sure how to fix this - but am open to suggestions ...

 

myMain fundamentally requires that the serial number of a disk be returned from some specific commands.  The serial number must be unique.  (It actually relies on the last 4 digits being unique, but there is a way to extend that if needed).

 

The problem is that your controller is not returning serial number data at all ...

 

unRAID, via the "mdcmd status" command, is reporting this ....

 

diskNumber.1=1

diskName.1=md1

diskSize.1=1953114080

diskState.1=7

diskModel.1=<no model>

diskSerial.1=<no serial_no>

diskId.1=<no_model>_<no_serial_no>

rdevNumber.1=1

rdevStatus.1=DISK_OK

rdevName.1=sda

rdevSize.1=1953114080

rdevModel.1=<no model>

rdevSerial.1=<no serial_no>

rdevId.1=<no_model>_<no_serial_no>

rdevNumErrors.1=0

rdevLastIO.1=0

rdevSpinupGroup.1=28

diskNumber.2=2

 

I have never seen this before.  It should be reporting "5XW138R8" (based on your smart report).

 

myMain is pulling the last 4 characters of the "<no serial_no>" string and thinks that the drive is identified by "_no>".  Hence you see that on the myMain screen.

 

And every single drive is identified by exactly the same string, hence unRAID has no way to distinguish them.

 

For the non-array disks, myMain uses the "ls -l /dev/disk/by-id" command to get the serial number.  Here is a sample of what Linux is returning ...

 

lrwxrwxrwx 1 root root  9 Apr  7 23:06 scsi-3600050e087c59b00d82b0000eb3d0000 -> ../../sda

 

myMain is pulling the last 4 digits from that and thinks that is a unique serial number.  Same problem - every one ends in 4 zeros.

 

unRaid 5.0b6a is now also relying on these serial numbers to make slot assignments to the array, so unless your controller is better supported there, I do not think unRAID 5.0 is going to run with your controller.

 

As I said, I am not sure how to fix this - but am open to suggestions ...

Link to comment

I am not sure how to fix this - but am open to suggestions ...

 

myMain fundamentally requires that the serial number of a disk be returned from some specific commands.  The serial number must be unique.  (It actually relies on the last 4 digits being unique, but there is a way to extend that if needed).

 

The problem is that your controller is not returning serial number data at all ...

 

unRAID, via the "mdcmd status" command, is reporting this ....

 

diskNumber.1=1

diskName.1=md1

diskSize.1=1953114080

diskState.1=7

diskModel.1=<no model>

diskSerial.1=<no serial_no>

diskId.1=<no_model>_<no_serial_no>

rdevNumber.1=1

rdevStatus.1=DISK_OK

rdevName.1=sda

rdevSize.1=1953114080

rdevModel.1=<no model>

rdevSerial.1=<no serial_no>

rdevId.1=<no_model>_<no_serial_no>

rdevNumErrors.1=0

rdevLastIO.1=0

rdevSpinupGroup.1=28

diskNumber.2=2

 

I have never seen this before.  It should be reporting "5XW138R8" (based on your smart report).

 

myMain is pulling the last 4 characters of the "<no serial_no>" string and thinks that the drive is identified by "_no>".  Hence you see that on the myMain screen.

 

And every single drive is identified by exactly the same string, hence unRAID has no way to distinguish them.

 

For the non-array disks, myMain uses the "ls -l /dev/disk/by-id" command to get the serial number.  Here is a sample of what Linux is returning ...

 

lrwxrwxrwx 1 root root  9 Apr  7 23:06 scsi-3600050e087c59b00d82b0000eb3d0000 -> ../../sda

 

myMain is pulling the last 4 digits from that and thinks that is a unique serial number.  Same problem - every one ends in 4 zeros.

 

unRaid 5.0b6a is now also relying on these serial numbers to make slot assignments to the array, so unless your controller is better supported there, I do not think unRAID 5.0 is going to run with your controller.

 

As I said, I am not sure how to fix this - but am open to suggestions ...

 

Now we are getting somewhere!

 

I found this link that should help here:

 

https://wiki.xkyle.com/3ware_Smart_Test

 

 

Link to comment

So here is how I can get the serial number of the drive "sda":

 

smartctl -i -d 3ware,0 /dev/twa0 | grep "Serial Number" | head -n 1 | awk '{print $3}'

 

Output:

5XW138R8

 

For drive "sdb" I would change 3ware,0 to 3ware,1 and...

 

Output:

5XW17LVM

 

 

Can this help us to get a step closer?

Link to comment

How would you know that sda is 3ware,0?  Maybe the flash drive is sda on the next boot.  Do you have motherboard or other controllers?  This would impact the device assignments as well.

 

What version of unRAID are you running?  If 4.7, it is possible that the 5.0b6a might have an updated driver and support this controller better.  You might run some experiments to see if unRAID can recognize the serial numbers with 6.0a.  I'd recommend creating a new flash to boot 6.0a.  You should be able to assign a couple of disks and run the two commands I gave you.  DO NOT START THE ARRAY, at least not until we know the controller is working better.

 

If not, you might want to send Tom an email requesting support for this controller.  It is more expensive than most, but it supports more drives, right?  I looked on the website and it looked like there were 3 SAS ports = 12 drives.  Is that correct, or are their more?  Anyway, Tom may be willing to install an updated driver that may allow this controller to be better recognized.

 

Sorry not better news. :(

Link to comment

I am installing 5.0b6a (had done that before) and will run the commands again.

 

I have the 3ware 9650se-m8-24 it is a 24 port version, with cache, and battery backup unit....and indeed rather expensive...would hate it to be a wasted investment.

 

With regards to your remark on drive letters changing...I have not seen that happen at all?

Link to comment

Try unzipping this file into your unmenu directory.  Make sure to keep a copy of the prior version.

 

What is does, is if the serial number ends with four zeros ("0000"), it strips the zeros.  It seems that if you remove the zeros, the last 4 characters are then unique.  I am not sure if they persist across boots, however.  You'll have to try it and see.

 

This file will not become part of the normal base, so if this works you may need to reapply this going forward.  It's not a great solution becuase the string is really NOT your serial number.  That has implications if you move the drive to another controller.  (Like I said above, it may not ever stay across boots).

 

CUSTOM unmenu.bat.lib.awk

 

Link to comment

Try unzipping this file into your unmenu directory.  Make sure to keep a copy of the prior version.

 

What is does, is if the serial number ends with four zeros ("0000"), it strips the zeros.  It seems that if you remove the zeros, the last 4 characters are then unique.  I am not sure if they persist across boots, however.  You'll have to try it and see.

 

This file will not become part of the normal base, so if this works you may need to reapply this going forward.  It's not a great solution becuase the string is really NOT your serial number.  That has implications if you move the drive to another controller.  (Like I said above, it may not ever stay across boots).

 

CUSTOM unmenu.bat.lib.awk

 

 

Thanks BJP999 - Attache dis what I see now. How about the suggestion I made above, would that not work easier:

 

So here is how I can get the serial number of the drive "sda":

 

smartctl -i -d 3ware,0 /dev/twa0 | grep "Serial Number" | head -n 1 | awk '{print $3}'

 

Output:

5XW138R8

 

For drive "sdb" I would change 3ware,0 to 3ware,1 and...

 

Output:

5XW17LVM

Tower_unRAID_Server.jpg.943a70f2dc754f9f73d75b1e11aa17e4.jpg

Link to comment

Try unzipping this file into your unmenu directory.  Make sure to keep a copy of the prior version.

 

What is does, is if the serial number ends with four zeros ("0000"), it strips the zeros.  It seems that if you remove the zeros, the last 4 characters are then unique.  I am not sure if they persist across boots, however.  You'll have to try it and see.

 

This file will not become part of the normal base, so if this works you may need to reapply this going forward.  It's not a great solution becuase the string is really NOT your serial number.  That has implications if you move the drive to another controller.  (Like I said above, it may not ever stay across boots).

 

CUSTOM unmenu.bat.lib.awk

 

 

Thanks BJP999 - Attache dis what I see now. How about the suggestion I made above, would that not work easier:

 

So here is how I can get the serial number of the drive "sda":

 

smartctl -i -d 3ware,0 /dev/twa0 | grep "Serial Number" | head -n 1 | awk '{print $3}'

 

Output:

5XW138R8

 

For drive "sdb" I would change 3ware,0 to 3ware,1 and...

 

Output:

5XW17LVM

 

How about inside myMain?  Were you able to see different "IDs" in the ID column.  Does clicking on one of the IDs, and entering the "smartopt" now work and return a smart report?

 

unRAID works through a series of gyrations to get all of the various pieces of data associated with a disk.  The two pieces of key data are the serial number and the device (e.g. sdc), which are equated by the unmenu / myMain logic.

 

Although I understand that you have a smartctl command that will return your serial number, it is not connected to either piece of data.  It is sort of like a puzzle piece that doesn't connect to the puzzle.

 

If we can get you able to get a unique "serial number", based on what the driver is communicating to the OS as the serial number, that is about as far as I'm able to help.  I think with this change we should be there or very close.  I get a similar looking "serial number" from my ARC-1200 for a RAID-0 parity drive.  It works fine as a serial number, even though it really isn't.

Link to comment

This looks like what I was expecting.  Did you go back and do the smartopt setting (see your own posts earlier in this thread for some screenshots).  Now that each drive has a unique "ID", the settings will stick and the smart report should work.

 

It appears that your drives are a funky size.  May be indicative of an HPA.  Go to the "Detail View" and take a screen shot (or else just look in the column labeled "Size (k)" and tell me the number there).  But this is not hurting anything.  And there is a way to turn off the warning if this is a byproduct of the controller.

Link to comment

This looks like what I was expecting.  Did you go back and do the smartopt setting (see your own posts earlier in this thread for some screenshots).  Now that each drive has a unique "ID", the settings will stick and the smart report should work.

 

It appears that your drives are a funky size.  May be indicative of an HPA.  Go to the "Detail View" and take a screen shot (or else just look in the column labeled "Size (k)" and tell me the number there).  But this is not hurting anything.  And there is a way to turn off the warning if this is a byproduct of the controller.

 

I forgot to add one screenshot (below) - I did the add of the smartopt - but as you can see it seems like it get's confused by the spaces used (translates them as %20%)

 

myMain_-_Disk__eb3d__Configuration.jpg.de03554092742278ce8a9717ea7cb11c.jpg

Tower_unRAID_Server-1.jpg.fc1e420404b96d87351fe13927d91df7.jpg

Link to comment

This issue was fixed in the attachment linked in THIS post.  I have removed the file from my file sharing account.  If you still have this file, please unzip both the 99-unmenu-utility.awk and drivedb.lib.awk files.  Do not overwrite the unmenu.base.lib.awk file, as I sent you a newer version.

 

If you no longer have this zip file, let me know and I will repost it.

Link to comment

Sorry for that late reply....This seems to work now - though still no integration of the parameters.....this is the max I seem to be able to achieve with my 3ware controller....

 

Glad that it is working now.  There is no way to reliably convert an "sdX" to a 3ware number, but with a little manual setup, you should have a fully functional myMain.

Link to comment
  • 1 month later...

Hi bjp,

 

I've recently set up a new UnRaid server with a 3ware 9500s controller, and have found this thread which seems to help me solve the precise problem I've got!

 

Are you planning to add this capability to the standard release of myMain? Or if not where can I get the relevant files to apply the patch myself?

 

Cheers,

 

ctrlbreak

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.