linux基础⑦-权限管理

在Linux系统中,针对文件定义了三种身份,分别是属主(owner)、属组(group)、其他人(others)。每一种身份又对应三种权限,分别是可读(readable)、可写(writable)、可执行(excutable)。

基本权限

[root@k8s-node02 study]# ll file.txt 
-rw-r--r-- 1 root root 2880 7月   7 21:55 file.txt

-:表示普通文件
rw-:属主权限
r--:属组权限
r--:其他人权限
root:属主
root:属组

chmod修改权限

4:写
2:读
1:执行

[root@k8s-node02 study]# chmod 666 file.txt 
[root@k8s-node02 study]# ll file.txt 
-rw-rw-rw- 1 root root 2880 7月   7 21:55 file.txt

[root@k8s-node02 /]# chmod -R 766 study/          #-R表示递归包括子目录及文件
[root@k8s-node02 /]# ll |grep study
drwxrw-rw-    4 root root  122 7月   7 21:55 study

rwx对于文件

读取权限(r)具有读取\阅读文件内容权限
1.只能使用查看类命令cat、head、tail、less、more

写入权限(w)具有新增、修改文件内容的权限
1.使用vim编辑会提示权限拒绝, 但可强制保存,会覆盖文件的所有内容
2.使用echo命令重定向的方式可以往文件内写入数据,>>可以进行追加
3.不能删除文件,因为删除文件看的不是文件的属性,需要看上级目录是否有w的权限

执行权限(x)具有执行文件的权限
1.单独执行权限没什么用
2.如果普通用户需要执行文件,需要配合r权限

rwx对于目录

读取权限(r),如果目录只有r权限: 具有浏览目录及子目录权限
1.可以使用ls命令浏览目录及子目录, 但同时也会提示权限拒绝
2.使用ls -l命令浏览目录及子目录,文件属性会带问号,并且只能看到文件名
3.目录只有r权限,仅仅只能浏览内的文件名,无其他操作权限

写入权限(w),如果目录只有w权限: 具有增加、删除或修改目录内文件名权限(需要x权限配合)

1.只能进入目录
2.不能浏览、复制、移动、删除
3.如果目录有w权限, 可以在目录内创建文件, 删除文件(跟文件本身权限无关)
不能进入目录、不能复制目录、不能删除目录、不能移动目录

执行权限(x),如果目录只有x权限
1.只能进入目录
2.不能浏览、复制、移动、删除

chown 变更属组信息

#改变属主
[root@k8s-node02 study]# ll file.txt 
-rwxrw-rw- 1 root root 2880 7月   7 21:55 file.txt
[root@k8s-node02 study]# chown lsy file.txt 
[root@k8s-node02 study]# ll file.txt 
-rwxrw-rw- 1 lsy root 2880 7月   7 21:55 file.tx

#改变属主和属组
[root@k8s-node02 /]# chown lsy:lsy study/   #属主:属组
[root@k8s-node02 /]# ll
drwxrw-rw-    4 lsy  lsy   122 7月   7 21:55 study

#仅改变组信息
[root@k8s-node02 /]# chown :root study/

特殊权限

[root@k8s-node02 /]# ll /bin/passwd  #s特殊权限
-rwsr-xr-x. 1 root root 27832 6月  10 2014 /bin/passwd

s表示特殊suid权限,拥有suid的用户对s文件具有文件属主的权限,只对可执行文件有效
setuid:
让普通用户能够临时的拥有命令的属主权限,完成一些特殊的操作

suid的授权:
chmod u+s
chmod u-s
chmod 4755

sgid:
1.针对用户组权限位修改,用户创建的目录或文件所属组和该目录的所属组一致。
2.当某个目录设置了sgid后,在该目录中新建的文件不在是创建该文件的默认所属组
3.使用sgid可以使得多个用户之间共享一个目录的所有文件变得简单

[root@k8s-node02 /]# chmod g+s study/

sbit 使该文件谁都可以创建,谁都给修改,但是允许删除自己的文件,不允许删除其他人的权限,比如tmp/默认就是粘滞位。

chattr lsattr
特殊属性: 不授rwx的限制
chattr: 设定特殊属性:
+a 只能追加,通常用于日志这类的文件
+i 锁定文件无法修改,无法做任何的操作,只能查看,比如重要的配置文件不希望被修改.
lsattr: 查看文件是否存在特殊的属性

[root@k8s-node02 tmp]# touch file_a
[root@k8s-node02 tmp]# touch file_i
[root@k8s-node02 tmp]# chattr +a file_a
[root@k8s-node02 tmp]# chattr +i file_i
[root@k8s-node02 tmp]# lsattr file_a
-----a---------- file_a
[root@k8s-node02 tmp]# lsattr file_i
----i----------- file_i

[root@k8s-node02 tmp]# chattr +a file_a


1希望任何人都不能创建用户
[root@k8s-node02 tmp]# chattr +a /etc/passw

系统默认权限umask

用来控制文件创建时的默认权限
umask表示要减去的权限,比如umask为022 目录拿777-022=755 文件拿666-022=644

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章