linux基础学习【3】
2018-10-11 17:33
260 查看
一.umask 命令
umask 临时设定系统保留的权限(即创建目录时不给予的权限) 例:umask 077 设定对当前用户保留077权限(创立文件时赋予700权限)
配置文件说明
如图,root用户创建目录A权限为755(umask=022)
student用户创建目录B权限为775(umask=002)
使用命令<umask 077>,创建目录B时默认权限为700(umask=077)
注意事项:
1.使用umask命令更改仅在当前shell环境下生效 2.若需永久更改则须更改配置文件
切换环境后创建目录C,默认权限仍为755(umask=022)
更改配置文件
###更改后不会立即生效,需重新读取配置文件
vim /etc/profile 编辑系统配置文件 vim /etc/bashrc 编辑shell的配置文件 source /etc/profile 重读系统配置文件,让更改立即生效 source /etc/bashrc 重读shell配置文件,让更改在立即生效
二.特殊权限
1.sticky 粘制位 只针对目录生效,当一个目录上有sticky权限时 在这个目录中的文件只能被文件的所有者删除 两种设定方式: chmod o+t dir chmod 1xxx dir
添加粘制位,虽然拥有pub目录的rwx权限,但用户st1无法删除其他用户的文件
2.sgid 强制位 对文件:只针对二进制可执行文件 当文件上有sgid时,任何人执行此文件产生的进程都属于文件目录的所有组 对目录:当目录上有sgid时,任何人在此目录中建立的文件都属于目录的所有组 chmod g+s file/dir chmod 2xxx file/dir
查看/bin/watch文件的元属性
用户st1使用watch检测进程名称,使用者用户名,所在组,此时均为st1
为/bin/watch添加强制位,并且切换到其他用户st1
重新调用watch,此时user为st1,而group变为watch文件的所属组root
3.suid 冒险位 当文件上有sgid时,任何人执行此文件产生的进程都属于文件所有者 chmod u+s file chmod 4xxx file
为watch添加冒险位,并以st1身份执行
以st1用户执行watch,执行者仍为文件拥有者root
三.acl权限列表
让特定的用户对特定文件拥有特定权限
acl列表查看
getfacl a 查看文件a的acl权限 setfacl -m u:user:rwx a 为a文件开启acl权限管理并为指定用户user赋予mask:rwx权限 setfacl -m g:group:rwx a 为a目录开启acl权限管理并为指定组group赋予mask:rwx权限
打开acl权限的文件标志(其中‘+’表示acl开启)
给目录pub添加acl权限并指定用户st1拥有rwx权限(默认其他所有组成员为r-x)
如图st1可在/mnt/pub写入,而st2不可
getfacl权限说明
# file : filename 文件名为filename # owner: root 文件所有者为root # group: root 文件所有组为root user::rw- 文件拥有者对文件的权限为rwx user::username:rwx 指定用户username对文件的权限为rwx group::r-- 文件所有组对文件的权限为r-- mask::rwx 可赋予用户的最大权限为rwx other::r-- 其他用户对文件的权限为r--
四.mask值
在权限列表中mask表示能生效的权限值(能赋予的最大权限值) 当用chmod减小开启acl的文件权限时,mask会发生变化 chmod g-w filename 恢复mask值: setfacl -m m:rwx filename
查看目录pub的acl权限,虽然用户st1有rwx权限,但mask=r-x,所以有效权限只有r-x
acl默认权限只针对目录设定(即默认在该目录下创建的文件继承目录的acl权限,未设定默认不继承)
setfacl -m d:u:username:rwx /filename acl权限只针对设定完成之后新建立的文件或目录生效,而已经存在的文件时不会
先建立的a文件没有继承acl权限,而设定后的b文件继承了目录的acl权限
相关文章推荐
- Linux学习基础
- Linux基础 学习笔记
- 从Windows转向Linux教程 E3000基础学习
- 一点一滴学习Linux--基础命令篇
- 【嵌入式Linux学习七步曲之第三篇 Linux系统bootlaoder移植】U-BOOT全线移植分析系列之二--U-boot基础
- LINUX 学习之基础一 基本命令学习
- Linux 学习笔记( LINUX运行的硬件基础1)
- Linux学习基础!
- Linux基础学习笔记
- fedora学习笔记 1:fedora与linux的一点基础知识
- Linux 学习基础
- Linux Bash Shell学习(八):shell编程基础——string操作
- linux基础学习
- Linux基础学习
- Linux基础命令小结(上)-Linux学习日记
- Makefile学习笔记1:Linux平台Makefile文件的编写基础篇(zz)
- Linux学习基础教程
- Linux学习基础
- Linux 学习基础
- Linux基础命令小结(下)- Linux学习日记