• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
Netgate Discussion Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login

SMART Errors for 3Ware Raid Cards

Scheduled Pinned Locked Moved 2.0-RC Snapshot Feedback and Problems - RETIRED
11 Posts 4 Posters 5.2k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • H Offline
    hytek
    last edited by Dec 3, 2010, 3:06 PM

    Using 3Ware raid card, and when trying to use any of the "Diagnostics -> SMART Status" this error comes back:

    smartctl 5.39.1 2010-01-28 r3054 [FreeBSD 8.1-RELEASE-p2 i386] (local build)
    Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
    
    Smartctl open device: /dev/da0 failed: AMCC/3ware controller, please try adding '-d 3ware,N',
    you may need to replace /dev/da0 with /dev/twaN or /dev/tweN
    
    
    1 Reply Last reply Reply Quote 0
    • H Offline
      hytek
      last edited by Dec 6, 2010, 1:38 PM

      To update:

      The 3ware card is a 9650SE with 4 drives in a raid-5

      Using shell, the following command works:

      smartctl -a /dev/twa0 -d 3ware,N
      

      Where N equals: 0, 1, 2, 3 (or however many drives are attached to the card)

      On the SMART Status page, the drop down menu is not listing twa0

      1 Reply Last reply Reply Quote 0
      • J Offline
        jimp Rebel Alliance Developer Netgate
        last edited by Dec 6, 2010, 8:16 PM

        If you type "atacontrol list" or "camcontrol devlist" does twa show up in the output?

        I could add twa to the list of types (now it only shows ad and da) but if I can find a more general solution that doesn't require hardcoding, that would be ideal.

        Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

        Need help fast? Netgate Global Support!

        Do not Chat/PM for help!

        1 Reply Last reply Reply Quote 0
        • H Offline
          hytek
          last edited by Dec 8, 2010, 10:42 PM Dec 8, 2010, 10:38 PM

          Sorry for the long delay. Crazy week. I was replying on a machine at work, and haven't hit submit yet.

          To sum up, "atacontrol list" does not yield any results for drives on a 3ware, and I cannot get smartctl or smartd to list devices. One option I found on a man page was –scan, but it doesn't work.

          I will post more info in a day or two as I am still testing a few things. Might have a "patch" that doesn't require hard coding here in a day or two since I have a system with a 3ware card. Though I wouldn't say patch, more of a shell script. whatever. :)

          I'll post it when it's working and you can do whatever you want with it.  8)

          Cheers.

          (edit: and where is camcontrol at? I didn't see it in /bin, /sbin, /usr/sbin....is it in /usr/local somewhere?)

          1 Reply Last reply Reply Quote 0
          • J Offline
            jimp Rebel Alliance Developer Netgate
            last edited by Dec 8, 2010, 11:27 PM Dec 8, 2010, 11:21 PM

            camcontrol should be in /sbin but it's possible we don't include it on the builds.

            I keep thinking that somewhere we have some code/logic to find all "disks" and I can reuse it, but I haven't found it yet, though I haven't done any intensive searching yet.

            Edit: Looks like "/usr/sbin/pc-sysinstall/pc-sysinstall/pc-sysinstall.sh disk-list" is promising.

            Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

            Need help fast? Netgate Global Support!

            Do not Chat/PM for help!

            1 Reply Last reply Reply Quote 0
            • _ Offline
              _igor_
              last edited by Dec 9, 2010, 12:26 AM

              to my own knowledge on 3ware adapters, smartmontools never report back any drive-info. I have some of this adapters installed on several systems, including linux and nowhere this info can be extracted. Only way is via the 3ware tools from the manufacturer. They have Freebsd-installers there, but only freebsd 7.

              1 Reply Last reply Reply Quote 0
              • H Offline
                hytek
                last edited by Dec 9, 2010, 2:19 AM

                @jimp:

                camcontrol should be in /sbin but it's possible we don't include it on the builds.

                I keep thinking that somewhere we have some code/logic to find all "disks" and I can reuse it, but I haven't found it yet, though I haven't done any intensive searching yet.

                Edit: Looks like "/usr/sbin/pc-sysinstall/pc-sysinstall/pc-sysinstall.sh disk-list" is promising.

                I didn't see it in /sbin, but no worries. (Is there a 2.0 build that includes this? Might be a cleaner way to discover attached 3ware cards…)

                note: some of these questions are just reminders for me to look at tomorrow, some I will find the answer on my own. but feel free to answer or comment :)

                I'll check out "pc-sysinstall.sh disk-list" tomorrow at work [as that is where my system with the 3ware is]. Is this script ran during install [only]? and/or during each bootup? Where/How does it save the discovered information, and format/syntax?

                If it is promising but not complete, I'll use that as my base and post a patch. If not I can write up a real quick script that can list the drives, and be a bit more dynamic as well. (and then you guys can integrate in whatever way you see fit)

                Either way I am hoping to get this in the 2.0 release :) (or shortly after… 8))

                Cheers.

                1 Reply Last reply Reply Quote 0
                • D Offline
                  danswartz
                  last edited by Dec 9, 2010, 3:25 AM

                  I would be surprised if a 3ware card yielded any per-drive info to generic scsi tools, as it is a HW raid controller and presents a single scsi drive to the host.

                  1 Reply Last reply Reply Quote 0
                  • J Offline
                    jimp Rebel Alliance Developer Netgate
                    last edited by Dec 9, 2010, 3:28 AM

                    smartmontools has specific code to get data from 3ware, areca, and some others.

                    Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                    Need help fast? Netgate Global Support!

                    Do not Chat/PM for help!

                    1 Reply Last reply Reply Quote 0
                    • H Offline
                      hytek
                      last edited by Dec 10, 2010, 7:20 PM

                      With the tools available in the 2.0b4, this script accurately list all devices attached to most 3ware cards in a system.

                      I have tested it with 2 different cards simultaneously, with a wide arrangement of disk on the second card. I'm just storing the results in a .txt file for now since I don't have time today to look for a more integrated way.

                      $maxDriveSize can be lowered to 23 for example, as most cards do not have more then 24 ports. (where port 1 is always = 0)
                      With having it set at 127, it takes about 2 to 3 seconds to scan two 3ware cards in full. Setting it to 24 takes 1 to 2 seconds

                      
                      #!/bin/sh
                      #used to discover each drive installed on 3ware RAID controllers.
                      
                      #max number of drives that smartctl can list for 3ware is from 0 to 127.
                      maxDriveSize="127"
                      
                      #discovers any 3ware controller and stores in array.
                      controllerArray="`/usr/sbin/devinfo | grep twa && /usr/sbin/devinfo | grep twe && /usr/sbin/devinfo | grep twl`"
                      
                      for eachDevice in $controllerArray
                      do
                      	#each controller has it's own file with a list of drives in it.
                      	#can substitute .txt file for mysql, conf, or some other format.
                      	controllerDB="3Ware_$eachDevice.txt"
                      
                      	#clear contents, and puts controller name (ex. twa0) on first line.
                      	echo "$eachDevice" > $controllerDB
                      
                      	i=0
                      	while [ $i -le $maxDriveSize ]
                      	do
                      		#run smartctl on every possible device attached to a card, and store which one is SMART enabled.
                      		activeDrive="`smartctl -a /dev/$eachDevice -d 3ware,$i | grep "support" | grep "Enabled" | awk '{print $4}'`"
                      		if [ "$activeDrive" = "Enabled" ]
                      		then
                      			#adds drive ID number to the attached controller file/db.
                      			#this line may change depending on what storage format the drive listings /
                      			#are being placed in.
                      			echo $i >> $controllerDB
                      		fi
                      	i=$(( $i + 1 ))
                      	done
                      
                      done
                      
                      exit 0
                      
                      

                      After this has ran, the output of file 3Ware_twa0.txt is:
                      (4 drive raid5)

                      twa0
                      0
                      1
                      2
                      3
                      
                      

                      And output of file 3Ware_twa1.txt is:
                      (connected drives to random ports, and made a raid0 for testing)

                      twa1
                      0
                      2
                      3
                      5
                      6
                      7
                      

                      Let me know if there is anything else you want me to try, do, script, whatever.  8)
                      Hope this helps to get better support for 3Ware in 2.0 RC  :)

                      Cheers.

                      1 Reply Last reply Reply Quote 0
                      • D Offline
                        danswartz
                        last edited by Dec 10, 2010, 8:13 PM

                        @jimp:

                        smartmontools has specific code to get data from 3ware, areca, and some others.

                        ah, learn something new every day :)

                        1 Reply Last reply Reply Quote 0
                        11 out of 11
                        • First post
                          11/11
                          Last post
                        Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
                          This community forum collects and processes your personal information.
                          consent.not_received