文件权限的查看
ls 文件名 ##文件权限的查看。通过上图可以看出ls -l == ll (查看一个目录里面内容的权限),ls -ld == ll -d(查看目录本身的权限)
当使用ls时,我们会看到出现- |rw-r--r--| 1 | root | root | 2049 | Oct 9 11:45 | /etc/passwd
[1] [2] [3] [4] [5] [6] [7] [8]
[1]表明文件的类型。图中的-表示空文件或者文本。
[2]说明文件的权限。共三组,第一组指的是文件拥有者对文件能做什么操作;第二组指的是文件所有组对文件能做什么操作;第三组指的是其他人能对文件做什么操作。r表示可读,w表示可写,x表示可操作。图中/etc/passwd里内容是对文件拥有者开放了读写权限,对组成员开放了只读权限,对其他人开放了只读权限。
[3]这个数字对文件来讲指的是‘文件硬链接个数,即文件内容被记录的个数’;对目录来说指的是目录中子目录的个数。图中表示的是/etc/passwd里有1个文件内容被记录。
[4]指的是文件所有人,图里第一条命令的文件所有人是root
[5]文件所有组。图中第一条命令指的是root是passwd的所有组。
[6]对文件:文件大小。图中第一条命令的文件大小为2049.
对目录:目录中子文件元数据(matedate可以理解为文件的属性)大小
[7]文件的内容被修改的时间。10月9日11:45文件里的内容被修改
[8]文件的名称。文件名是/etc目录下的passwd文件。
图中为/mnt下的目录及文件,下面将使用chown和chgrp来对用户名和组名进行改变。
可以看到上面两图中/mnt中文件或目录权限的改变。
临时设定系统预留权限为077
怎样可以使得本人建立的文件只能被本人删除呢?
可以看到使用chmod o+t /mnt/linux 后,linux的权限在其他人的权限最后多了个t,随后使用student用户删除linux里的redhat1 时删除不了。
可以看到linux的权限又多了个s 说明此时任何人建立在/mnt/liunx里的文件的组名都是root
同理使用chmod u+s 即当文件上有suid时任何人执行这个文件中记的程序产生的进程都属于文件的所有人
getfacl file ##查看acl开启的文件的权限
# file: mnt/linux ##文件名称
# owner: root ##文件拥有者
# group: root ##文件拥有组
user::rwx ##文件拥有人的权限
user:kiosk:rwx ##指定用户的权限(图中未出现)
group::r-x ##文件拥有组的权力
mask::rwx ##能赋予用户的最大权限值
other::r-x ##其他人的权限
给用户xiyou赋予对/mnt/linux/redhat2有rwx的权限;给student组成员对/mnt/linux/redhat3有rwx的权限
setfacl -m u:username:rwx file ##设定username对file拥有rwx权限
setfacl -m g:group:rwx file ##设定group组成员对file拥有rwx权限
setfacl -x u:username file ##从acl列表中删除username
setfacl -b file ##关闭file上的acl列表