http://bbs.pediy.com/showthread.php?t=84168
我最初的求助帖,虽然没得到很好的解决,不过还是感谢大家。
菜鸟可以参考下,如果是大牛就别浪费时间看这个帖了。
Cacls(Change Access Control Lists,修改访问权限表)。Windows 中管理员修改用户访问权限的命令。命令语法:
CACLS filename [/T] [/E] [/C] [/G user:perm] [/R user [...]]
[/P user:perm [...]] [/D user [...]]
filename 显示 ACL。
/T 更改当前目录及其所有子目录中
指定文件的 ACL。
/E 编辑 ACL 而不替换。
/C 在出现拒绝访问错误时继续。
/G user:perm 赋予指定用户访问权限。
Perm 可以是: R 读取
W 写入
C 更改(写入)
F 完全控制
/R user 撤销指定用户的访问权限(仅在与 /E 一起使用时合法)。
/P user:perm 替换指定用户的访问权限。
Perm 可以是: N 无
R 读取
W 写入
C 更改(写入)
F 完全控制
/D user 拒绝指定用户的访问。
在命令中可以使用通配符指定多个文件。
也可以在命令中指定多个用户。
缩写:
CI - 容器继承。
ACE 会由目录继承。
OI - 对象继承。
ACE 会由文件继承。
IO - 只继承。
ACE 不适用于当前文件/目录。
由于我对命令行不是很熟悉,所以我先新建了一个test 的文件夹做试验。
mkdir test
cacls test /D everyone
命令完成后,访问test 文件夹受到拒绝。但是命令
cacls test /G admin:F
仍然能够成功执行。执行完后,admin用户能访问test 文件夹里的内容。继续下面的实验:
cd test
mkdir test
cd..
cacls test /D everyone
命令执行完成后,访问test被拒绝,但是如果在URL中输入绝对路径(假如我是在D盘建的test 文件夹):
D:\test\test
能够访问。因为用命令cacls 时没有用到T参数更改子目录权限。
于是我直接在磁盘分区上做试验:
cacls D:\ /D everyone
结果再用命令:
cacls D:\ /G admin:F
恢复访问权限时,发现访问拒绝。直接打URL地址:
D:\test\test
能进去,新建文件,拒绝访问,复制文件,还是拒绝访问。
我D盘所有的数据都丢失了?!!!
找到一个压缩文件,用WINRAR解压到当前目录,成功。为什么WINRAR有权限访问磁盘?我却没有?把所有文件全打包到WINRAR中,再解压到别的地方,数据即提出来了。但是不是每个URL子目录都记得。而且有些文件就是在根目录中的,那那些数据全部丢失了?
找不到解决方案,上google,还是没找到方法。想到了看雪,那里应该有高人指点吧。首先搜了一下cacls ,六个主题,唯一一个比较相近的回复的就是用cacls 解决。另外的是破解,不得不承认我对破解几乎不懂。所以唯有求助了。论坛的氛围还是不错的,很快就有人回复了,不过提到的解决方案似乎都行不通。我又急着需要使用磁盘上的文件。
没办法,先把能动的都拿出来。压缩的时候突然想到一个工具:冰刃。上次就是用冰刃查看加密文件的内容的。
用冰刃看了下磁盘的内容,能够看到文件,而且可以复制出来。把根目录的文件都复制出来,记下了根目录下的文件夹,把盘内的数据全部重新拷了出来,格式化一遍,再重新放回去。
挺麻烦的,以后还得多多小心使用命令行了!
还是要多多学习,能够直接获取权限而不用这么辛苦转移数据就好了。
水平很低!多多向牛人们学习。
如果有错误或者有更好的解决方法请提出来,大家分享。非常感谢。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!