Arch Linux/XFCE を使用すると USB ドライブが正しくマウントされないという問題がよく発生します。時にはThunarに自動的に表示され、ワンクリックでインストールできます。ただし、他の場合(約50/50)、ドライブは認識されません。 USB外付けハードドライブ、USBスティック、カメラでこの問題が発生しました。外付けドライブが認識されない場合は、次のことが発生します。
- ドライブはまったく表示されません
fdisk -l
(私のハードドライブのみが表示されます)。 - ドライブは表示されません。
/dev/disk
- ドライバーする走ると現れる
lsusb
だから、ある種の認識はありますが、なぜこのようなことが起こると、ドライブをマウントする方法も理解できません。ただ再起動し、次回はうまくいくことを願っていますが、間違いなく不快です。
修正する
監視時に/var/log/everything.log
(syslogには情報がない)USBが接続されていると、次のことが発生することがわかります。
Dec 14 15:36:32 localhost kernel: [ 6591.042911] usb 1-3: new high speed USB device number 9 using ehci_hcd
Dec 14 15:36:32 localhost mtp-probe: checking bus 1, device 9: "/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-3"
Dec 14 15:36:32 localhost mtp-probe: bus: 1, device: 9 was not an MTP device
他のリクエストの出力は次のとおりです。
$udevadm monitor
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
KERNEL[6809.192268] add /devices/pci0000:00/0000:00:1d.7/usb1/1-3 (usb)
KERNEL[6809.193421] add /devices/pci0000:00/0000:00:1d.7/usb1/1-3/1-3:1.0 (usb)
UDEV [6809.299246] add /devices/pci0000:00/0000:00:1d.7/usb1/1-3 (usb)
UDEV [6809.306074] add /devices/pci0000:00/0000:00:1d.7/usb1/1-3/1-3:1.0 (usb)
答え1
この質問は包括的な規則のようです/lib/udev/rules.d/69-libmtp.rules
。
# Autoprobe vendor-specific, communication and PTP devices
ENV{ID_MTP_DEVICE}!="1", ENV{MTP_NO_PROBE}!="1", ENV{COLOR_MEASUREMENT_DEVICE}!="1", ENV{libsane_matched}!="yes", ATTR{bDeviceClass}=="00|02|06|ef|ff", PROGRAM="/usr/lib/udev/mtp-probe /sys$env{DEVPATH} $attr{busnum} $attr{devnum}", RESULT=="1", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
次のようにその行をコメントアウトすると、問題が解決します。
# Autoprobe vendor-specific, communication and PTP devices
ENV{ID_MTP_DEVICE}!="1", ENV{MTP_NO_PROBE}!="1", ENV{COLOR_MEASUREMENT_DEVICE}!="1", ENV{libsane_matched}!="yes", ATTR{bDeviceClass}=="00|02|06|ef|ff", PROGRAM="/usr/lib/udev/mtp-probe /sys$env{DEVPATH} $attr{busnum} $attr{devnum}", RESULT=="1", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
私の場合は再起動する必要がありましたが、再起動できるサービスがあるかもしれません。
答え2
一度ENV{MTP_NO_PROBE}="1"
MTPプローブを停止しました。このように私はArchを修正しませんでした/lib/udev/rules.d/69-libmtp.rules
。
export MTP_NO_PROBE="1"
答え3
ロギングに MTP デバイス検出の問題が表示されます。
libmtp
可能であれば削除してみるか、関連ファイルのudevルールをコメントアウトしてください。