adb pull  Permission denied及no such file错误

http://www.the8m.com/blog/article/javadk/adbpull.html

XP系统中,运行中输入CMD,进入;

adb pull /data/data/com.android.providers.contacts/contacts2.db  d:\tt\contacts2.db

显示Permission denied错误(提示无权限)

解决:

adb shell

进入后输入:

chmod 644 /data/data/com.android.providers.contacts/contacts2.db

将(UGO)中的O改成了4,即读权限...

再退出adb shell(切记,是退出!ADB shell,否则会引起下个错误即no such file or directory)

再运行 adb pull .................下载成功!

再进入adb shell

chmod 640 /data/data/com.android.providers.contacts/contacts2.db

把权限改回去.

对于第二个错误,原因是你在adb shell下运行的pull ,android虚机或者你手机里肯定没有D盘或者C盘,肯定会出错.

记得要在XP系统下的CMD里运行,才会拷成功...!

在Unix和Linux的各种操作系统下,每个文件(文件夹也被看作是文件)都按读、写、运行设定权限。
例如我用ls -l命令列文件表时,得到如下输出:
-rw-r--r-- 1 apple users 2254 2006-05-20 13:47 tt.htm
从第二个字符起rw-是说用户apple有读、写权,没有运行权,接着的r--表示用户组users只有读权限,没有运行权,最后的r--指其他人
(others)只有读权限,没有写权和运行权。这是系统默认设置,我可以改写tt.htm,同组的人和其他人只有权读,没人有权运行,因为只是一个
html文件,不必运行。这在Novell的directory services之前很先进。
读、写、运行三项权限可以用数字表示,就是r=4,w=2,x=1。所以,上面的例子中的rw-r--r--用数字表示成644。
反过来说777就是rwxrwxrwx,意思是该登录用户(可以用命令id查看)、他所在的组和其他人都有最高权限。
再多说一句。我用chmod o-r tt.htm命令改权限,o-r是others的权限中减掉读。结果是
-rw-r----- 1 bu users 2254 2006-05-20 13:47 tt.htm
如果用命令chmod 777 tt.htm,结果是
-rwxrwxrwx 1 bu users 2254 2006-05-20 13:47 tt.htm
任何人都有读、写、运行三项权限。

---------------------------------------------
指令名称 : chmod

  使用权限 : 所有使用者
  使用方式 : chmod [-cfvR] [--help] [--version] mode file...
  说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所存取。

  参数格式 :

  mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中

  u : 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
  + :  表示增加权限、- 表示取消权限、= 表示唯一设定权限。
   r : 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。 -c : 若该档案权限确实已经更改,才显示其更改动作
  -f : 若该档案权限无法被更改也不要显示错误讯息
  -v : 显示权限变更的详细资料
  -R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
  --help : 显示辅助说明

  --version : 显示版本

  范例 :将档案 file1.txt 设为所有人皆可读取 :
  chmod ugo+r file1.txt

  将档案 file1.txt 设为所有人皆可读取 :
  chmod a+r file1.txt

  将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
  chmod ug+w,o-w file1.txt file2.txt

  将 ex1.py 设定为只有该档案拥有者可以执行 :
  chmod u+x ex1.py

  将目前目录下的所有档案与子目录皆设为任何人可读取 :
  chmod -R a+r *

  此外chmod也可以用数字来表示权限如 chmod 777 file

  语法为:chmod abc file

  其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。

  r=4,w=2,x=1

  若要rwx属性则4+2+1=7;
  若要rw-属性则4+2=6;
  若要r-x属性则4+1=7。

  范例:
  chmod a=rwx file 和chmod 777 file效果相同

  chmod ug=rwx,o=x file和chmod 771 file效果相同

  若用chmod 4755 filename可使此程式具有root的权限

第一个标志集指定对谁授权或对谁拒绝指定的许可权,如下所述:

u 文件所有者。
g 文件组固有的组和扩展 ACL 条目。
o 所有其它条目。
a 用户、组和所有其它条目。a 标志具有与一起指定 ugo 标志相同的效果。如果不指定这些标志,则缺省值为 a 标志,并应用文件创建掩码(umask)。

第二个标志集指定是否要除去、应用或设置许可权:

- 除去指定的许可权。
+ 应用指定的许可权。
= 清除选定的许可权字段并将其设置为指定的许可权。如果不指定 = 之后的许可权,chmod 命令从选定的字段除去所有许可权。

第三个标志集指定要除去、应用或设置的许可权:

r 读许可权。
w 写许可权。
x 对于文件的执行许可权;对于目录的搜索许可权。
X 如果当前的(未修改的)方式位设置了至少一个用户、组或其它执行位,则执行文件的许可权。如果指定了 File 参数并且在当前的方式位中未设置任何执行位,则忽略 X 标志。

