Linux:文件权限详解及修改方法

这篇具有很好参考价值的文章主要介绍了Linux:文件权限详解及修改方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、Linux文件权限

1.1、如何查看到文件权限

使用ls -l或者ll指令可以直接查看到如下的标记,这些标记代表的相关文件或文件夹的权限类型及所属:

linux更改文件夹的权限,Linux,linux,运维,服务器

其中分四段:

  • 第一段,为文件/文件夹权限,其中首个bit位字符为文件类型,一共有如下的七种:前三种为常见类型
类型 说明
- 普通文件。
d 目录,字母ddirtectory(目录)的缩写。
l 符号链接。请注意,一个目录或者说一个文件夹是一个特殊文件,这个特殊文件存放的是其他文件和文件夹的相关信息。
b 块设备文件。
c 字符设备文件。
p 管道文件
s 套接口文件

像类型为文件,如下面这种:

linux更改文件夹的权限,Linux,linux,运维,服务器

之后跟随的会有9个bit位,分别代表不同的权限类型,后续再进一步讨论。

  • 第二段,为文件/子目录的链接数量

像上述的文件结果中,1表示有一个硬链接指向文件python.gram,一般来说文件类型均为1。如果为文件夹类型则表示的是链接的子目录个数。

  • 第三段,为权限所属用户

表示拥有当前文件或目录的用户。

  • 第四段,为权限所属群组

表示所属的群组(group)。群组下的每一个使用者都具有该文件\路径的控制权限,一个用户可以拥有一个以上的组,大部分都只属于1个群组。

1.2、ll命令介绍

在Ubuntu中默认不含ll命令,其实质为ls -l的别名,我们可以通过修改环境变量自行添加:

# 切换管理员模式
su
# 修改系统环境变量
vim ~/.bashrc

添加或将下面这一段去掉注释:

linux更改文件夹的权限,Linux,linux,运维,服务器

修改完成之后,使环境变量生效:

source ~/.bashrc

linux更改文件夹的权限,Linux,linux,运维,服务器

**注:**root环境变量和普通用户环境变量不共通,使用ll指令,不同用户下需单独修改。

2、权限分类

2.1、文件权限

在文件类型字节位后,紧接着的3*3个字符分3组,各表示不同角色对此文件的读®、写(w)、执行权限(x)

  • 第一段:3bit,对应**文件所有者(owner)**的权限
- rwx --- ---    对应文件所有者(owner)拥有读写及执行权限,设定值为700,其值等于下面三项值相加
- r-- --- ---    对应文件所有者(owner)拥有读权限,设定值为400
- -w- --- ---    对应文件所有者(owner)拥有写权限,设定值为200
- --x --- ---    对应文件所有者(owner)拥有执行权限,设定值为100
  • 第二段:3bit,对应**文件所属用户群组(group)**的权限
- --- rwx ---    对应文件所属群组(owner)拥有读写及执行权限,设定值为070,其值等于下面三项值相加
- --- r-- ---    对应文件所属群组(owner)拥有读权限,设定值为040
- --- -w- ---    对应文件所属群组(owner)拥有写权限,设定值为020
- --- --x ---    对应文件所属群组(owner)拥有执行权限,设定值为010
  • 第三段:3bit,对应**其他用户(others)**的权限
- --- --- rwx    对应其他用户(others)对文件拥有读写及执行权限,设定值为007,其值等于下面三项值相加
- --- --- r--    对应其他用户(others)对文件拥有读写及执行权限,设定值为004
- --- --- -w-    对应其他用户(others)对文件拥有读写及执行权限,设定值为002
- --- --- --x    对应其他用户(others)对文件拥有读写及执行权限,设定值为001

上述权限对应下来则为八进制码表,二进制码的计算顺序为从右往左:

八进制位 权限 权限符号 二进制位
7 读\写\执行 rwx 111
6 读\写 rw- 110
5 读\执行 r-x 101
4 r– 100
3 写\执行 -wx 011
2 -w- 010
1 执行 –x 001
0 无权限 000

举例:

权限符号为rw-,其二进制位为110,则二进制转为八进制为,计算顺序为从右往左: 2 0 2^0 20+ 2 1 2^1 21+ 2 1 2^1 21=6,即r为2号位值为1,w为1号为值为1,-为0号位值为0。

2.2、文件夹权限

