I have a firewire external seagate 500G drive (it also does usb, but
firewire 800 is much [2.5x] faster).
I've searched around, and it looks like it just _might_ be possible to
get smart over firewire.
I'm wondering if any work has been done in this area. Also I'm
curious about an error I'm getting.
Here's Fedora 11 smartmontools at work:
# smartctl -a /dev/sdb
smartctl version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
Device: Seagate FreeAgent Go FW Version: 410G
Serial number: 2GEJ0ZDZ
Device type: disk
Local Time is: Thu Aug 6 16:12:06 2009 PDT
Device does not support SMART
Error Counter logging not supported
Device does not support Self Test logging
# smartctl -d sat /dev/sdb
smartctl version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
SMART support is: Ambiguous - ATA IDENTIFY DEVICE words 82-83 don't
show if SMART supported.
A mandatory SMART command failed: exiting. To continue, add one or
more '-T permissive' options.
This also causes dmesg to log:
program smartctl is using a deprecated SCSI ioctl, please convert it to SG_IO
Retrying with svn head doesn't really help:
# ./smartctl -a /dev/sdb
smartctl 5.39 2009-08-06 r2871 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-9 by Bruce Allen, http://smartmontools.sourceforge.net
Device: Seagate FreeAgent Go FW Version: 410G
Serial number: 2GEJ0ZDZ
Device type: disk
Local Time is: Thu Aug 6 16:12:12 2009 PDT
Device does not support SMART
Error Counter logging not supported
Device does not support Self Test logging
# ./smartctl -d sat -a /dev/sdb
smartctl 5.39 2009-08-06 r2871 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-9 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF INFORMATION SECTION ===
Device Model: [No Information Found]
Serial Number: [No Information Found]
Firmware Version: [No Information Found]
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 1
ATA Standard is: Exact ATA specification draft version not indicated
Local Time is: Thu Aug 6 16:12:18 2009 PDT
SMART is only available in ATA Version 3 Revision 3 or greater.
We will try to proceed in spite of this.
SMART support is: Ambiguous - ATA IDENTIFY DEVICE words 82-83 don't
show if SMART supported.
A mandatory SMART command failed: exiting. To continue, add one or
more '-T permissive' options.
which also causes dmesg to output the same warning:
program smartctl is using a deprecated SCSI ioctl, please convert it to SG_IO
Is this warning a kernel bug? I'm asking, because from a strace it
actually seems to be using SG_IO...
(unless maybe the FIBMAP is triggering this?)
strace ./smartctl -a -d sat /dev/sdb 2>&1 >/dev/null | sed -rn
'/^open.*sdb/,$p' | egrep -v '^(write|munmap|mmap)\('
open("/dev/sdb", O_RDWR|O_NONBLOCK) = 3
fcntl(3, F_SETFD, FD_CLOEXEC) = 0
ioctl(3, SG_IO, {'S', SG_DXFER_FROM_DEV, cmd[16]=[85, 08, 0e, 00, 00,
00, 01, 00, 00, 00, 00, 00, 00, 00, ec, 00], mx_sb_len=32,
iovec_count=0, dxfer_len=512, timeout=6000, flags=0,
data[512]=["\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"...],
status=00, masked_status=00, sb[0]=[], host_status=0x5,
driver_status=0, resid=0, duration=0, info=0x1}) = 0
ioctl(3, FIBMAP, 0x7fffd63d8b80) = 0
close(3) = 0
Also as a side note:
Shouldn't all this translation code actually go in the kernel, and
thus make hdparm/sdparm (etc) also work?
-- Maciej
|