1

Summary:

I've just bought a Seagate 2Tb "expansion portable drive", model STEA2000400, with USB 3 connection, formatted as ntfs. The documentation says "System requirements: Windows 7 or 8" but I assume it should work with Linux (I really like the neat design of the drive).

My system is Live Knoppix 7.0.2 installed on hard drive, with kernel 3.3.7.

So far, the Seagate drive has only worked once, when I first plugged it in* (usb 3 slot). (*After boot). It automounted, and its files were displayed in the pcmanfm file manager. By automount, I mean when the small window appears and says something like "Do you want to open this device in file manager".

But since then, each time I plug it in, it doesn't work (it works OK in Windows 7). When I plug it in, sometimes it gets mounted by the system (even if the automount dialogue doesn't appear), and sometimes it doesn't get mounted.

When it's not mounted, the dmesg command says

[ 9134.211695] sd 8:0:0:0: sense urb submission failure

and the message repeats continuously (with different "[...]" nos.) and repeats across subsequent dmesgs and across logging out and in.

When I plug the drive in BEFORE booting, the system mounts the drive, and dmesg gives the following message continuously (it gave the same continuous message when I repeated the dmesg command):

[ 105.827668] sd 8:0:0:0: rejecting I/O to offline device

My humble questions are:

Could you tell me why the drive isn't working in Linux, and what I need to do to get it working? I really like the neat design of the drive and would very much like to keep it and get it working.

Should I look for another usb hdd that specifically says it works with Linux?

Full Details:

Knoppix is a slightly customised version of Debian.

When the drive worked that first time, and its files were displayed in pcmanfm, the mount command showed

/dev/sdb1 on /media/sdb1 type fuseblk (rw,nosuid,nodev,relatime,user_id=
1000,group_id=0,allow_other,blksize=4096)

AND dmesg showed

[ 3104.772532] usb 4-2: new SuperSpeed USB device number 2 using xhci_hcd
[ 3104.789326] usb 4-2: New USB device found, idVendor=0bc2, idProduct=231a
[ 3104.789336] usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3104.789342] usb 4-2: Product: Expansion
[ 3104.789347] usb 4-2: Manufacturer: Seagate
[ 3104.789351] usb 4-2: SerialNumber: NA8PEPNV
[ 3104.791381] scsi8 : uas
[ 3104.793020] scsi 8:0:0:0: Direct-Access     Seagate  Expansion        0708
PQ: 0 ANSI: 6
[ 3104.793363] sd 8:0:0:0: Attached scsi generic sg2 type 0

Also when the drive worked that first time, and its files were displayed in pcmnfm; about 15 minutes later, when I reselected the drive in pcmanfm, no files were displayed, and pcmanfm said

"The specified directory is not valid".

I then opened the nautilus file manager, and when I selected the drive, nautilus said

"Could not display /media/sdb1. Error: Error when getting information for file /media/sdb1: Input/output error. Please select another viewer and try again."

On the occasion when I plugged the drive in BEFORE booting, and the system mounted it, I can't remember if the automount dialogue appeared or not.

3

UAS is a method of transfer with less overhead using SCSI encapsulated into USB, but is prone to issues and incompatibilities between some hardware/vendor/firmware/os (pick among).

You should disable UAS because it's certainly the cause of incompatibility with your combination of hardware/os (also see later what I really mean).

You can use a blacklist to disable it only for known failing devices. This kernel documentation (look for usb-storage.quirks=) tells what are the options to work around various issues with USB storage.

Your device is identified as USB VID:PID 0bc2:231a, and the string :u is added to disable USB UAS.

Usually that would be by creating in /etc/modprobe.d/ a file called local-disable-seagate-uas.conf with this content:

options usb-storage quirks=0bc2:231a:u

Then something like update-initramfs -u and rebooting (unless you know how to and can remove some usb modules and then reload them) should be done.

Alternatively, if you can't write there (Live CD, chicken-and-eggs problem and so on...) or if usb-storage is compiled not as module, you have to add it as a kernel boot parameter. That parameter would then be:

usb-storage.quirks=0bc2:231a:u

Look at the Knoppix documentation (Boot options and controls) for how to do this.

Now once you confirm it fixes the issue, what you should really do is upgrade your OS with something more recent. Kernel 3.3 is way too old and unsupported anywhere and it's probable some UAS issues got fixed since then. Once you got a recent OS (eg: Debian 9, or Knoppix 8.1 to stay similar) you should try again, carefully, with and without this parameter and see what works best. Some problems can happen only under heavy load, talking from experience.

  • 2
    External closures by Seagate often support UAS except longer ATA commands. If your kernel supports quirk t (US_FL_NO_ATA_1X) you may be able to use UAS instead of falling back to usb-storage. This limitation is caused by poor quality chips used by Seagate. I think that TRIM cannot be used due to this limitation. If you cannot use that quirk, using quirk u will force fallback to usb-storage. – Mikko Rantalainen Dec 21 '18 at 14:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.