文件夹的权限标识与文件相同,但所具有的含义不一样,对应如下:

  • r:能够浏览目录信息,包括目录名称及所含文件等信息。无权限时无法查看对应内容

linux更改文件夹的权限,Linux,linux,运维,服务器

  • w:能够删除新增或修改目录中的文件或目录。无权限时限制删除新增等操作

linux更改文件夹的权限,Linux,linux,运维,服务器

  • x:当具有x权限时,能够进入该目录。无权限时被限制进入

linux更改文件夹的权限,Linux,linux,运维,服务器

3、权限修改

3.1、修改文件/文件夹权限

1)chmod指令

chmod修改文件权限:

chmod [选项] 权限 文件名/文件夹名

[选项]为可选,支持以下常用参数:

参数 作用
-c 改变权限成功后再输出成功信息
-R 递归处理所有子文件
-f 改变权限失败后不显示错误信息
-v 显示执行过程详细信息

示例:

# 设置文件夹权限为770:文件所有者和用户群组有读\写\执行权限,其他用户无权限
chmod 770 testDir
# 设置文件权限为707:文件所有者和其他用户有读\写\执行权限,用户群组无权限
chmod 707 testfile

linux更改文件夹的权限,Linux,linux,运维,服务器

**注:只有文件所有者(owner)或管理员(root)**才允许修改文件权限。

2)chmod指令符号

在chmod指令中,可以使用用户表示符和权限控制符号来简化指令,更为的清晰,其对应的不同符号如下:

  • 用户表示符
用户表示符 说明
u 所有者
g 拥有者同组用户
o 其它用户
a 所有用户
  • 权限操作符
权限操作符 含义
+ 表示添加权限
- 表示移除权限
= 表示设置权限为特定的值
  • 权限符号
符号 含义
r 读取权限
w 写入权限
x 执行权限

组合使用举例:

# 给文件file.txt的所有者(u)增加读取(+r)权限
chmod u+r file.txt
# 从文件file.txt的拥有者同组用户(g)中移除写入(-w)权限
chmod g-w file.txt
# 给目录directory的其他用户(o)增加执行(+x)权限
chmod o+x directory
# 给文件file.txt的所有用户(a)设置读取和写入权限
chmod a=rw file.txt

3.2、修改文件/文件夹所属用户

chown修改文件/文件夹所属的用户:

chown [选项] 新所属用户名 文件名/文件夹名

chown常用的[选项]参数:

常用参数 描述
-R, --recursive 递归地更改指定目录及其子目录中所有文件和目录的所有者。
--reference=RFILE 把指定文件的拥有者和用户组应用到其他文件, RFILE为参考文件。
--from=CURRENT_OWNER[:CURRENT_GROUP] 仅在文件的当前所有者或用户组匹配指定的值时才更改文件的所有者和/或用户组。
--preserve-root 不允许在 “/” 上递归操作
-v, --verbose 显示详细的操作信息。

示例:

# 将file.txt文件所属用户修改为用户miniboy
chown miniboy file.txt

linux更改文件夹的权限,Linux,linux,运维,服务器

**注:**所修改的新用户,为存在的用户,否则会执行失败,提示无效用户。

--from=CURRENT_OWNER[:CURRENT_GROUP]参数使用举例:当匹配到对应的所有者/用户组时才进行修改

# 当file.txt的当前所有者是olduser,用户组是oldgroup时,才将其所有者更改为newuser,用户组更改为newgroup
chown --from=olduser:oldgroup newuser:newgroup file.txt

3.3、修改文件/文件夹所属群组

chgrp更改文件或文件夹所属用户组(group):

chgrp [选项] 用户组名 文件名/文件夹名

在[选项]参数方面与chown类似,常用参数如下:

参数 描述
-R, --recursive 递归地更改指定目录及其子目录中所有文件和目录的所属用户组。
--reference=RFILE 把指定文件的用户组应用到其他文件。
--preserve-root 不要跨越文件系统的边界,这对于递归操作非常重要。
-v, --verbose 显示详细的操作信息。
--dereference 在符号链接指向文件本身时,处理符号链接指向的文件而不是符号链接文件本身。

使用示例:

# 将file.txt文件的所属群组修改为newgroup
chgrp newgroup file.txt

chgrp部分修改也能够通过chown来实现,如修改拥有者和所属组:

