当前位置: 首页 > 编程笔记 >

Linux 文件权限的详细介绍

吕承福
2023-03-14
本文向大家介绍Linux 文件权限的详细介绍,包括了Linux 文件权限的详细介绍的使用技巧和注意事项,需要的朋友参考一下

Linux 的优秀之处就在于它的多用户、多任务的系统。Linux 一般将文件可存取访问的身份分为 3 个类别,分别是 owner、group、others,且 3 种身份各有 read、write、execute 等权限。

权限的三种身份

文件所有者(owner)

用户级别的文件权限,通常为文件的创建者,可以通过 chown 修改文件所有者。

用户组(group)

如果把用户组比作团队,用户就是其中的成员,团队中的队员对于该文件都有相同的权限。可以通过 chgrp 修改文件的用户组。

用户组最有用的功能之一,就是在团队开发资源的时候。两个项目 project1 和 project2 由两个团队开发,则分别给项目分配用户组权限1、2,然后上司同时支持1、2 权限,即:每个账号都可以有多个用户组的支持。

其他人(others)

不是文件所有者而且不属于文件的用户组,就是其他人。

文件权限

定义及查看

在服务器中执行命令以下命令,查看文件相关的信息:

[root@iz2zedcscvry6t0psspzswz ~]# ls -al
total 44
dr-xr-x---. 5 root root 4096 Sep 9 12:11 .
dr-xr-xr-x. 18 root root 4096 Sep 9 12:39 ..
-rw-r--r--. 1 root root  18 Dec 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
drwx------  3 root root 4096 Oct 15 2017 .cache
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
drwxr-xr-x  2 root root 4096 Oct 15 2017 .pip
-rw-r--r--  1 root root  64 Oct 15 2017 .pydistutils.cfg
drwx------  2 root root 4096 Sep 9 12:11 .ssh
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc

以下示例,展示了每一列对应的含义:

文件权限     连接数  文件所有者  用户组   文件大小  修改日期        文件名
drwxr-xr-x   2      root     root    4096    Oct 15  2017   .pip

文件权限部分,drwxr-xr-x 第一个字母代表文件类型,这里的 d 代表目录(directory)。d = 目录, - = 文件, l = 链接文件(linkfile)。

后面以 3 个为一组,第一组 rwx 代表文件所有者权限,第二组 r-x 代表用户组权限,第三组 r-x 代表其他用户权限。

示例中的文件,文件所有者 root 有读写可执行权限,root 用户组的用户有读和可执行权限,其他用户有读和可执行权限。

  • 查看文件创建或修改的具体的日期 : ls -al --full-time
  • 查看 ls 的详细用法: man ls 或 info ls

修改文件权限

  • chgrp(change group):改变文件所属用户组
  • chown(change owner):改变文件所有者
  • chmod(change mod):修改文件的权限

修改用户组

chgrp [-R] dirname/filename

# 将 install.log 的用户组修改为 users
chgrp users install.log

修改文件所有者

chown 可以同时修改文件所属的用户组

chown [-R] 账号名称:组名 文件或目录

# 将 install.log 的用户组和所有者改为 root
chown root:root install.log

改变文件权限

权重分配: r:4 w:2 r:1

# 将文件权限设置为 -rwxr-xr

chmod 754 filename

# 设置一个可执行文件,不让其他人修改

chmod 755 filename # -rwxr-xr-x

符号类型改变文件权限

命令 身份 操作 文件
chmod u g o a +(加入) -(除去) =(设置) r w x 文件或目录

身份解释: u = user, g = group,o = other, a = all

# 让文件拥有执行权限,但不知道原权限
chmod a+x filename

目录与文件的权限意义

Linux 文件是否被执行由 "x" 的权限决定,跟文件名没有绝对的关系。

文件是存放实际数据的所在,目录主要的内容是记录文件名列表。

文件的权限解释

  • r:可以读取文件内容
  • w:可以编辑文件内容
  • x:文件具有被系统执行的权限

目录的权限解释

  • r:查询该目录下的文件名数据(可以用 ls)
  • w:新建、删除、重命名、转义
  • x:能否进入该目录

权限的配置文件

  • 账号信息: /etc/passwd
  • 个人的密码:/etc/shadow
  • 组名:/etc/group

【综合案例】

【题1.1】建立两个用户组group1和group2,以及三个用户dennis、daniel、abigale,并且将前2个用户分配在group1用户组下,后一个分配在group2用户组下

