You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux下使用PyUSB读取U盘遇权限、命令及模块缺失问题求助

解决Linux下PyUSB访问Transcend JetFlash U盘的问题

1. 处理权限错误(usb.core.USBError: [Errno 13] Access denied)

普通用户默认没有USB设备的访问权限,通过添加udev规则授权:

  • 创建规则文件:sudo nano /etc/udev/rules.d/99-transcend-jetflash.rules
  • 在文件中写入:
    SUBSYSTEM=="usb", ATTRS{idVendor}=="8564", ATTRS{idProduct}=="1000", MODE="0666"
    
  • 保存退出后,重新加载udev规则:
    sudo udevadm control --reload-rules && sudo udevadm trigger
  • 重新插拔U盘,普通用户即可直接访问设备,无需sudo。

2. 解决sudo找不到python指令的问题

Linux系统中python命令可能未默认指向python3,或sudo的PATH中未包含该命令:

  • 直接使用python3替代python执行脚本:sudo python3 your_script.py
  • 若需保留python命令,可创建软链接(谨慎操作,避免系统依赖冲突):sudo ln -s /usr/bin/python3 /usr/bin/python

3. 解决sudo下找不到usb模块的问题

PyUSB通常安装在用户个人目录,sudo运行时使用root环境,无法读取用户安装的模块:

  • 方案一:给root环境安装PyUSB:sudo pip3 install pyusb
  • 方案二:使用当前用户的Python环境运行脚本,避免切换到root环境:
    sudo $(which python3) your_script.py
  • 方案三:全局安装PyUSB(不推荐,可能影响系统依赖):sudo pip3 install --system pyusb

内容的提问来源于stack exchange,提问作者j ton

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 19:15:38