目录与问价之权限的意义

  • 权限对文件的重要性

文件是实际含有数据的地方,包括一般文本文件、数据库内容文件、二进制可执行文件(binary program)等等。 因此,权限对于文件来说,他的意义是这样的:

  • r (read):可读取此一文件的实际内容,如读取文本文件的文字内容等;
  • w (write):可以编辑、新增或者是修改该文件的内容(但不含删除该文件);
  • x (execute):该文件具有可以被系统执行的权限。

那个可读(r)代表读取文件内容是还好了解,那么可执行(x)呢?这里你就必须要小心啦! 因为在Windows底下一个文件是否具有执行的能力是藉由『 扩展名 』来判断的, 例如:.exe, .bat, .com 等等,但是在Linux底下,我们的文件是否能被执行,则是藉由是否具有『x』这个权限来决定的!跟档名是没有绝对的关系的!

至于最后一个w这个权限呢?当你对一个文件具有w权限时,你可以具有写入/编辑/新增/修改文件的内容的权限, 但并不具备有删除该文件本身的权限!对于文件的rwx来说, 主要都是针对『文件的内容』而言,与文件档名的存在与否没有关系喔!因为文件记录的是实际的数据嘛!

  • 权限对目录的重要性

文件是存放实际数据的所在,那么目录主要是储存啥玩意啊?目录主要的内容在记录文件名列表,文件名与目录有强烈的关连啦! 所以如果是针对目录时,那个 r, w, x 对目录是什么意义呢?

  • r (read contents in directory):

    表示具有读取目录结构列表的权限,所以当你具有读取(r)一个目录的权限时,表示你可以查询该目录下的文件名数据。 所以你就可以利用 ls 这个指令将该目录的内容列表显示出来!

  • w (modify contents of directory):

    这个可写入的权限对目录来说,是很了不起的! 因为他表示你具有异动该目录结构列表的权限,也就是底下这些权限:

    • 建立新的文件与目录;
    • 删除已经存在的文件与目录(不论该文件的权限为何!)
    • 将已存在的文件或目录进行更名;
    • 搬移该目录内的文件、目录位置。

    总之,目录的w权限就与该目录底下的文件名异动有关就对了啦!

  • x (access directory):

    咦!目录的执行权限有啥用途啊?目录只是记录文件名而已,总不能拿来执行吧?没错!目录不可以被执行,目录的x代表的是用户能否进入该目录成为工作目录的用途! 所谓的工作目录(work directory)就是你目前所在的目录啦!举例来说,当你登入Linux时, 你所在的家目录就是你当下的工作目录。而变换目录的指令是『cd』(change directory)啰!

大致的目录权限概念是这样,底下我们来看几个范例,让你了解一下啥是目录的权限啰!

例题:

有个目录的权限如下所示:

drwxr--r--  3  root  root  4096   Jun 25 08:35   .ssh

系统有个账号名称为vbird,这个账号并没有支持root群组,请问vbird对这个目录有何权限?是否可切换到此目录中?

答:

vbird对此目录仅具有r的权限,因此vbird可以查询此目录下的文件名列表。因为vbird不具有x的权限, 因此vbird并不能切换到此目录内!(相当重要的概念!)

例题:

假设有个账号名称为dmtsai,他的家目录在/home/dmtsai/,dmtsai对此目录具有[rwx]的权限。 若在此目录下有个名为the_root.data的文件,该文件的权限如下:

-rwx------ 1 root  root  4365 Sep 19 23:20  the_root.data

请问dmtsai对此文件的权限为何?可否删除此文件?

答:

如上所示,由于dmtsai对此文件来说是『others』的身份,因此这个文件他无法读、无法编辑也无法执行, 也就是说,他无法变动这个文件的内容就是了。

但是由于这个文件在他的家目录下, 他在此目录下具有rwx的完整权限,因此对于the_root.data这个『档名』来说,他是能够『删除』的! 结论就是,dmtsai这个用户能够删除the_root.data这个文件!

时间: 2024-11-09 03:58:18

目录与问价之权限的意义的相关文章

LINUX:浅谈目录与普通文件权限的意义

