Linux基础09 权限管理, chomd, chown, 权限对文件/目录的作用, 权限组合, 新建文件/目录的默认权限

权限管理

1.什么是权限
针对某些文件或者进程,对用户进行限制

2.权限和用户的关系(ll查看)

 

 

-rwxr-xr--. 1 root root    46 2月  24 00:10 hello.sh    (权限后面的点代表了开启selinux, 关闭后再创建的没有点, 之前有的还在)

文件类型    文件属主(所属用户)权限    文件所(属组)属用户组    其他用户
d        rwx                r-x                 r--

硬链接数    文件的属主(所属用户)    文件的属组(所属用户组)    文件的大小(文件中的字节数)
2        root               root                   46 

文件的修改时间        文件名
Jul  1 02:00        bak

例: rwxr-x--x  oldboy  root ...
[root@oldboy ~]# useradd zls100 -g root
    
root(超级管理员)        rwx    
oldboy(属主)          rwx
zls(其他用户)          x
zls100(因为在root组)    rx

文件类型:

普通文件
-
软链接文件
l
socket,套接字
s
块设备
c
目录
d
块设备
b
管道文件
p

 

3.授权命令

chmod
1)+号 -号 授权
    rw-    r-x    -wx
    --x    -w-    r--
    --x    -w-    r--
    rwx ---> u(user)g(group)o(other)
    
    [root@oldboy ~]# chmod u+w zls    # 对文件属主追加w权限
    u+x                          # 对文件属主追加x权限
    g+w                          # 对文件所属用户组追加w权限
    o+r                          # 对其他用户追加r权限
    a+x                          # 对文件属主,文件所属用户组,其他用户追加x权限
    chmod +x num.txt                 # 可以省略a, 也是所有用户追加x权限

2)数字授权
    r:4
    w2
    x:1
    -:0
    
    rwxr-xr-x         bak  755
    chmod 000 num.txt        # 不给任何权限
    
3)=号授权
    [root@oldboy ~]# chmod u=rwx,g=rw,o=r zls
   #去掉目录所有权限
   [jose@rocky8 ~]$ chmod a= dir1/
stat
   查看文件或文件系统的状态(可查看时间等属性)、
stat -c %a num.txt # 参看num.txt的属性权限 chown 设置文件所有者和文件关联组的命令 chown username:groupname 例: 把 /var/run/httpd.pid 的所有者设置 od: chown od /var/run/httpd.pid 将文件 file1.txt 的拥有者设为 runoob,属组为 runoobgroup : chown runoob:runoobgroup file1.txt 或 chown runoob.runoobgroup file1.txt 修改属组为od chown :od student.txt 参数 -R: 递归授权 chown -R od.od dir1 # 对dir1下面的所有目录, 文件设置
   #大写X,只会给子目录加x权限
   [root@ubuntu2204 0509]# chmod o+X -R dir1/
newgrp 登入另一个群组 组: 您必须是该群组的用户,否则将无法登入指定的群组。 当一个用户创建新的文件前,可以用newgrp命令切换组,这样创建的文件就直接属于目前登录的组 例: $ newgrp oldboy $
echo andy2 > andy2 $ ll # 可以看到此时文件的属组是oldboy
注意:
用户的最终权限,是从左向右进行顺序匹配,即,所有者,所属组,其他人,一旦匹配权限立即生
效,不再向右查看其权限
r和w权限对root 用户无效,对没有读写权限的文件,root用户也可读可写
只要所有者,所属组或other三者之一有x权限,root就可以执行

 

4.权限对文件的作用

 

 

读取权限(r)
文件只有r权限: 具有读取\阅读文件内容权限
1.能使用查看类命令cat、head、tail、less、more
2.不能复制、不能移动、不能编辑,不能删除
写入权限(w)
如果文件只有w权限: 具有新增、修改文件内容的权限
1.使用vim编辑会提示权限拒绝, 但可强制保存,会覆盖文件的所有内容
2.使用echo、cat命令重定向或追加重定向技术可以往文件内写入数据
3.不能复制、不能移动、不能删除,(删除需要看上级目录w的权限)
执行权限(x)
文件只有x权限,具有执行文件的权限。
//注意: 普通用户需要有r权限,管理员不需要
1.不能执行、查看、编辑、复制、移动、删除

 

5.权限对目录的作用

读取权限(r)
目录只有r权限: 具有浏览目录及子目录权限
1.能使用ls命令浏览目录及子目录, 同时会提示权限拒绝
2.能使用ls -l命令浏览目录及子目录, 会带问号,同时只能看到文件名
总结: 目录只有r权限,仅仅只能浏览内的文件名,无其他操作权限
写入权限(w)
如果目录只有w权限: 具有增加、删除或修改目录内文件名权限(需要x配合)
//注意: 如果目录有w权限, 可以在目录内创建文件, 删除文件(跟文件本身权限无关)
不能进入目录、不能复制目录、不能删除目录、不能移动目录
执行权限(x)
目录只有x权限
1.只能进入目录
2.不能浏览、复制、移动、删除 

 

6. 权限组合(总结)

rwx对文件:只对文件内容有影响(和rm,mv无关)
r:只读,不可以执行,不可以写入
w:可以编辑,但是不能读取内容,如果vim,会覆盖原文件内容。
x:如果是普通用户,也不可以执行,必须组合r权限,如果root用户,单独执行权限可以执行

权限组合:
rw:对文件 ,可读可写,不可以执行
rx:可读,可执行
wx:可写,普通用户可写,不可读也不可执行,root用户可以执行
rwx:可读,可写,可执行

 

rwx对目录的影响
w:单个w没有任何作用,但是如果想要删除目录下的文件,一定要有w
r:单独的r权限,可以看到目录下的文件名,但是看不到详细信息,不能移动文件,不能进入目录(配合x)
x:只能进入目录

权限组合: 

rx:可以进入目录,可以查看目录中文件的详细信息,不可以移动,删除目录下的文件
rw:跟单独的一个r,是一样的
wx:可以进入目录,可以创建、删除文件,但是不能查看目录下的文件
rwx:可以进入,可以查看,可以删除,可以移动...

 

面试题

执行 cp /etc/issue /data/dir/ 所需要的最小权限?
/bin/cp 需要x权限
/etc/ 需要x权限
/etc/issue 需要r权限
/data 需要x权限
/data/dir 需要w,x权限

 

新建文件和目录的默认权限

在linux 系统中,新建文件或目录,都有一个默认权限;

umask 值间接影响新建文件和新建目录的权限:

  • 新建文件:666-umask,按位对应相减,如果所得结果某位存在执行(奇数)权限,则该位+1;
  • 新建目录:777-umask;

非特权用户 umask 默认是 002 root 的 umask 默认是 022

userfiledirumask
root 644(666-022) 755(777-022) 022
tome 644(666-002) 755(777-002) 002
#获取umask
[root@ubuntu ~]#umask
0022
#修改umask
[root@ubuntu ~]#umask 023
[root@ubuntu ~]#umask
0023

 

posted @ 2022-03-15 00:29  战斗小人  阅读(328)  评论(0编辑  收藏  举报