linux下相关权限的理解

一、什么是权限

  权限是操作系统用来限制资源访问的机制,权限一般分为读、写、执行。系统中每个文件都拥有特定的权限、所属用户及所属组,通过这样的机制来限制哪些用户、哪些组可以对特定的文件进行什么样的操作。每个进程都是以某个用户的身份运行,所以进程的权限与该用户的权限一样,用户的权限越大,该进程所拥有的权限也就越大。

二、目录权限与文件权限

1.用户的分类

  在linux下针对文件权限分为了三类用户分别为:

文件所有者 文件属于谁
文件所属组 文件属于哪个用户组
其他用户 除上方两类之外的用户

2.目录权限

r(可读权限)

用户是否能浏览目录

w(可写权限) 用户是否能够创建或删减目录
x(可执行权限) 用户是否可以进入目录

3.文件权限

r(可读权限) 用户是否能够读取内容
w(可写权限) 用户是否能够修改内容

x(可执行权限)

用户是否能够执行这个文件

  我们可以通过命令ls -l来查看目录下文件的权限,如下图:

  在图片的第一列就列出了文件的权限,权限按照文件所有者、文件所属组和其他用户依次排列。例如第一行,文件所有者拥有读、写、执行权限,文件所属组拥有读和执行的权限,最后其他用户拥有执行的权限。

  当然一般我们在linux下都是默认的是普通用户,我们可以通过su root命令来进入超级用户。

4.文件创建掩码

  在linux中我们可以使用umask来查看当前文件默认的创建掩码,这边我们要知道的是文件的满权限为777-掩码从而得到最终的文件权限,而在文件创建的时候不允许可执行,因此umask的值为022-755。

5.修改文件权限

  我们可以使用chmod来修改文件的权限,格式如下: chmod a(所有用户)/u(所属用户)/g(所属组)/o(其他) +/- r/w/x。

6.进入目录需要哪些权限, 在目录中执行增删查(cd, touch, ls, rm, mv等)改文件动作, 需要哪些权限?

  通过进入超级用户修改过权限后,我们分别实验可以得到如下的结论:

cd 所需权限x
touch 所需权限wx
ls 所需权限rx
rm 所需权限wx
mv 所需权限wx

猜你喜欢

转载自blog.csdn.net/q302989778/article/details/82860890