ls -l 文件地址
显示文件的详细信息
ls -ld 文件地址 显示文件夹的详细属性
file 来看文件的类型
#####第四天#####
#######文件权限的读取#######
- |rw-rw–r|1|root|root|0|jul 21 09:18|file
1 2 3 4 5 6 7 8 9
1.文件类型
-d l c s b
一个空文本 一个链接(快捷方式) 字符设备 套接字符(程序的一扇门) 一个硬件
2.文件对每个用户的权限显示
三个一位 分别是 u文件拥有者权限 g文件所有组的权限 o其他人的权限
3.文件被记录次数,目录中子目录个数
4.文件的用户
5.文件的所有组
6.文件大小
7.文件最后被修改的时间
8.文件名称
########改变文件的用户和组######
1改变文件用户
chown 用户名 文件地址(file|dir)
chown 用户名 文件夹地址只改文件夹的用户,不改文件夹下的文件
chown -R 用户名 目录地址(直接将目录下的文件用户全部改为这个用户)
2改变文件所属组
chgrp 组名 文件地址
chgrp -R 组名 目录地址(目录下所有文件组都改成这个组)
chown 用户名:组名 文件地址 改所属用户,所属组
注:在尝试操作时要用watch监控ls -l 目录地址
1建立文件建立用户和组
2将文件划分给相应用户和组
chown 用户名 文件地址
chgrp 组名 文件地址
chown 用户名:组名 文件地址(将这个文件划分为这个组,莫个用户)
chown -R 文件夹地址 都改
########改变文件权限######
1.权限
r 对文件:是否有查看文件的权利 (cat
file)
对目录:是否有查看目录子目录或子文件的权利 (ls -l file)
w 对文件:是否对文件有更改的权利
对目录:是否有对目录元目录或子文件元数据更改的权利
x 对文件:是否有调用文件中内容的权利
对目录:是否有打开目录的权利
2.更改权限方式
chmod (u|g|o)(+|-)(r|w|x) 文件地址
eg:
chmod u+r /etc/file 对file文件user可以增加一个读的权力
chmod og-x /etc/file
对file文件other和group减少调用文件的权利
chmod o=r-x /etc/file
对file文件other有读和调用的权利
chmod u-r,g+x /etc/file
chmod +w 默认只给user加因为危险系数高,而加其他权利全部对象都可加
#####umask#####
umask 系统建立文件时默认保存的权利
umask 077 系统预留权限为077
2.更改umask
vim /etc/profile #配置系统文件
在第60行左右
更改umask
vim /etc/profile ##系统配置文件
59 if [ $UID -gt 199 ] && [ “id -gn” =“id
-un”];then
60 umask 002 ##普通用户的umask
61 else
62 umask 077 ##超级用户
63 fi
vim /eyc/bashrc ##shell配置文件
70 if [ $UID -gt 199] && [ “id -gn” =“id -un”
];then
71 umask 002
###文件权限(超户给普通用户的权限)###
对文件的影响-r w x 只能读(4)
只能写(2) 可以直接执行文件内容(1)
对目录的影响-r w x 只能看目录中东西 该目录中的东西 是否能打开目录
一般有-w就有-rx
chmod u用户 g组 o其他人 每个对象都有rwx没有的权限用-来表示,
###修改权限####
打开 vim
/etc/profile
找到umask 上面是普通用户,下面是超户权限
打开 vim /etc/basrc
找到umask 相应的改掉
source 两个文件
这时权限已变
umask 系统预留权限 eg:002 777-002-111=664建立文件时的权限 777-002=775建立目录时的权限
注:没有的不能相减
###特殊权限
sticky ###粘制位
诶定一个目录权限,让里面的用户只能操作自己的文件
chmod o+t 此时others的权限x变为t这时用户便不能操作其他人的文件
步骤, 先监控watch -n1 “ls -l /westos ; ls -ld /westos”
在给文件夹一个满权限,chmod 777 /westos
在在另一个sheel中建立用户,在用用户在westos中建立文件此时是可以删别人的
这时用超户给文件夹一个chmod o+t
在转成普通就不能删除别人的文件
sgid ####强制位
1.对文件 只针对二进制文件,
当文件上有sgid时,任何人执行文件都属于文件所属的组
2.对目录 当目录上有sgid权限时,任何人在目录路中建立的文件都属于目录的组
设定方式
chmod g+s file|dir (目录或文件的地址)
chmod 2xxx file|dir
suid ###冒险位
只针对二进制文件可执行,
文件上有suid时,任何人执行人执行这个文件中记的程序产生的进程都属于文件所有人
先用chmod u+s /bin/watch 给watch设定
之后chown tom,转成t
###########acl权限列表###########
1.作用
让特定的用户对特定的文件拥有特定的权限
2.acl列表查看
-rw-rwxr–+ 1 root root 0 jul 21 15:45 file
getfacl file ##查看acl开启的文件的权限
#file: file ##文件名称
#owner: root ##文件拥有者
#group: root ##文件所有组
user::rw- ##文件拥有人的权限
user:gao:rwx ##指定用户的权限
group::r-- ##文件拥有组的权力
mask::rwx ##能赋予用户最大权力伐值
other::r-- ##其他人的权限
3.acl列表的管理
getfacl file
setfacl-m u:username:rwx file ##设定username对file拥有的权限
setfacl -m g:group:rwx file ##设定group组成员对file拥有rwx权限
setfacl -x u:username dile ##从acl列表中删除username
setacl -b file ##关闭file上的acl列表
4.mask值
在权限列表中mask表示能生效的权力值
当用chmod减小开启acl的文件权限mask值会发生改变
chmod g-w westos
要恢复mask值
setfacl -m m:rw westos
先用setfacl -m u:tom:rwx file设置
当一个权限列表后有+,用mod修改会破坏mask
5.acl的默认权限设定
acl权限只针对设定完成之后建立的文件或目录生效,对已存在的文件不生效