搜索目录的许可权。

s 如果指定或隐含 u 标志,则设置执行时的用户标识许可权。如果指定或隐含 g 标志,则设置执行时的组标识许可权。
t 对于目录,它表示只有文件所有者可以链接或取消链接指定目录中的文件。对于文件,它设置 save-text 属性。

数字或完全方式

chmod 命令还允许您对该方式使用八进制表示法。数字方式是一个或多个以下值的摘要:

读:4 写:2 执行:1

777 = -rwxrwxrwx

644 = -rw-rw----

  1. 要将许可权类型添加到几个文件:

    chmod  g+w  chap1  chap2

    这将组成员的写权限添加到文件 chap1chap2

  2. 要立即进行几个许可权更改:
    chmod  go-w+x  mydir

    这拒绝组成员和其他人创建或删除 mydir(go-w)中的文件的许可权,并允许组成员和其他人搜索 mydir 或在路径名(go+x)中使用它。这等价于命令序列:

    chmod  g-w  mydir
    chmod  o-w  mydir
    chmod  g+x  mydir
    chmod  o+x  mydir
  3. 要只允许所有者将 shell 步骤用作命令:
    chmod  u=rwx,go= cmd

    这授权文件(u=rwx)所有者读、写和执行许可权。它还拒绝组和其他人以任何方式(go=)访问 cmd 的许可权。

    如果具有执行 cmd shell 命令文件的许可权,则可以通过输入以下命令运行它:

    cmd

    注:取决于 PATH shell 变量,可能需要指定 cmd 文件的全路径。

  4. 要使用设置标识(Set-ID)方式:
    chmod  ug+s  cmd

    在执行 cmd 命令时,有效的用户标识和组标识设置为那些拥有 cmd 文件的所有者。只更改与运行 cmd 命令的子进程关联的有效标识。 shell 会话的有效标识保留不更改。

    此功能允许您可以访问受限制的文件。假定 cmd 程序启用了“设置用户标识(Set-User-ID)方式”并为名为 dbms 的用户所拥有。实际上,用户 dbms 不是一个人,但可能与数据库管理系统关联。用户 betty 不具有访问任何 dbms 的数据文件的许可权。然而,她具有执行 cmd 命令的许可权。当她这样做时,她的有效用户标识临时更改为 dbms,因此 cmd 程序可以访问用户 dbms 拥有的数据文件。

    这种方式下,用户 betty 可以使用 cmd 命令访问数据文件,但她不会在使用标准 shell 命令的过程中意外地破坏它们。

  5. 要使用 chmod 命令的完全方式格式:
    chmod  644  text

    这设置所有者的读和写许可权,并且它对组和其他用户设置只读方式。这还除去可能与文件关联的所有扩展 ACL。

  6. 要递归地降序目录并更改给予树结构的文件和目录许可权:

    ./dir1/dir2/file1

    ./dir1/dir2/file2

    ./dir1/file1

    请输入此命令序列:

    chmod -R 777 f*

    这将更改 ./dir1/file1 的许可权。

    但对于以下树结构:

    ./dir1/fdir2/file1

    ./dir1/fdir2/file2

    ./dir1/file3

    命令序列:

    chmod -R 777 f*

    将更改以下内容的许可权:

    ./dir1/fdir2

    ./dir1/fdir2/file1

    ./dir1/fdir2/file2

    ./dir1/file3

4000 设置执行时的用户标识。
2000 设置执行时的组标识。
1000 对于目录设置链接许可权或对于文件设置 save-text 属性。
0400 允许所有者读。
0200 允许所有者写。
0100 允许所有者执行或搜索。
0040 允许组读。
0020 允许组写。
0010 允许组执行或搜索。
0004 允许其他人读。
0002 允许其他人写。
0001 允许其他人执行或搜索。
4000 设置执行时的用户标识。
2000 设置执行时的组标识。
1000 对于目录设置链接许可权或对于文件设置 save-text 属性。
0400 允许所有者读。
0200 允许所有者写。
0100 允许所有者执行或搜索。
0040 允许组读。
0020 允许组写。
0010 允许组执行或搜索。
0004 允许其他人读。
0002 允许其他人写。
0001 允许其他人执行或搜索
4000 设置执行时的用户标识。
2000 设置执行时的组标识。
1000 对于目录设置链接许可权或对于文件设置 save-text 属性。
0400 允许所有者读。
0200 允许所有者写。
0100 允许所有者执行或搜索。
0040 允许组读。
0020 允许组写。
0010 允许组执行或搜索。
0004 允许其他人读。
0002 允许其他人写。
0001 允许其他人执行或搜索

