Check SMART values of disks behind an Intel Raid on FreeBSD

Written by - 0 comments

Published on - Listed in BSD Hardware


In a previous article (check_smart with support for hardware raid controllers) I wrote about checking SMART values of disks behind a physical raid controller on a Linux system. 

This time I needed to do something similar on a FreeBSD server. Different OS, different story.

First I tried to use the basic smartctl command with the output of /etc/fstab for the logical disk, but that did not work:

smartctl /dev/mfid0
smartctl 6.2 2013-07-26 r3841 [FreeBSD 9.2-RELEASE amd64] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

/dev/mfid0: To monitor disks on LSI RAID load mfip.ko module and run 'smartctl -a /dev/passX' to show SMART information
Please specify device type with the -d option.

I would have been surprised if that worked, but the output already shows a big step towards the solution.
smartctl correctly detects a hardware raid in the background and suggests to load the kernel module mfip.ko, which allows to pass through to the physical hard disks to read their SMART values.

On FreeBSD, a kernel module is loaded with kldload:

kldload mfip.ko

Now the disks appear in /dev/ as pass* devices and can be used with smartctl:

smartctl -A /dev/pass0
smartctl 6.2 2013-07-26 r3841 [FreeBSD 9.2-RELEASE amd64] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
Current Drive Temperature:     28 C
Drive Trip Temperature:        68 C

Manufactured in week 09 of year 2011
Specified cycle count over device lifetime:  10000
Accumulated start-stop cycles:  19
Specified load-unload count over device lifetime:  300000
Accumulated load-unload cycles:  19
Elements in grown defect list: 0

Vendor (Seagate) cache information
  Blocks sent to initiator = 117160353
  Blocks received from initiator = 546034503
  Blocks read from cache and sent to initiator = 1489662344
  Number of read and write commands whose size <= segment size = 8567886
  Number of read and write commands whose size > segment size = 0

Vendor (Seagate/Hitachi) factory information
  number of hours powered up = 16603.48
  number of minutes until next internal SMART test = 52


Add a comment

Show form to leave a comment

Comments (newest first)

No comments yet.

RSS feed

Blog Tags:

  AWS   Android   Ansible   Apache   Apple   Atlassian   BSD   Backup   Bash   Bluecoat   CMS   Chef   Cloud   Coding   Consul   Containers   CouchDB   DB   DNS   Database   Databases   Docker   ELK   Elasticsearch   Filebeat   FreeBSD   Galera   Git   GlusterFS   Grafana   Graphics   HAProxy   HTML   Hacks   Hardware   Icinga   Influx   Internet   Java   KVM   Kibana   Kodi   Kubernetes   LVM   LXC   Linux   Logstash   Mac   Macintosh   Mail   MariaDB   Minio   MongoDB   Monitoring   Multimedia   MySQL   NFS   Nagios   Network   Nginx   OSSEC   OTRS   Office   PGSQL   PHP   Perl   Personal   PostgreSQL   Postgres   PowerDNS   Proxmox   Proxy   Python   Rancher   Rant   Redis   Roundcube   SSL   Samba   Seafile   Security   Shell   SmartOS   Solaris   Surveillance   Systemd   TLS   Tomcat   Ubuntu   Unix   VMWare   VMware   Varnish   Virtualization   Windows   Wireless   Wordpress   Wyse   ZFS   Zoneminder