付録

付録

しばらく前に2TBの外付けハードを購入しました。これで問題が発生しました。プラグを差し込んだときにコンピュータに表示されません。 (私はGpartedとインターネットで見つけたいくつかの異なるプログラムを試してみました。)私はフォーマットしたいので、次のコマンドを試しましたが、何も表示されませんでした。

lsusb

sudo fdisk -l

以下でのみ表示されます。

dmesg | tail -n 20

メッセージ:

[ 1639.785187] sd 6:0:0:0: [sdb] Read Capacity(10) failed: Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
[ 1639.785190] sd 6:0:0:0: [sdb] Sense not available.
[ 1639.977010] sd 6:0:0:0: [sdb] Write Protect is off
[ 1639.977017] sd 6:0:0:0: [sdb] Mode Sense: 00 00 00 00
[ 1640.057076] sd 6:0:0:0: [sdb] Asking for cache data failed
[ 1640.057083] sd 6:0:0:0: [sdb] Assuming drive cache: write through
[ 1640.525073] sd 6:0:0:0: [sdb] Read Capacity(16) failed: Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
[ 1640.525077] sd 6:0:0:0: [sdb] Sense not available.
[ 1640.780937] sd 6:0:0:0: [sdb] Read Capacity(10) failed: Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK
[ 1640.780940] sd 6:0:0:0: [sdb] Sense not available.
[ 1641.188905] sd 6:0:0:0: [sdb] Attached SCSI disk
[ 2138.683015] usb 4-1.1: new high-speed USB device number 9 using ehci-pci
[ 2138.872871] usb 4-1.1: New USB device found, idVendor=0bc2, idProduct=231a
[ 2138.872879] usb 4-1.1: New USB device strings: Mfr=1, Product=2, 
SerialNumber=3
[ 2138.872883] usb 4-1.1: Product: Expansion
[ 2138.872887] usb 4-1.1: Manufacturer: Seagate
[ 2138.872890] usb 4-1.1: SerialNumber: NAA7A6D6
[ 2138.876706] scsi host6: uas
[ 2138.878489] scsi 6:0:0:0: Direct-Access     Seagate  Expansion        0710 PQ: 0 ANSI: 6
[ 2138.911706] sd 6:0:0:0: Attached scsi generic sg2 type 0

OS - Debian Stretch(win 7も使用)

ベストアンサー1

このデバイスベンダーのカーネルでUASを無効にすることもできます。外部USBエンクロージャと同様の問題がありましたが、これが問題を解決しました。以下は、この問題を解決する必要があるたびに(たとえば、Ubuntuを新しくインストールした後など)参照する完全なメモです。これは、カーネル5.0.0-36-genericを使用する最近の18.04.3 LTSでまだ必要です。

これは、起動時にシステムを停止し、fdiskに表示されないソリューション(私のLaCieドライブ、外部Seagate HDDエンクロージャなどで動作します)です。 059f:105eはLaCieドライブのベンダー/製品文字列であるため、他のドライブでこれを行う場合は、そのデバイスに「lsusb」が印刷する対応する文字列を使用してください(「lsusb -t」も機能します)。これは、このベンダー/製品文字列に対してのみUASを無効にしてから、この修正で最新のカーネルを再構築することです。これで、システムがすぐに起動し、すぐにfdiskにドライブが表示されました!

注:modprobe.dに各問題ごとに別々のファイルがあると機能しません!最後に読み取ったファイルに関係なく、古いファイルを上書きできます。したがって、特異事項はカンマで区切って1行に入力する必要があります。

問題を解決する方法は次のとおりです。

sudo su
cat > /etc/modprobe.d/disable-uas.conf

単一のデバイスは次のとおりです。

options usb-storage quirks=059f:105e:u

これは複数のデバイスで行われます。 LaCieとSeagateのケースの両方がここで修正されました。

options usb-storage quirks=059f:105f:u,059f:105e:u,174c:1351:u

(終了するにはCtrl-D)

update-initramfs -u
reboot

再起動せずに操作を実行するには、次の方法も機能します。

rmmod uas usb-storage
modprobe usb-storage quirks=174c:1351:u,059f:105e:u,059f:105f:u

付録

以下は、USBデバイスの状態をデバッグするのに役立ついくつかのコマンドです。

  • fdisk -l
  • USBデバイス
  • lspci-nv
  • LSSB
  • lsusb-t

注:/lib/udev/rules.d/69-libmtp.rulesを編集し、LaCieドライブに次の行を追加することに関連して以前に使用した別の方法があります。

ATTR{idVendor}=="059f", ATTR{idProduct}=="105e", SYMLINK+="libmtp-%k", 
MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", 
ENV{ID_MEDIA_PLAYER}="1", TAG+="uaccess"
ATTR{idVendor}=="059f", ATTR{idProduct}=="105f", SYMLINK+="libmtp-%k", 
MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", 
ENV{ID_MEDIA_PLAYER}="1", TAG+="uaccess"

しかし今はこれは必要ないようです。 modprobeメソッドはそれ自体でうまく機能します。そして、この方法はある時点で動作が停止したようです。それはおそらく、最新のUbuntuまたはカーネルバージョンにアップデートしたからです。

おすすめ記事