[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"> </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一般配合使用
- 序言
- 第一章:准备工作
- 写在学习之前的话
- web应用开发结构
- 开发工具/环境
- 第二章:展现层面(HTML/CSS)
- HTML简介
- HTML基础
- HTML编码
- HTML链接
- HTML图像
- HTML列表
- HTML表单
- HTML表格(分水岭)
- HTML 实体
- HTML框架
- CSS层叠样式表
- CSS选择器
- CSS文本/字体
- CSS继承和叠加
- CSS框模型
- CSS浮动(分水岭)
- CSS定位
- CSS背景
- CSS图标字体
- CSS补充
- 开发技巧
- 第三章:展现层面(Javascript)
- JS简介
- JS实现
- JS输出交互
- JS变量
- JS数据类型
- JS运算符
- JS流程控制(分水岭)
- JS函数
- JS数组
- JS对象(分水岭)
- JS数组对象
- JS字符串对象
- JS数学对象
- JS日期对象
- JS BOM对象(分水岭)
- JS DOM对象
- JS事件对象
- JS元素对象
- JS DOM节点
- 第四章:展现层面(Jquery)
- JQ简介
- JQ使用
- JQ选择器
- JQ筛选
- JQ属性
- JQ-CSS
- JQ事件
- JQ文档处理
- JQ效果
- JQ-ajax
- 第五章:逻辑/业务层面(PHP)
- PHP简介
- PHP变量
- PHP数据类型
- PHP常量
- PHP运算符
- PHP流程控制
- PHP函数(分水岭)
- PHP日期
- PHP数学
- PHP数组
- PHP字符串
- PHP正则表达式(分水岭)
- PHP目录操作
- PHP文件
- PHP上传/下载
- PHP面向对象(分水岭)
- PHP图像处理
- PHP会话控制
- Ajax异步处理
- PHPMysql扩展
- PHPMysqli扩展
- PHPPdo扩展
- PHP接口
- PHP命名空间
- 第六章:逻辑/业务层面(框架设计)
- 第七章:存储层面(mysql)
- Mysql基础
- Mysql Sql简介
- Mysql数据库
- Mysql数据类型
- Mysql数据表
- Mysql操作记录
- Mysql查询
- Mysql修改表结构
- Mysql日期与时间
- Mysql分组统计
- Mysql多表查询
- Mysql安全
- Mysql存储引擎
- Mysql事务
- Mysql视图
- Mysql触发器
- Mysql存储过程
- Mysql存储函数
- Mysql优化
- 第八章:服务器(Linux)
- Linux介绍与安装
- Shell
- 目录与文件操作
- VIM编辑器使用
- 帐号管理
- SUDO
- 权限控制
- 压缩与打包
- 软件安装
- 计划任务
- 进程管理
- 宝塔Linux面板