error: insufficient permissions for device

adb root一直报如下错误:

error: insufficient permissions for device: user in plugdev group; are your udev rules wrong?
See [http://developer.android.com/tools/device.html] for more information
 

首先在终端查看usb的ID,输入lsusb命令,我们可以看到我们刚插如usb的ID号,如:

xxnan@xxnan-pt:~$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 003: ID 0461:4d80 Primax Electronics, Ltd 
Bus 001 Device 004: ID 1c7a:0801 LighTuning Technology Inc. Fingerprint Reader
Bus 002 Device 003: ID 5986:0190 Acer, Inc 
Bus 001 Device 019: ID 0bb4:0c02 High Tech Computer Corp. Dream / ADP1 / G1 / Magic / Tattoo (Debug)

红色的就是我们插入usb的ID号。

那么我们进入到cd /etc/udev/rules.d/下,新建一个51-android.rules文件(sudo  vim  51-android.rules),在这个文件中写上:

SUBSYSTEM=="usb", ATTRS{idVendor}==" 0bb4", ATTRS{idProduct}=="0c02",MODE="0666"

保存,再为51-android.rules加上权限(sudo chmod a+x 51-android.rules).

拔掉usb重新插上就可以了,如:

xxnan@xxnan-pt:~$ adb devices
List of devices attached 
AB100607    device

这样就解决了不能识别USB的问题。
--------------------- 
作者:xxnan 
来源:优快云 
原文:https://blog.youkuaiyun.com/xiaxiangnanxp1989/article/details/8605611 
版权声明:本文为博主原创文章,转载请附上博文链接!

 

2.----------------------------解决安卓 linux adb 连接机器提示 no permissions 的问题---------------

问题:

adb devices
no permission (user xxx is not in the plugdev group); see [http://developer.android.com/tools/device.html]

解决办法:

cd /etc/udev/rules.d/
sudo vim 51-android.rules
输入如下内容:
# udev rule to detect android devices
# These rules refer to http://developer.android.com/tools/device.html
# Acer
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666", GROUP="plugdev"
# Archos
SUBSYSTEM=="usb", ATTR{idVendor}=="0e79", MODE="0666", GROUP="plugdev"
# Asus
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666", GROUP="plugdev"
# Azpen Onda
SUBSYSTEM=="usb", ATTR{idVendor}=="1f3a", MODE="0666", GROUP="plugdev"
# BQ
SUBSYSTEM=="usb", ATTR{idVendor}=="2a47", MODE="0666", GROUP="plugdev"
# Dell
SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666", GROUP="plugdev"
# Fairphone
SUBSYSTEM=="usb", ATTR{idVendor}=="2ae5", MODE="0666", GROUP="plugdev"
# Foxconn
SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666", GROUP="plugdev"
# Fujitsu Toshiba    
SUBSYSTEM=="usb", ATTR{idVendor}=="04c5", MODE="0666", GROUP="plugdev"
# Garmin-Asus
SUBSYSTEM=="usb", ATTR{idVendor}=="091e", MODE="0666", GROUP="plugdev"
# Genesys
SUBSYSTEM=="usb", ATTR{idVendor}=="d324", MODE="0666", GROUP="plugdev"
# Google
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
# Haier
SUBSYSTEM=="usb", ATTR{idVendor}=="201e", MODE="0666", GROUP="plugdev"
# Hisense
SUBSYSTEM=="usb", ATTR{idVendor}=="109b", MODE="0666", GROUP="plugdev"
# HTC, Wiko
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"
# Huawei
SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666", GROUP="plugdev"
# Intel
SUBSYSTEM=="usb", ATTR{idVendor}=="8087", MODE="0666", GROUP="plugdev"
# K-Touch
SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666", GROUP="plugdev"
# KT Tech
SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666", GROUP="plugdev"
# Kyocera
SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666", GROUP="plugdev"
# Lab126
SUBSYSTEM=="usb", ATTR{idVendor}=="1949", MODE="0666", GROUP="plugdev"
# Lenovo
SUBSYSTEM=="usb", ATTR{idVendor}=="17ef", MODE="0666", GROUP="plugdev"
# LG
SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666", GROUP="plugdev"
# Mad Catz
SUBSYSTEM=="usb", ATTR{idVendor}=="0738", MODE="0666", GROUP="plugdev"
# Meizu
SUBSYSTEM=="usb", ATTR{idVendor}=="2a45", MODE="0666", GROUP="plugdev"
# Micromax
SUBSYSTEM=="usb", ATTR{idVendor}=="1ebf", MODE="0666", GROUP="plugdev"
# Motorola
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666", GROUP="plugdev"
# MTK
SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", MODE="0666", GROUP="plugdev"
# NEC
SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666", GROUP="plugdev"
# Nokia
SUBSYSTEM=="usb", ATTR{idVendor}=="0421", MODE="0666", GROUP="plugdev"
# Nook
SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666", GROUP="plugdev"
# Nvidia
SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666", GROUP="plugdev"
# OnePlus Two (unknown vendor's name)
SUBSYSTEM=="usb", ATTR{idVendor}=="2a70", MODE="0666", GROUP="plugdev"
# Oppo
SUBSYSTEM=="usb", ATTR{idVendor}=="22d9", MODE="0666", GROUP="plugdev"
# OTGV
SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666", GROUP="plugdev"
# Pantech
SUBSYSTEM=="usb", ATTR{idVendor}=="10a9", MODE="0666", GROUP="plugdev"
# Pegatron
SUBSYSTEM=="usb", ATTR{idVendor}=="1d4d", MODE="0666", GROUP="plugdev"
# Philips
SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666", GROUP="plugdev"
# PMC-Sierra
SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666", GROUP="plugdev"
# Qualcomm
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666", GROUP="plugdev"
# Rockcwell Electronics
SUBSYSTEM=="usb", ATTR{idVendor}=="2207", MODE="0666", GROUP="plugdev"
# SK Telesys
SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666", GROUP="plugdev"
# Samsung
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666", GROUP="plugdev"
# Sharp
SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666", GROUP="plugdev"
# Sony
SUBSYSTEM=="usb", ATTR{idVendor}=="054c", MODE="0666", GROUP="plugdev"
# Sony Ericsson
SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666", GROUP="plugdev"
# Spreadtrum
SUBSYSTEM=="usb", ATTR{idVendor}=="1782", MODE="0666", GROUP="plugdev"
# T & A Mobile Phones
SUBSYSTEM=="usb", ATTR{idVendor}=="1bbb", MODE="0666", GROUP="plugdev"
# Teleepoch
SUBSYSTEM=="usb", ATTR{idVendor}=="2340", MODE="0666", GROUP="plugdev"
# Texas Instruments UsbBoot
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", MODE="0666", GROUP="plugdev"
# Toshiba
SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666", GROUP="plugdev"
# Wearners
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666", GROUP="plugdev"
# Wileyfox
SUBSYSTEM=="usb", ATTR{idVendor}=="2970", MODE="0666", GROUP="plugdev"
# XiaoMi
SUBSYSTEM=="usb", ATTR{idVendor}=="2717", MODE="0666", GROUP="plugdev"
# YU
SUBSYSTEM=="usb", ATTR{idVendor}=="1ebf", MODE="0666", GROUP="plugdev"
# Zebra
SUBSYSTEM=="usb", ATTR{idVendor}=="05e0", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", MODE="0666", GROUP="plugdev"
# ZTE
SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", MODE="0666", GROUP="plugdev"
# ZUK
SUBSYSTEM=="usb", ATTR{idVendor}=="2b4c", MODE="0666", GROUP="plugdev"

保存退出。
sudo chmod a+r 51-android.rules  #将此目录下面的所有rules文件加上权限
sudo service udev restart
adb kill-server
adb devices

作者:妖怪来了
链接:https://www.jianshu.com/p/5d91eeb196fe
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

---------------------------------------------Device is locked. Please unlock the device first--------------------------------------------------------------------

3.android O userdebug不能remount 

 

[DESCRIPTION]
     在android P版本上如果按照“FAQ18076 android 6.0 M userdebug版本执行adb remount失败”的做法在userdebug版本上执行adb remount会提示以下错误:
remount of the / superblock failed: Permission denied
remount failed
     原因是android P版本后google启用avb(Android Verified Boot)2.0,verified boot and DM-verity默认启用策略发生了变化。详情如下:
DM-Verity behavior changes from vboot1.0 to avb2.0.
On vboot1.0, dm-verity is turned off on eng build and is enabled on userdebug/user build.
DM-verity could be disabled with adb (not fastboot) on userdebug build without unlocking device first.
DM-Verity could not be disabled on user build.
On avb2.0, dm-verity behavior are the same on all build variants.
It's turned on by default and could only be disabled after device is unlocked.
dm-verity disable flag is moved from system image dm-verity metadata(vboot1.0) to vbmeta image(avb2.0), and you have two ways to disable it: adb and fastboot.
  
 
[SOLUTION]
* Android P + kernel-4.4 or kernel-3.18
- download preloader with verified boot disabled which location is the same as scatter file //preloader_<PROJECT>_SBOOT_DIS.bin
- adb root
- adb disable-verity
- adb reboot
- adb root
- adb remount

* Android P + kernel-4.9 or after
- download preloader with verified boot disabled which location is the same as scatter file. //preloader_<PROJECT>_SBOOT_DIS.bin//这个我out里面没看到,我只执行下面红色部分就可以
- boot to Home Screen
- go to setting -> system -> Developer options -> OEM unlocking
- adb reboot bootloader
- fastboot flashing unlock
- press volume up key
- fastboot reboot
- adb root
- adb disable-verity
- adb reboot
- adb root
- adb remount

---------------------------------9.0      adb连接不了------------error: cannot open '/tmp/adb.1000.log': Permission denied-------

user@wangdh ~ $ adb root
* daemon not running; starting now at tcp:5037
error: cannot open '/tmp/adb.1000.log': Permission denied
ADB server didn't ACK
Full server startup log: /tmp/adb.1000.log
Server had pid: 11641
* failed to start daemon
adb: unable to connect for root: cannot connect to daemon

 

解决方法:是userdebug版本 执行:root

再试就可以了

### 三级标题:权限问题导致设备查找失败 在运行 `uhd_find_devices` 时,只有使用 `sudo` 才能找到 USRP 设备的原因通常与 USB 设备的访问权限有关。USRP 设备通过 USB 接口与主机通信,而 Linux 系统对 USB 设备的访问权限有严格限制。普通用户可能没有足够的权限访问这些设备,因此在没有 `sudo` 的情况下,程序无法与 USRP 设备进行通信,导致设备查找失败。 具体来说,Linux 系统通过 `udev` 规则管理 USB 设备的权限。如果没有为 USRP 设备配置适当的 `udev` 规则,普通用户将无法访问设备。在这种情况下,必须使用 `sudo` 来提升权限,以确保程序可以访问 USB 设备。 可以通过创建自定义的 `udev` 规则文件来解决此问题。例如,创建一个名为 `99-usrp.rules` 的文件,并将其放置在 `/etc/udev/rules.d/` 目录下。文件内容可以包含以下规则,以确保所有用户都可以访问 USRP 设备: ```bash SUBSYSTEM=="usb", ATTR{idVendor}=="2500", MODE="0666" ``` 保存文件后,重新加载 `udev` 规则并重新插拔 USRP 设备: ```bash sudo udevadm control --reload-rules sudo udevadm trigger ``` 完成这些步骤后,普通用户应该能够在使用 `sudo` 的情况下成功运行 `uhd_find_devices` 并找到 USRP 设备。 ### 三级标题:其他可能的原因 除了权限问题外,设备查找失败还可能与 UHD 库的版本有关。如果系统中安装了多个版本的 UHD 库,程序可能会链接到一个较低版本的库,而该版本支持特定的 USRP 设备(如 E320X 系列)。在这种情况下,即使设备物理上连接到主机,程序也无法识别设备。 可以通过以下命令检查系统中安装的 UHD 库版本: ```bash ldconfig -p | grep libuhd ``` 如果发现多个版本的 UHD 库,可以通过调整 `LD_LIBRARY_PATH` 环境变量来确保程序链接到正确的版本。例如: ```bash export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH ``` 此外,还可以通过创建符号链接来指定默认的 UHD 库版本: ```bash sudo ln -sf /usr/local/lib/libuhd.so.3.15.0 /usr/lib/x86_64-linux-gnu/libuhd.so ``` ### 三级标题:驱动文件缺失或路径错误 另一个可能导致设备查找失败的原因是驱动文件缺失或路径错误。UHD 库依赖于特定的 FPGA 镜像文件和驱动文件来与 USRP 设备通信。如果这些文件未正确安装或路径配置错误,程序将无法加载必要的驱动,从而导致设备查找失败。 可以通过以下命令下载并安装所需的驱动文件: ```bash sudo uhd_images_downloader ``` 如果由于网络问题无法下载驱动文件,可以手动下载并解压驱动包,然后将其复制到指定目录: ```bash sudo cp -r /usr/local/share/uhd/images /usr/share/uhd ``` ### 三级标题:相关问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值