[转]adb pull Permission denied及no such file错误的更多相关文章

  1. SSH方式登录github出现Permission denied (publickey)

    今天在公司上传了代码,回到家pull,结果竟然出现了“Permission denied (publickey)“这种东西.第一反应是key不对,可是上次明明用key登录过,不可能不对啊,难道是文件被 ...

  2. 如何解决 Django中出现的 [Errno 13] Permission denied问题

    环境:linux 如果你使用了Apache部署了Django项目,在上传文件时可能会出现 “[Errno 13] Permission denied:某目录”的错误. 这是因为apache没有权限在该 ...

  3. adb pull 与 push

    adb pull <remote> <local> Copies a specified file from an emulator/device instance to yo ...

  4. lsnrctl: .... cannot restore segment prot after reloc: Permission denied

    cannot restore segment prot after reloc: Permission denied Table of Contents 1. 错误信息 2. 解决方法 1 错误信息 ...

  5. 讨厌的Permission denied:adb访问手机目录时,怎么处理Permission denied问题

    故事背景 手机某app出现了无响应,我想找到手机anr日志 但我只知道在data目录的某个目录里有个tra**的文件里有anr日志 具体的我真忘了,所以想要进入data中用ls查看一下 结果就出现了讨 ...

  6. adb opendir failed ,permission denied

    做数据库的时候,我手机是htc的,root过的,找数据库db文件一直找不到, 我使用的adb命令ls的时候会提示:adb opendir failed ,permission denied ,解决方法 ...

  7. 【转】adb控台中Permission denied的解决方案

    原文网址:http://blog.csdn.net/wkl305268748/article/details/13504171 [前提]手机一定要root 在控制台中想要将电脑上c盘中的tcpdump ...

  8. Android adb opendir failed ,permission denied

    最近在使用adb命令ls的时候会提示:adb opendir failed ,permission denied , 解决方法: adb shell cd data/data/pakageName l ...

  9. docker pull报错failed to register layer: Error processing tar file(exit status 1): open permission denied

    近来在一个云主机上操作docker pull,报错如下: failed to register layer: Error processing ): open /etc/init.d/hwclock. ...

随机推荐

  1. jQuery选择器之层次选择器Demo

    测试代码: 02-层次选择器.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...

  2. Java操作文件夹的工具类

    Java操作文件夹的工具类 import java.io.File; public class DeleteDirectory { /** * 删除单个文件 * @param fileName 要删除 ...

  3. 【CSS3】---text-overflow 与 word-wrap

    text-overflow用来设置是否使用一个省略标记(...)标示对象内文本的溢出. 语法: 但是text-overflow只是用来说明文字溢出时用什么方式显示,要实现溢出时产生省略号的效果,还须定 ...

  4. Android 动画学习笔记

    Android动画的两种:Frame帧动画.Tween动画(位移动画)[实现:存放目录res/anim] Tween动画:(位移.缩放.旋转):通过对场景里的对象不断做图像变换. 四种效果Alpha. ...

  5. 九、Android学习笔记_ Android开发中使用软引用和弱引用防止内存溢出

    在<Effective Java 2nd Edition>中,第6条“消除过期的对象引用”提到,虽然Java有 垃圾回收机制,但是只要是自己管理的内存,就应该警惕内存泄露的问题,例如的对象 ...

  6. shell获取本地ip的三种方法

    第一种方法:ifconfig|grep inet |awk '{print $2}'|sed '2d'|awk -F : '{print $2}'第二种方法:ifconfig|grep inet|se ...

  7. cocos2dx-lua之断点调试支持

    cocos2dx 3.2版对cocos code ide支持已经相当棒了,不过话说,编辑器用起来感觉没有sublime顺手 支持cocos code ide已经支持创建lua项目了,可是默认创建的项目 ...

  8. 使用wordpress自带ajax方法

    css3 提示只适用于高级浏览器: ChromeFirefoxSafariIE9+ valid.invalid.required的定义 代码如下 复制代码 input:required, input: ...

  9. 表情键盘及文字表情识别简单demo

    1.前言 了解了简单图文混排 (属性字符串的使用)及 正则表达式的部分知识,为了加深印象,写了个简单表情键盘demo 展示文字用的是 UITextView 由于时间匆忙,存在一些bug,以及不完善的地 ...

  10. 理解C#系列 / 核心C# / 数据类型

    数据类型 数据类型 C#把数据类型分为两种:值类型和引用类型. 值类型和引用类型 值类型的变量直接指向存储的值,引用类型的变量指向值的引用.[理解:引用就像一个柜子的号码牌,可以顺藤摸瓜找到柜子.假如 ...