linux文件权限有哪些及怎么修改

57次阅读
没有评论

共计 2295 个字符,预计需要花费 6 分钟才能阅读完成。

这篇文章主要介绍“linux 文件权限有哪些及怎么修改”的相关知识,丸趣 TV 小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“linux 文件权限有哪些及怎么修改”文章能帮助大家解决问题。

linux 文件权限有 7 种:1、r 权限,表示可以读该文件的内容;2、w 权限,表示可以修改文件的内容;3、x 权限;4、rw 权限,表示可以对文件进行读写操作;5、wx 权限;6、rx 权限,表示可以读该文件并能执行;7、rwx 权限,表示可读写、执行。

本教程操作环境:linux5.9.8 系统、Dell G3 电脑。

首先我们要想对用户进行权限管理,就要知道如何查看一个文件的权限,我们可以用 ll 命令或者 ls -l 命令查看某个文件的权限,如下图:

我们可以看到使用 ll 命令列出了 /app 下文件的一些信息一共 7 列,这 7 列表示了 /app 下文件的详细信息:

(1) 第一列一共有 11 个字符,第一位显示的是文件类型,linux 下文件一共分为 7 类:

 1.-  普通文件
 2.d  目录文件
 3.b  块设备文件
 4.c  字符设备
 5.l  符号链接文件
 6.p  管道文件
 7.s  套件字文件 

这是 linux 下 7 中不同的文件类型,然后接下来的 9 位就是我们将要介绍到的权限,这 9 位权限分为 3 组,每组 3 位,每位上有两种情况,如上图,第一组是 rwx, 代表的就是可读可写可执行,如果,r 代表可读,如果是 - 就表示不可读,w 代表可写,- 代表不可写,x 代表可执行,- 代表不可执行。这三组权限第一组代表的是文件所有者即 owner 的权限,第二组代表的是文件所有组即 group 的权限,第三组代表的是其他人即 other 的权限。最后一个. 表示的是启用 selinux,这里不再赘述。

 (2) 第二列只有一个数字,表示该文件的连接数,如上 3 就是表示该文件有三个链接。

 (3) 第三列表示的是文件的所有者,即 owner 的名字,如上 root 即是表示该文件属于 root 这个用户。

 (4) 第四列表示的是文件的所有组,即 group 的名字,如上 root 即是表示该文件属于 root 这个群组。

 (5) 第五列表示的是文件的大小。

 (6) 第六列表示文件的更新时间。

 (7) 第七列表示文件名

文件权限

我们对文件能够实现的操作无非就是读,写,执行,以及他们的组合权限:创建,删除,修改(能写自然就能修改);3 位权限,无非就是 r、w、x、rw、rx、wx、rwx 这其中组合。

文件权限有 7 种:

r 权限:表示可以读该文件的内容,使用 cat 或者 less。

w 权限:表示可以修改文件的内容,使用 vim,vi 等。

x 权限:无任何作用。

rw 权限:表示可以对文件进行读写操作。

wx 权限:相当于 w 权限,只能写。

rx 权限:表示可以读该文件并能执行他。

rwx 权限:表示可读,可写,可执行,为最高权限。

如何修改权限,什么人有权利修改文件或者目录的权限呢?

修改权限是通过 chmod 命令完成的。

 对所有者权限修改  chmod u+/-r/x/w/rx/rw/wx/rwx + 文件名
对群组权限修改  chmod g+/-r/x/w/rx/rw/wx/rwx + 文件名
对其他用户权限修改  chmod o+/r/x/w/rx/rw/wx/rwx + 文件名 

同时我们也可以用二进制的方法来表示文件的权限。对于每一组权限,每一位上只有两种可能,即是有或无,我们可以用 1 表示有,0 表示无。就会是下面这样:

r-- 100 =4
\-w- 010 =2
\--x 001 =1
rw- 110 =6
r-x 101 =5
\-wx 011=3
rwx 111=7
\--- 000 =0

因为可以用数字可以来表示权限,那么我们就有了更简单的方法来改变文件的权限:

chmod 777 /app/house

或者 chmod 数字表示的权限 加文件,这样可以一次性改变文件的所有权限。

**    实验看看谁能够修改文件的权限,root 用户是超级用户,是可以修改所有的权限的,此处不再实验 **。

   现在在创建用户 liubei,guanyu,zhangfei,caocao,创建群组 shuguo, 设置群管理员为 guanyu,设置组成员为 liubei,guanyu,caocao; 在 app 下创建目录 test,修改权限为 777,修改所属组为 shuguo,切换用户为刘备,在 /test 下创建一个 test.file,命令如下:

useradd liubei
useradd guanyu
useradd zhangfei
useradd caocao
groupadd shuguo
gpasswd -A guanyu shuguo
gpasswd -M liubei,guanyu,zhangfei
cd /app
mkdir test
chmod 777 test
su - liubei
cd /app/test
touch test.file
ll

结果如下图:

现在 liubei 是 test.file 的 owne,guanyu 是群组 sanguo 的管理员,liubei,zhangfei,guanyu 是 shuguo 的群成员,caocao 是 other 现在测试 owner,群组成员,群管理员,其他人能否修改 test.file 的权限。

liubei 是 owner:

guanyu 是 shuguo 的群管理

zhangfei 是 shuguo 的群成员

caocao 不是 shuguo 的群成员

由此可知只有 root 和文件的所有者能修改文件的权限,别人谁都不能修改。

关于“linux 文件权限有哪些及怎么修改”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注丸趣 TV 行业资讯频道,丸趣 TV 小编每天都会为大家更新不同的知识点。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-03发表,共计2295字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)