您的位置:首页 > 运维架构 > Linux

Linux学习之路——第三章:Linux常用命令(三)权限管理命令

2019-06-03 10:37 441 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/sugar_star/article/details/90737829

Linux学习之路——目录
https://www.geek-share.com/detail/2771040716.html

上节内容:touch、cat、more、less、head、tail、ln
本节内容:chmod、chown、chgrp、umask

三、权限管理命令

还记得我们在使用ls -l命令查看文件详细信息时,提到过文件的三类权限,现在我们就来详细说说怎样管理这些权限。

1.chmod

change the permissions mode of a file
chomd命令能够改变文件或目录的权限设置,其选项有:
-R:		递归修改(和创建目录中的递归创建一个意思)

使用touch命令在tmp目录下创建一个空白文件,然后查看它的信息:
其中,所有者(u,user)有读写权限(rw-),所属组(g,group)有读权限(r–),其他人(o,other)有读权限(r–)。

(1)

输入chmod g+w,o-r empty,给所属组增加写权限并收回其他人的读权限:

(2)

除此之外,还可以输入chmod 660 empty达到相同的效果:

这种方法是将rwx权限位看成8421编码的二进制,r = 4,w = 2,x = 1。所有者和所属组具有rw-权限,所以是4 + 2 = 6。

(3)

除了上面讲到的权限修改命令之外,需要注意的是权限所代表的意义:
对目录来说:
r权限——可以查看目录中有哪儿些文件
w权限——能在目录下创建或删除文件
x权限——可以使用cd命令进入目录
对文件来说:
r权限——能够查看文件的内容
w权限——可以修改文件的内容
x权限——能执行文件

也就是说,如果你对一个目录具有w权限,而对该目录下的所有文件没有w权限,你依旧能够删除这些文件。

2.chown、chgrp和umask命令

(1)chown

change file ownership
chown能够改变文件或目录的所有者

在这里我们先用useradd命令(以后会讲到)创建一个新的普通用户(root是唯一的超级用户),用passwd命令设置sugar的登录密码,然后用SecureCRT创建一个新会话,登录sugar这个账号:


我们让sugar查看一下empty文件的内容:
理所当然地被拒绝了。现在输入chown sugar /tmp/empty,将empty文件的所有者改为sugar:
注意到empty文件的所有者已经变为了sugar,现在再让sugar查看empty文件的内容:
这次就没有被拒绝了。

(2)chgrp

change file group ownership
chgrp命令能够改变文件或目录的所属组

在sugar会话中输入chgrp sugar /tmp/empty,将empty文件的所属组改为sugar:
现在empty文件的所有者和所属组都是sugar了,但root用户依然能够查看修改empty文件,甚至还能改变所有者和所属组,因为root用户是超级用户,可以看成是无所不能的,所以在正式使用中,一定要保管好root账号。

(3)umask

the user file-creation mask
umask命令能够显示、设置文件的缺省权限(缺省某种意义上等同于默认),其选项有:
-S:		以rwx形式显示文件的缺省权限

我们创建empty文件的时候,发现它已经设置好了所有者、所属组、其他人对应的权限,这是因为系统自动赋予的,而umask命令就可以查看系统默认的权限设置是什么。我们输入umask命令看一下:
可以看到使用umask命令和带选择的umask命令分别显示了0022和u = rwx,g = rx,o = rx。
先说-S的情况,对比empty文件,发现所有人都少了x权限,原因我们前面说过,这是因为empty文件是个空文件,不具有可执行性,所以系统没有赋予用户x权限,但我们可以通过chmod强行添加x权限。
然后是不带选项时显示了0022,先看后面3个数字022,如果我们把u = rwx,g = rx,o = rx转化为8421编码的二进制数字就是755,而rwxrwxrwx是777,umask显示的就是两者异或的部分。

r w x r w x r w x
1 1 1 1 1 1 1 1 1
r w x r - x r - x
1 1 1 1 0 1 1 0 1
- - - - w - - w -
0 0 0 0 1 0 0 1 0

而0022中的第一个0,就是指的超级权限,详细情况后面会讲到。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: