day 8--Linux文件、目录权限

来源:互联网 发布:网络安全策略模型 编辑:程序博客网 时间:2024/05/18 00:42

2.13 文件或目录权限

1. 文件或目录权限
文件或目录的权限包括可读、可写、可执行3种,分别用r、w、x表示,对应的权限位值分别为:
r=4,w=2,x=1,-=0
2. 更改权限
  • #chmod XXX  [目录或文件] #更改某个文件或目录本身的权限,即使目录下有子目录和子文件,其权限不会改变
  • #chmod-R XXX  [目标目录]#将某个目录下的子目录和子文件的权限一次性批量更改
  • #chmodu=rwx,g=r,o=r  [目录或文件]#更改文件或目录的权限(例o=rx,不能写成o=r-x,g=r,不能写成g=r--),其中u表示文件或目录的所有者(user),g表示所属组(group),o表示除所有者和所属组的其他用户
  • #chmod a+x  [目录或文件]#更改文件/目录的权限(a表示所有用户,也有u+x,u-x,g-wx之类)
3 .特殊位"."
用命令#ll#ls -l查看文件或目录时,一般显示的文件/目录属性第1列最后位有个“.”,如下图,表示该文件/目录受制于selinux,若selinux开启了,则创建的文件/目录第1列最后一位就会有“.”,只有彻底关闭selinux(更改配置文件/etc/selinux/config,将其中SELINUX=enforcing改为disabled,Permissive表示selinux并未关闭,只是不限制,会打印警告),重启之后,再创建的文件/目录就不会包含“.”


2.14 更改所有者和所属组chown

1.chown命令
更改文件或目录的所有者和所属组(change owner)
  • #chown   用户名   [目标文件/目录]#更改某个文件或目录的所有者
  • #chown   用户名:用户组名  [目标文件/目录]#同时更改某个文件或目录的所有者和所属组
  • #chown:用户组名  [目标文件/目录] #只更改某个文件或目录的所属组
  • #chown-R用户名:用户组名  [目标目录]#更改某个目录包括其下子目录和子文件的所有者和所属组
2. chgrp命令
更改文件或目录的所有者和所属组(change group)
#chgrp 用户组名 [目标文件/目录]#更改某个文件或目录的所属组

2.15 umask
umask值用来决定默认目录和文件的权限
  • #umask #查看当前用户的umask值
  • #umask XXX #更改当前用户的umask值,更改后,新创建的目录和文件的权限将根据umask值决定,原始默认目录的权限是777,文件默认的权限是666,例如设定umask值为003,则对于目录,计算777-003=(rwxrwxrwx)-(-------wx)=rwxrwxr--=774,那么目录的默认权限就是774;对于文件,则计算666-003=(rw-rw-rw-)-(-------wx)=rw-rw-r--=664,则默认文件的权限就是664,注:(-)-(x)=-;(-)-(r)=-;(-)-(w)=-
2.16 隐藏权限lsattr_chattr
1.chattr命令
  • #chattr  +ifile-1#给文件file-1添加i权限,添加后不能rm、不能mv、不能编辑(vi,>)、不能对文件追加内容(>>),不能touch该文件(touch一个文件,会更改一个文件的时间),可以执行cp命令
  • #chattr  -i file-1#给文件file-1去掉i权限
  • #chattr  +a file-1  #给文件file-1添加a权限,添加后可以给该文件追加(add,>>)内容,可以touchcp,不能mv、不能rm、不能编辑(vi,>)
  • #chattr  -a file-1  #给文件file-1去掉a权限
  • #chattr  +i directory -1 #给目录添加i权限(子目录和子文件权限不会随着更改),添加后不能rm目录、不能mv目录,不能在目录下创建子文件和子目录(但可以在子目录下创建文件和目录),不能将该目录下的子文件和子目录删除(rm),不能将该目录下的子文件和子目录mv到其它目录,不能把其它文件和目录mv到该目录下,不能对该目录下的子文件和子目录改名(目录下mv),不能对目录下的子文件cp,但可以对该目录下已存在的子文件编辑(vi),touch,追加内容(>>),更改内容(>),即对一个目录加了i权限,可以限制该目录下不能新增文件和目录、不能删除、不能移动(不能cp)已存在的子文件和子目录,但不能限制写入已经存在的文件
  • #chattr  -i directory-1#给目录去掉i权限
  • #chattr  +a directory -1#给目录添加a权限,可以在该目录下创建子文件子目录,且可以编辑(vi)、追加(>>)/修改(>)、touch和cp该文件,可以在子目录下创建文件和目录(新创建的均可操作);不能rm、不能mv子文件和子目录
  • #chattr  -a directory-1#给目录去掉a权限
2. lsattr命令
  • #lsattr file-1 #查看文件file-1的权限
  • #lsattr directory-1 #查看目录directory-1下面的子目录和子文件的权限
  • #lsattr -a directory-1#查看目录directory-1下所有子目录和子文件的隐藏权限,包括隐藏文件
  • #lsattr -ddirectory -1#查看目录本身的权限
  • #lsattr -R directory -1#查看目录directory-1下的子目录以及子目录下的文件的权限

原创粉丝点击