alb*_*ert 5 fedora automounting mount kernel-modules sd-card
我试图在 Fedora 28 上访问 SD 卡,但没有任何成功。系统信息如下:
$ lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: Fedora
Description: Fedora release 28 (Twenty Eight)
Release: 28
Codename: TwentyEight
Run Code Online (Sandbox Code Playgroud)
我无法使用两个不同的读卡器访问不同的 SD 卡。尽管在 macOS 和 Windows 上都可以访问,但它们都没有显示在 Nautilus 文件浏览器、桌面或其他明显的地方。
系统根据lsusb
输出识别读卡器:
$ lsusb -v
# some other USB devices
Bus 001 Device 005: ID 058f:6362 Alcor Micro Corp. Flash Card Reader/Writer
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x058f Alcor Micro Corp.
idProduct 0x6362 Flash Card Reader/Writer
bcdDevice 1.29
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 250mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
# some other USB devices
Bus 001 Device 006: ID 0dda:2027 Integrated Circuit Solution, Inc. USB 2.0 Card Reader
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x0dda Integrated Circuit Solution, Inc.
idProduct 0x2027 USB 2.0 Card Reader
bcdDevice 1.6e
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 4
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 5
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
# some other USB devices
Run Code Online (Sandbox Code Playgroud)
然后我在插入和拔出卡时查看了 udev 事件:
$ udevadm monitor
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
KERNEL[701.434565] change /devices/pci0000:00/0000:00:1d.7/usb1/1-3/1-3:1.0/host4/target4:0:0/4:0:0:2/block/sde (block)
UDEV [714.263816] change /devices/pci0000:00/0000:00:1d.7/usb1/1-3/1-3:1.0/host4/target4:0:0/4:0:0:2/block/sde (block)
KERNEL[748.477184] change /devices/pci0000:00/0000:00:1d.7/usb1/1-3/1-3:1.0/host4/target4:0:0/4:0:0:2/block/sde (block)
UDEV [761.338940] change /devices/pci0000:00/0000:00:1d.7/usb1/1-3/1-3:1.0/host4/target4:0:0/4:0:0:2/block/sde (block)
Run Code Online (Sandbox Code Playgroud)
此外,我查看了内核消息:
$ dmesg
[ 603.846840] usb-storage 1-3:1.0: USB Mass Storage device detected
[ 603.847749] scsi host4: usb-storage 1-3:1.0
[ 605.703531] scsi 4:0:0:0: Direct-Access Generic CF 1.6E PQ: 0 ANSI: 0 CCS
[ 605.704982] scsi 4:0:0:1: Direct-Access Generic MS 1.6E PQ: 0 ANSI: 0 CCS
[ 606.509034] scsi 4:0:0:2: Direct-Access Generic MMC/SD 1.6E PQ: 0 ANSI: 0 CCS
[ 606.510387] scsi 4:0:0:3: Direct-Access Generic SM 1.6E PQ: 0 ANSI: 0 CCS
[ 606.511519] sd 4:0:0:0: Attached scsi generic sg4 type 0
[ 606.511943] sd 4:0:0:1: Attached scsi generic sg5 type 0
[ 606.512177] sd 4:0:0:2: Attached scsi generic sg6 type 0
[ 606.512408] sd 4:0:0:3: Attached scsi generic sg7 type 0
[ 608.924586] sd 4:0:0:1: [sdd] Attached SCSI removable disk
[ 629.830776] sd 4:0:0:2: [sde] Attached SCSI removable disk
[ 633.048754] sd 4:0:0:3: [sdf] Attached SCSI removable disk
[ 639.490479] sd 4:0:0:0: [sdc] Attached SCSI removable disk
Run Code Online (Sandbox Code Playgroud)
两者的输出dmesg
,并udevadm monitor
告诉该卡应显示为sde
。但是,fdisk -l
没有列出sde
。除此之外,尝试手动安装设备会引发错误:
$ mount -t auto /dev/sde /mnt/
mount: /mnt: no medium found on /dev/sde.
Run Code Online (Sandbox Code Playgroud)
我不确定所需的驱动程序模块是否正确加载,因为输出中没有mmc0
-like 条目dmesg
(正如我从基于 Debian 的系统中所知道的那样)。lsmod
也不列出mmc0
内核模块:
$ lsmod | grep mm
rtl8192c_common 61440 1 rtl8192cu
rtlwifi 98304 3 rtl8192c_common,rtl_usb,rtl8192cu
Run Code Online (Sandbox Code Playgroud)
唯一mmc
似乎可用但未加载的类似模块是mmc_block
and mmc_core
:
$ modprobe mm # listing suggestions using tab auto-completion
mma7660 mmc_block mmc_core mms114
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题或至少缩小它的范围?