[TOC] ## 概念说明 ### 用户 Linux是多用户,多任务的,所以每个文件都有一个所有者 ### 用户组 可以将多个用户归为一组,便于统一权限管理,一个用户可以属于多个用户组 ### 其他人 不属于文件所有者与用户组的第三方 ## 文件属性 ~~~ dr-xr-x---. 9 root root 4096 Jul 31 18:08 . dr-xr-xr-x. 23 root root 4096 Feb 3 2017 .. -rwxr-xr-x 1 root root 3085 Jul 30 2013 auto_fdisk.sh -rw------- 1 root root 12132 Aug 24 15:30 .bash_history -rw-r--r--. 1 root root 18 May 20 2009 .bash_logout -rw-r--r--. 1 root root 176 May 20 2009 .bash_profile -rw-r--r--. 1 root root 176 Sep 23 2004 .bashrc -rw-r--r-- 1 root root 70 Oct 30 2016 composer.json -rw-r--r--. 1 root root 100 Sep 23 2004 .cshrc -rwxrwxrwx. 1 root root 100 Sep 23 2004 .cshrc ~~~ ### 文件类型 通过ls-al显示的结果中看文件属性示意图 列中的第一个字符代表这个文件是“目录、文件或链接文件等” * 若是【d】则代表该条记录是目录; * 若是【-】则代表是文件; * 若是【|】则表示为连接文件(linkfile); * 若是【b】则表示设备文件里面的可供存储的接口设备; * 若是【c】则表示设备文件里面的串口端口设备,例如键盘、鼠标。 ### 权限类型 * 其中【r】代表可读(read); * 其中【w】代表可写(write); * 其中【x】代表可执行(execute); 这3个权限的位置不会改变,如果没有相应的权限,就会出现减号【-】 ### 权限每3个为一组 * 第1组rwx代码所有者 * 第2组rwx代表所属组 * 第3组rwx代表其他用户 ### 对应数值 <table cellspacing="0" cellpadding="2" width="400" border="0"> <tbody> <tr> <td valign="top" width="133">&nbsp;</td> <td valign="top" width="133">对应数字</td> <td valign="top" width="133">权限</td></tr> <tr> <td valign="top" width="133">r</td> <td valign="top" width="133">4</td> <td valign="top" width="133">读</td></tr> <tr> <td valign="top" width="133">w</td> <td valign="top" width="133">2</td> <td valign="top" width="133">写</td></tr> <tr> <td valign="top" width="133">x</td> <td valign="top" width="133">1</td> <td valign="top" width="133">执行</td></tr></tbody></table> ~~~ -rwxr-xr-x 1 root root 3085 Jul 30 2013 auto_fdisk.sh // 折成三组 rwx r-x r-x ~~~ **上面文件权限如下** ~~~ 所有者 4+2+1=7 所属组 4+0+1=5 其他人 4+0+1=5 权限数字表示为755 ~~~ ### 权限修改 ~~~ chmod 777 index.php //修改indexphp文件的权限为777 chmod 777 xbs //修改xbs目录的权限为777 chmod -R 777 xbs //修改xbs目录和所有子目录的权限为777 ~~~ ### 改变所有者 ~~~ chown root xbs //改变目录所有者为root chown root:root xbs //改变文件xbs所有者为root,所属组为root chown –R root:root xbs //改变目录xbs及其下所有文件所有者为root,所属组为root ~~~ ### 文件权限说明 文件:包含数据的类型,如图片,html,php * 读取文件内容 r * 编辑修改文件 w(不表示可以删除文件) * 执行文件 x(sh脚本) ### 目录权限说明 目录是对文件的分类,记录文件名列表 * 列出文件列表 r(比如可以执行ls读取文件列表) * 进入目录 x(网站目录给rx权限,表过进入目录读取内容) * 新建文件 w * 删除文件 w * 改名 w * 移动文件 w >[danger]注:如果只给目录r权限,无法读取到目录中文件详细信息,如修改时间等,所以rx一般配合使用