【题1.2】以dennis用户登录,创建一个Hello.html" target="_blank">java文件

【题1.3】以daniel用户登录,观察是否可以访问/home/dennis目录以及读或写其创建的Hello.java文件

【题1.4】以dennis用户登录,修改目录/home/dennis及Hello.java文件的读写权限(更正:修改目录权限的时候,应该使用770,而不是760,否则权限不足)

【题1.5】重复【题1.3】

【题1.6】改变abigale的用户组由group2变为group1

然后,可以使用cat/etc/passwd查看并确定

【参考】

-groupadd组名,在linux中添加组

-vi/etc/group,查看linux中所有组信息,可以看可以编辑

-cat/etc/group,查看linux中所有组信息,只可以看不可以编辑

-useradd‐g组名用户名,创建用户的同时指定将该用户分配到哪个组下

-vi/etc/passwd,查看linux中所有用户信息,可以看可以编辑

-cat/etc/passwd,查看linux中所有用户信息,只可以看不可以编辑

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍Linux 修改 etc/hosts文件详细介绍,包括了Linux 修改 etc/hosts文件详细介绍的使用技巧和注意事项,需要的朋友参考一下  Linux 修改 etc/hosts文件 hosts文件 hosts —— the static table lookup for host name(主机名查询静态表)。 hosts文件是Linux系统上一个负责ip地址与域名快速解析的

  • 本文向大家介绍Linux中改变文件权限的chmod命令详析,包括了Linux中改变文件权限的chmod命令详析的使用技巧和注意事项,需要的朋友参考一下 前言 Linux的chmod命令是用来改变文件权限的,对于文件或者目录的普通权限,共有 3 种,分别为: r:读取; w:写入; x:执行。 今天为大家详细介绍下chmod命令的意义和用法 chmod命令 改变文件权限 一、符号模式 命令格式: c

  • 本文向大家介绍关于linux权限s权限和t权限详解,包括了关于linux权限s权限和t权限详解的使用技巧和注意事项,需要的朋友参考一下 常用权限 linux系统内有档案有三种身份 u:拥有者  g:群组   o:其他人 这些身份对于文档常用的有下面权限: r:读权限,用户可以读取文档的内容,如用cat,more查看 w:写权限,用户可以编辑文档 x:该目录具有可以被系统执行的权限 其他权限 除了读

  • 本文向大家介绍Linux 目录结构详细介绍,包括了Linux 目录结构详细介绍的使用技巧和注意事项,需要的朋友参考一下 初学Linux,首先需要弄清Linux 标准目录结构 / root --- 启动Linux时使用的一些核心文件。如操作系统内核、引导程序Grub等。 home --- 存储普通用户的个人文件 ftp --- 用户所有服务 httpd samba user1 user2 bin -

  • 5.2 Linux 文件权限概念 大致了解了Linux的使用者与群组之后,接着下来,我们要来谈一谈,这个文件的权限要如何针对这些所谓的“使用者”与“群组”来设置呢? 这个部分是相当重要的,尤其对于初学者来说,因为文件的权限与属性是学习Linux的一个相当重要的关卡, 如果没有这部份的概念,那么你将老是听不懂别人在讲什么呢!尤其是当你在你的屏幕前面出现了“Permission deny”的时候,不要

  • 本文向大家介绍python操作xml文件详细介绍,包括了python操作xml文件详细介绍的使用技巧和注意事项,需要的朋友参考一下 关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码。这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件。 一、什么是xml? xml即可扩展标记语言,它可以用来标记数据、定义数据类

  • 本文向大家介绍C++中头文件和源文件详细介绍,包括了C++中头文件和源文件详细介绍的使用技巧和注意事项,需要的朋友参考一下 C++中的头文件和源文件详解 一、C++编译模式 通常,在一个C++程序中,只包含两类文件——.cpp文件和.h文件。其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码;而.h文件则被称作C++头文件,里面放的也是C++的源代码。 C+ +语言支持“分别编译”(

  • 本文向大家介绍Bash中文件描述符的详细介绍,包括了Bash中文件描述符的详细介绍的使用技巧和注意事项,需要的朋友参考一下 前言 Linux将所有内核对象当做文件来处理,系统用一个size_t类型来表示一个文件对象,比如对于文件描述符0就表示系统的标准输入设备STDIN,通常情况下STDIN的值为键盘,如read命令就默认从STDIN读取数据,当然STDIN的值是可以改变的,比如将其改成其他文件,