共计 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 小编每天都会为大家更新不同的知识点。