目录和常规文件一样使用相同的权限位进行标识,但是它们的翻译不同. 目录的读权限允许用户使用该权限列出目录内容. 写权限意味着用户使用该权限能够在目录 中创建或者删除文件. 执行权限允许用户输入目录并访问任意子目录.没有执行权限,目录下的文件系统对象就是不可访问的. 没有读权限,目录下的文件系统对象 在目录清单下就是不可见的,但是如果知道磁盘上对象的完整路径,这些对象仍是可访问的. 目录与普通文件的权限意义并不相同,这是因为目录与文件所记录的数据内容不相同导致. 对于普通文件的权限: r(read

Android开发学习---android下的数据持久化,保存数据到rom文件,android_data目录下文件访问的权限控制

一.需求 做一个类似QQ登录似的app,将数据写到ROM文件里,并对数据进行回显. 二.截图 登录界面: 文件浏览器,查看文件的保存路径:/data/data/com.amos.datasave/files/LoginTest.txt------/data/data/(包名)/files/(文件名) 导出的文件内容: 三.实现代码 新建一个Android 工程.这里我选择的是2.1即API 7,进行开发的,其它都是默认下一步下一步即可. /datasave/res/layout/activity

18.1.2-linux目录文件隐藏属性和特殊权限

18.1.2 linux目录文件隐藏属性和特殊权限 内容: 1.linux权限查看 计算  修改 2.文件和目录rwx含义 3.各种权限拒绝错误排查4.如何让网站通过权限控制 尽量安全5.通过umask计算默认的权限 6.文件系统的属性(隐藏属性) 7.linux特殊权限 suid , 粘滞位(/tmp) 第1章 网站权限-通过控制权限让网站安全 1.1 文件或目录安全  (比较安全的权限) file    rw-r--r--    root  root   oldboy.txt dir    

19、vftpd基于PAM_MYSQL进行虚拟用户的认证且每个用户有自己的独立目录及不同的访问权限

1.vsftp相关介绍FTP 是File Transfer Protocol(文件传输协议)的英文简称 两个连接:命令连接.数据连接(相对服务器来讲)FTP连接支持两种模式:主动模式(Port模式).被动模式(Passive模式)主动模式:服务器端通过20端口主动连接客户端,客户端监听在与服务器端建立命令连接的端口+1上,服务器工作在TCP/20被动模式:客户端使用自己与服务器端建立命令连接的端口+1上连接服务器端的随机端口,该随机端口在建立命令连接的时候已发给客户端 vsftp的用户有三种类型

目录与文件权限的意义区别

这些文件权限对于数据安全的重要性.那么,这些文件权限对于一般文件与目录文件有何不同呢? 1.权限对文件的重要性 文件是实际含有数据的地方,包括一般文本文件.数据库内容档.二进制可可执行文件(binary program)等等. 因此,权限对于文件来说,他的意义是这样的: r (read):可读取此一文件的实际内容,如读取文本文件的文字内容等: w (write):可以编辑.新增或者是修改该文件的内容(但不含删除该文件): x (eXecute):该文件具有可以被系统执行的权限. 那个可读(r)代

目录的rwx权限的意义

1.目录的r:列举查看目录下的内容 2.目录的w:向目录中写东西,如创建文件 3.目录的x:可以cd进去 例:查看/etc/passwd内容: `:对/有rx权限 `:对/etc/有rx权限 `:对/etc/passwd有r权限

linux 权限管理命令chmod、文件和目录的权限的意义

chmod /bin/chmod chmod [{ugoa}{+-=}{rwx}] [文件或目录]chmod [mode=421] [文件或目录]-R 递归修改 只有 root 和 所有者 可以修改一个文件或目录的权限 u所有者 g所属组 o其它人 a所有人 chmod u+x 文件名chmod u+x,o-r 文件名chmod g=rwx 文件名 r -- 4, w -- 2, x -- 1 chmod 760 文件名 root用户: mkdir -p /temp/test.dirtouch

linux中权限的意义

1.权限对文件的意义: 读:可查看文件的内容 写:可修改文件的内容(但不能删除文件) 执行:可执行文件 2.权限对目录的意义: 读:可以查看目录下的内容,即可以读取该目录下的结构列表 写:可修改目录下的内容(新增.删除文件或重命名文件) 执行:可进入该目录作为当前工作目录 文件默认权限最大值为666,目录默认最大权限为777 如果umask为0022,则新建的文件权限为默认最大值减去umask即644,新建的目录权限为默认最大值减去umask即755 原文地址:https://www.cnblo

shell判断文件,目录是否存在或者具有权限 (转载)

转自:http://cqfish.blog.51cto.com/622299/187188 文章来源:http://hi.baidu.com/haigang/blog/item/e5f582262d639c118b82a167.html #!/bin/sh myPath="/var/log/httpd/" myFile="/var /log/httpd/access.log" #这里的-x 参数判断$myPath是否存在并且是否具有可执行权限 if [ ! -x &