chmod
更改文件或目录权限命令
数字表示法:r=4 w=2 x=1
如rwx=7 r-x=5 r--=4 --x=1
chmod 744 1.txt -> -rwxr--r--1 root root 10703 11月 22 02:40 1.txt
字母表示法:r为可读 w为可写 x为可执行
u表示文件所有人 g表示所属组用户 o表示其他用户 a表示所有用户
chmod u-x1.txt -> -rw-r--r-- 1 root root 10703 11月 22 02:40 1.txt
-R 目录下所有子目录和文件继承该目录的权限
umask 规定目录和文件默认的权限
linux下的所有目录必须有x权限
umask默认值为0022后三位表示权限,022=--- -w- -w-当创建目录时用rwx rwx rwx---- -w- -w-=rwx r-x r-x=755为目录的默认权限,当创建文件时用rw- rw- rw- - --- -w- -w-=rw- r--r--=644
umask 011 -> 更改umask值为0011
在算umask权限时,可以直接用数字相减,只是当umask权限位为奇数时,再相减完之后加1即可(仅对于文件,目录直接相减即可)
例如:
umask 011
文件默认权限=666-011=655+011=666
umask 331
文件默认权限=666-331=335+111=446
umask 523
文件默认权限=666-523=143+101=244
chown
更改所属用户和用户组
useradd 创建用户
groupadd 创建用户组
chown [用户名]:[用户组] 文件名
-R 目录下所有子目录和文件继承该目录的所有权属性
![命令] 以[命令]开头最近用到的一句命令
history 命令历史
lsattr
显示文件隐藏属性
-R 显示该目录和子目录下的所有文件和目录的隐藏属性
-d 只查看目录本身
chattr
chattr [+a][+i] 文件或目录名
a权限:无法通过普通的方法修改文件内容,也无法删除、改名、修改所属用户和用户组,只能通过echo “11” >>11.txt来追加内容。
i权限:比a权限更加严谨,无法修改文件内容,同样无法删除、改名、修改所属用户和用户组
用户的密码存在/etc/shadow文件里
set_uid
一种特殊权限,仅能用于可执行的二进制文件,让普通用户临时拥有文件所属主的权限
S是该文件有set_uid但是没有可执行的权限
set_gid
一种特殊权限,能用于可执行的二进制文件,让普通用户临时拥有文件所属组的权限。当给目录添加set_gid权限后,不管是谁在该目录下创建子目录或是文件,该目录或文件的所属组会与增加set_gid权限的所属组保持一致
u+s=4755
set_uid=4 set_gid=2 stick_bit=1
stick_bit(防删除位)
防止别人删除自己的文件
一个文件能不能删除,不取决于这个文件的属主、属组和权限是什么,而是取决于这个文件所在的目录的权限是否可写,如果该该目录可写那么就可以删除这个目录下的任何文件。
chmod o+t [文件名] 只能作用于目录
编辑回复