chown :root file30.txt (修改所属组为root)
chown root:root file30.txt (修改拥有者和所属组为root)

**注:**只有超级用户(root)或者文件的当前所有者才能使用chgrp命令。

4、参考

https://blog.csdn.net/m0_56311933/article/details/123006978

https://www.cnblogs.com/kongzhongqijing/p/3488884.html文章来源地址https://www.toymoban.com/news/detail-854301.html

到了这里,关于Linux:文件权限详解及修改方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何更改 Linux 文件和目录权限?

    在Linux系统中,文件和目录权限是安全性和访问控制的关键组成部分。正确设置文件和目录的权限可以确保只有授权的用户能够读取、写入或执行这些文件和目录。 本文将详细介绍如何在Linux系统中更改文件和目录的权限。 在Linux系统中,每个文件和目录都有一组权限,用于

    2024年02月06日
    浏览(36)
  • linux更改文件的读写执行等权限

    查看权限 ls -al 语法如下: chmod [who] [+ | - | =] [mode] 文件名 命令中各选项的含义为 u 表示“用户(user)”,即文件或目录的所有者。 g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。 o 表示“其他(others)用户”。 a 表示“所有(all)用户”。它是系统默认

    2024年02月10日
    浏览(33)
  • Linux 普通用户创建文件夹(目录)权限不足的解决办法

    Linux 普通用户创建文件夹(目录)权限不足的解决办法。 创建文件夹a 提示无权限,提示 mkdir:cannot create directory \\\'a\\\':permission denied 。 执行此操作的用户对上级目录缺乏相应权限。 1.sudo 创建。 进入上级目录test,修改上级目录的权限,再执行mkdir命令。

    2024年02月04日
    浏览(51)
  • Linux - samba实现Linux与windows文件共享——共享文件夹目标文件访问权限被拒绝解决方案(超详细,看不懂你怪我)

            最近做一个项目,需要用到linux上的内容,于是需要将linux与window共享文件,上网查阅了一些资料,做完了之后,总结一下自己遇到的问题,以及自己是咋解决的,供大家参考。 这里其实只需要一步就可以操作出来,现在我们看一下: 一、打开虚拟机,选择设置

    2024年02月04日
    浏览(49)
  • linux里root用户权限下chmod修改文件却报错:Operation not permitted的解决方法

    root权限。在家目录里有个test的文件夹,但是这里想要用chmod命令修改该文件夹的权限,却报错 chmod: changing permissions of ‘test’: Operation not permitted 可以通过执行以下命令来检查文件系统是否已挂载为只读模式: mount | grep ’ / ’ 该命令将列出根文件系统的详细信息,包括挂载

    2024年04月24日
    浏览(36)
  • Linux 给用户 赋某个文件夹操作的权限(实现三权分立)

    Linux 给用户 赋某个文件夹操作的权限 这里用的ubuntu16.04 linux文件或目录的权限分为,读、写、可执行三种权限。文件访问的用户类别分为,文件创建者、与文件创建者同组的用户、其他用户三类。 添加用户 4 将用户加入到组 #将目录/var/www/html 及其下面的所有文件、子目录的

    2024年02月14日
    浏览(32)
  • Win7 您需要Trustedinstaller 提供的权限才能对此文件夹进行更改

    对系统文件进行修改、删除的操作就会出现这样的情况, 根本原因 就是当前自己账户 没有权限 ,那么 解决的办法 就是 给予自己账户权限 步骤一:进入属性页面 步骤二:进入安全页面,点击“高级”按键 步骤三:进入所有者页面,点击编辑 步骤四:进入 高级安全

    2024年02月04日
    浏览(31)
  • Win10、11 如何更改文件和文件夹的 上次修改日期、创建日期和上次访问日期

       方法 一 :    Removing File Attributes Using Windows File Explorer   使用 Windows 文件资源管理器删除文件属性 如果你想在 Windows 10 上更改上次修改日期或其他文件属性,首先想到的可能是使用Windows 文件资源管理器中文件的“属性”菜单。   不幸的是,这是不可能的。你可

    2024年02月01日
    浏览(51)
  • Linux 修改文件权限命令

    Permission denied,操作的文件没有权限的解决方法: sudo:是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具。 -R:是指用到目录里所有子目录和文件; 777:是指所有用户都拥有的最高权限。 sudo chmod -R 777 后面跟上文件路径。

    2024年01月19日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包