问题卡在内核未识别硬件,需先执行lsusb确认读卡器是否被USB子系统识别,若无新增含“SD”“MMC”等关键词设备,则换主板后置接口和数据线;再依次加载mmc_block、sdhci、sdhci_pci、uas模块,验证lsmod输出;最后修复udev权限并安装firmware-realtek等固件包。

银河麒麟V10插入读卡器后TF卡完全无反应,文件管理器不显示设备、终端执行lsblk和lsusb均查不到对应节点,说明问题卡在硬件识别或驱动加载最底层——此时连设备名(如/dev/mmcblk0)都未生成,所有上层操作均无效。
确认读卡器是否被USB子系统识别
这一步是判断故障层级的关键。若lsusb里压根看不到读卡器,后面所有驱动、权限、固件操作都是白费。
拔掉读卡器→打开终端→执行:lsusb→回车→记录当前输出;再插入读卡器→立即再次执行lsusb→对比两次结果差异。
若新增行含“SD”、“MMC”、“Realtek”、“Alcor”、“Generic”、“ENE”等关键词,说明USB枚举成功;若无任何变化,尝试更换主板后置USB接口(避开前置面板、USB集线器、转接头),并换一根已知支持数据传输的USB线重试。
【注意】某些USB 3.0读卡器在麒麟V10下需手动加载模块才能被识别,不能仅凭外观判断是否工作
强制加载SD卡核心内核模块
银河麒麟V10默认可能未自动加载mmc_block、sdhci等关键模块,尤其对Realtek RTL8411B、Alcor AU6477等常见芯片读卡器影响显著。
第一步:依次执行以下四条命令(顺序不可颠倒)sudo modprobe mmc_block → sudo modprobe sdhci → sudo modprobe sdhci_pci → sudo modprobe uas
第二步:验证模块是否就位
执行lsmod | grep -E "(mmc|sdhci|uas)",输出中应同时出现mmc_block、sdhci、sdhci_pci三行及以上内容。
第三步:重新插拔读卡器,等待8秒后运行lsblk,若看到mmcblk0或mmcblk0p1条目,说明TF卡已被内核识别为块设备。
修复/dev/mmc*设备节点权限
即使内核识别了TF卡,普通用户仍可能因udev规则限制而无法访问/dev/mmcblk0,导致文件管理器不挂载、双击无响应。
执行ls -l /dev/mmc*,观察输出中设备节点的组名(GROUP)是否为plugdev、权限是否含rw(如crw-rw----)。
若属主不是root:plugdev或权限不含rw,需创建自定义udev规则:
执行sudo nano /etc/udev/rules.d/99-sdcard-permissions.rules,写入一行:SUBSYSTEM=="mmc", MODE="0664", GROUP="plugdev"
保存后执行:sudo udevadm control --reload-rules → sudo udevadm trigger --subsystem-match=mmc
重新插拔读卡器,再次运行ls -l /dev/mmc*,确认权限已更新为crw-rw-r--且组为plugdev。
安装专用固件包(针对Realtek/Alcor芯片)
部分读卡器芯片(如Realtek RTL8411B2、Alcor AU6477)需额外固件才能完成初始化,银河麒麟V10官方源未预置对应包。
方法一:安装firmware-realtek
执行sudo apt update → sudo apt install firmware-realtek
方法二:安装firmware-ralink(覆盖部分Alcor方案)
执行sudo apt install firmware-ralink
安装完成后重启系统,或直接执行sudo modprobe -r mmc_block sdhci sdhci_pci → sudo modprobe mmc_block sdhci sdhci_pci重新加载模块链。
绕过读卡器直连TF卡(OTG方案)
当上述步骤全部失败,且手机支持OTG功能时,可跳过读卡器硬件层,用OTG线+USB-A公头读卡器直读TF卡。
取出TF卡→插入USB-A接口读卡器→读卡器接入OTG转接头→OTG转接头插入手机USB-C口→手机开启“USB共享网络”或“文件传输”模式→电脑通过ADB访问:adb devices → adb shell ls /mnt/media_rw/ → adb pull /mnt/media_rw/[UUID]/ /home/user/tf_backup/
这一步无需麒麟系统识别读卡器,完全绕过内核MMC子系统,适用于所有MTP可用的安卓手机。

















