Linux的文件权限和目录配置

版权声明:本文为博主原创文章,转载请声明出处并添加原文链接。 https://blog.csdn.net/azsx02/article/details/78549136

5.1 文件拥有者/群组/其他人

owner/group/others

  • 所有的系统上的账号与一般身份使用者,还有那个 root 的相关信息, 都是记录在/etc/passwd 这个文件内的。
  • 至于个人的密码则是记录在/etc/shadow 这个文件下。
  • 此外,Linux 所有的组名都纪录在/etc/group 内!

这三个文件可以说是 Linux 系统里面账号、密码、群
组信息的集中地。

5.2 Linux的文件权限

5.2.1 Linux的文件属性

ls 是list的意思,而选项 -al 则表示列出所有的文件详细的权限与属性(包含隐藏文件,就是文件名第一个字符为 . 的文件

image

  1. 第一个字符代表文件类型,目录、文件或链接文件等
    • 当为 d 则是目录,例如上表档名为.config的那一行
    • 当为 - 则是文件,例如上表档名为initial-setup-ks.cfg 那一行
    • 若是 l 则表示为链接文件(link file)
    • 若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置)
    • 若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。
  2. 第二部分代表权限

以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表
可写(write)、 x 代表可执行(execute),对于对文件夹则是能否进入该目录。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出
现减号 - 而已。

3.第二栏表示有多少文件名连结到此节点(i-node) :

5.2.1 如何改变文件属性和权限

什么时候要使用 chown 或 chgrp 呢?最常见的例子就是在复制文件给你之外的其他人时。复制行为(cp)会复制执行者的属性与权限

  • chgrp :改变文件所属群组

要被改变的组名必须要在/etc/group 文件内存在才
行,否则就会显示错误!

  • chown :改变文件拥有者

用户必须是已经存在系统中的账
号,也就是在/etc/passwd 这个文件中有纪录的用户名称才能改变。

  • chmod :改变文件的权限, SUID, SGID, SBIT 等等的特性

1.用数字改权限

r:4 
w:2
x:1

owner = rwx = 4+2+1 = 7
group = rwx = 4+2+1 = 7
others= --- = 0+0+0 = 0

chmod 777 .bashrc

2.用符号改权限

 -rwxr-xr-- 这样的权限呢?可以使用 chmod u=rwx,g=rx,o=r filename 来设定

5.2.1 目录与文件的权限的重要性

  • 权限对文件的重要性

Windows 底下一个文件是否具有执行的能力是藉由扩展名来判断的,例如:.exe, .bat, .com 等

但是在 Linux 底下,我们的文件是否能被执行,则是藉由是否具有 x 这个权限来决定的!跟
文件名是没有绝对的关系的!

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

5.2.1 Linux的文件种类和扩展名

  • 文件种类

正规 文件(regular file )

目录(directory)

设备与装置文件(device)

资料接口文件(sockets)

数据输送文件(FIFO, pipe)

  • 扩展名

.sh : 脚本或批处理文件 (scripts),因为批处理文件为使用 shell 写成的,所以扩展名就编成 .sh

Z, .tar, .tar.gz, .zip, *.tgz: 经过打包的压缩文件。这是因为压缩软件分别为 gunzip, tar 等等的,由于不
同的压缩软件,而取其相关的扩展名

.html, .php:网页相关文件,分别代表 HTML 语法与 PHP 语法的网页文件

小结

  • Linux 的每个文件中,可分别给予使用者、群组与其他人三种身份个别的 rwx 权限
  • 群组最有用的功能之一,就是当你在团队开发资源的时候,且每个账号都可以有多个群组的支持
  • 利用 ls -l 显示的文件属性中,第一个字段是文件的权限,共有十个位,第一个位是文件类型, 接下来三个
    为一组共三组,为使用者、群组、其他人的权限,权限有 r,w,x 三种
  • 如果档名之前多一个『 . 』,则代表这个文件为『隐藏档』
  • 若需要 root 的权限时,可以使用 su - 这个指令来切换身份。处理完毕则使用 exit 离开 su 的指令环境。
  • 更改文件的群组支持可用 chgrp,修改文件的拥有者可用 chown,修改文件的权限可用 chmod
  • chmod 修改权限的方法有两种,分别是符号法与数字法,数字法中 r,w,x 分数为 4,2,1
  • 对文件来讲,权限的效能为:
    r:可读取此一文件的实际内容,如读取文本文件的文字内容等;
    w:可以编辑、新增或者是修改该文件的内容(但不含删除该文件);
    x:该文件具有可以被系统执行的权限。
  • 对目录来说,权限的效能为:
    o r (read contents in directory)
    o w (modify contents of directory)
    o x (access directory)
  • 要开放目录给任何人浏览时,应该至少也要给予 r 及 x 的权限,但 w 权限不可随便给
  • 能否读取到某个文件内容,跟该文件所在的目录权限也有关系 (目录至少需要有 x 的权限)。
  • Linux 档名的限制为:单一文件或目录的最大容许文件名为 255 个英文字符或 128 个汉字字符
  • 根据 FHS 的官方文件指出, 他们的主要目的是希望让使用者可以了解到已安装软件通常放置于那个目录下
  • FHS 订定出来的四种目录特色为:shareable, unshareable, static, variable 等四类
  • FHS 所定义的三层主目录为:/, /var, /usr 三层而已
  • 绝对路径文件名为从根目录 / 开始写起,否则都是相对路径的文件名

猜你喜欢

转载自blog.csdn.net/azsx02/article/details/78549136
今日推荐