Linux 的文件权限和目录配置
1、Linux文件属性
用root用户登录linux后,执行 ls -al 命令查看文件。显示如下:

文件属性示意图如下:

第一列代表这个文件的类型和权限

第一个字符代表这个文件是:目录、文件或链接文件等。
- 若是【d】则是目录;
- 若是【-】则是文件;
- 若是【l】则表示为连接文件;
- 若是【b】则表示设备文件里的可供存储的接口设备;
- 若是【c】则表示设备文件里的串行端口设备,如鼠标、键盘等。
后面的9个字符以3个位一组,均为rwx的组合。其中r代表可读,w代表可写,x代表可执行。注意3个权限的位置不会改变,如果没有权限,就会出现减号(-)。
- 第一组 为 “文件所有者的权限”
- 第二组 为 “用户组的权限”
- 第三组 为 “其他非本用户组的权限”
第二列表示有多少文件名连接到此节点
每个文件都会将它的权限和属性记录到文件系统的i-node中,不过我们使用的目录树却是使用文件名来记录,因此每个文件名就会连接到一个i-node。这个属性记录了有多少不同的文件名连接到相同的一个i-node号码。
第三列表示这个文件的“所有者账号”
第四列表示这个文件的所属的用户组
第五列为这个文件的大小,默认单位是B
第六列为这个文件的创建文件日期或者是最近的修改日期。
第7列为该文件的文件名
如果文件名之前多了一个 “.” ,则说明这个文件为“隐藏文件”,隐藏文件的list列表时,加-a参数可以显示。ls -al。
2、如何改变文件的权限和属性
- chgrp : 改变文件所属用户组
- chown : 改变文件所有者
- chmod: 改变文件的权限
2.1、改变文件所属用户组
chgrp 【-R】 dirname/filename ...
-R : 进行递归的持续更改,也连同子目录下的所有文件、目录都更新成为这个用户组之意。常常用在更改某一目录内所有文件的情况。
范例:
chgrp hy install.log : 将install.log文件的用户组改为hy用户组。注意hy用户组必须要在/etc/group 文件内存在才可以。
2.2、改变文件的所有者
chown [-R] 账号名称 文件或目录
chown [-R] 账号名称:组名 文件或目录
-R:也是递归子目录。
范例:
chown bin install.log
chown root:root install.log
改变文件所有者和用户组的这两个命令的应用场景:复制文件,由于复制行为会复制执行者的属性和权限,因此复制后需要改变文件所属用户、用户组等。
2.3、改变文件的权限
文件权限有两种设置方法:数字类型改变权限和符号改变权限。
首先说明各个权限对应的数字:
- r: 4
- w: 2
- x:1
- 每种身份各自的三个权限分数是需要累加的。
- 例如:权限为(-rwxrwx---)分数分表是:
- owner = rwx = 4+ 2 + 1 = 7
- group = rwx = 4+ 2+ 1 = 7
- others = --- = 0+0 +0 = 0
- 所以在设置权限时,该文件的权限数字就是770.
1)、数字类型改变文件权限方式
命令: chmod [-R] xyz 文件或目录
xyz : 代表权限数字。如770.
-R : 进行递归的持续更改。
范例:
chmod 777 .bashrc : 将文件.bashrc这个文件的所有权限设置都启用。
2)、符号类型改变文件权限方式
使用u、g、o三个字母代表user、group、others 3中身份。此外a代表all,即所有身份。

范例:
chmod u=rwx,go=rx .bashrc
也可以增加或去除某种权限。
chmod a+w .bashrc
chmod a-x .bashrc
3、目录和文件权限的意义
3.1、权限对于文件的重要性
- r(read):可读取此文件的实际内容
- w(write):可以编辑、新增或修改文件的内容(但是不含删除该文件)
- x(execute):该文件具有可以被系统执行的权限。
3.2、文件对目录的重要性
目录的主要内容是记录文件名列表,文件名与目录有强烈的关联。
r(read):表示具有读取目录结构列表的权限,当具有读取一个目录的权限时,表示你可以查询该目录下的文件名数据,可以用ls命令将目录内容显示出来。
w(write):对目录来说是很强大的。表示你具有更改该目录结构的权限。
- 新建新的文件和目录
- 删除已存在的文件与目录
- 将已存在的文件或目录重新命名
- 转移该目录内的文件、目录位置
- 总之,目录的w权限与该目录下面的文件名变动有关就对了。
x(execute):目录的x权限代表用户是否能进入该目录成为工作目录的用途。
因此,要开放目录给任何人浏览时,应该至少也要给与r及x权限,但是w权限不可以随便给。
4、Linux文件的种类及扩展名
4.1、文件的种类
- 普通文件:纯文本文件、二进制文件、数据格式文件
- 目录
- 连接文件
- 设备与设备文件
- 套接字:数据接口文件,通常被用在网络上的数据连接。第一个属性为s,通常在/var/run 这个目录中可以看到这种文件类型。
- 管道(FIFO,pipe):它的主要目的在解决多个程序同时访问一个文件所造成的错误问题。第一个属性为p
4.2、Linux文件扩展名
基本上linux的文件是没有所谓的“扩展名”的。一个linux文件能不能被执行,与它的第一列的10个属性有关,与文件名根本没有一点关系。只要你的权限中有x的话,即代表可以被执行。但是可以被执行和可以执行成功是不一样的。能不能执行成功,需要看文件的内容。
虽然如此,我们还是希望可以通过扩展名来了解该文件是什么东西,还是会以适当的扩展名来表示该文件是什么种类的。
以下是几种常用的扩展名:
- *.sh:脚本或批处理文件。
- *Z、*.tar、*.tar.gz、*.zip、*.tgz:经过打包的压缩文件。
- *.html、*.php:网页相关文件。
- 注意:从网络上传送到linux系统中,文件的属性和权限确实会被改变。
linux系统下文件长度限制
使用默认的Ext2/Ext3文件系统时,针对文件的文件名长度的限制为:
单一文件或目录的最大容许文件名为255个字符;
包含完整路径名称及目录(/)的完整文件名为4096个字符
5、Linux目录配置标准:FHS
因为利用linux来开发产品的团队或公司、个人实在太多了。如果每个人都用自己的想法来配置文件放置的目录,那么将可能造成很多管理上的困扰。后来就有了所谓的Filesystem Hierarchy Standard (FHS) 标准了。
该标准指出,其目的主要是希望让用户可以了解到已安装的软件通常放置于哪个目录下。FHS的重点在于规范每个特定的目录下应该要放置什么样子的数据而已。
FHS依据文件系统使用的频繁与否和是否允许用户随意改动,而将目录定义为四种交互作用的形态。

FHS针对目录树架构仅定义出三层目录下面应该放置什么样的数据而已,分别是下面这三个目录:
- / (root,根目录):与开机系统有关
- /usr(UNIX software resource):与软件安装和执行有关
- /var(variable):与系统运作过程有关。
Linux 的文件权限和目录配置的更多相关文章
- 第六章、Linux 的文件权限与目录配置
第六章.Linux 的文件权限与目录配置 1. 使用者与群组 2. Linux文件权限概念 2.1 Linux文件属性 2.2 如何改变文件属性与权限: chgrp, chown, chmod 2.3 ...
- (转)Linux的文件权限与目录配置
ref:https://www.cnblogs.com/ysocean/p/7712412.html#_label1_0 (转)Linux文件权限和目录配置 1.Linux命令的普遍语法格式 命令格式 ...
- 第六章Linux的文件权限与目录配置
一.Linux用户分类 1.Linux用户分为:(文件|目录)所有者(OWN),(同组内的)用户组,其他人; 2.一个天神:root;,几乎能完成任何事.... 二.目录权限的意义 目录的权限和文件的 ...
- 第6章 linux的文件权限与目录配置
6.1用户与用户组 用户,自己的抽屉 用户组,自己的家 其他人(others),外人 root,天神 /etc/passwd 所有的系统上的账号与一般身份用户,root的相关信息 /etc/shado ...
- 【转】第六章、Linux 的文件权限与目录配置
原文网址:http://vbird.dic.ksu.edu.tw/linux_basic/0210filepermission.php 最近更新日期:2009/08/18 Linux最优秀的地方之一, ...
- Linux 的文件权限与目录配置
用户和用户组 文件所有者 (owner) 用户组概念 (group) 其他人概念 (others) Linux文件权限概念 1. Linux文件属性 要了解Linux文件属性,那么有个重要的命令必须提 ...
- linux——(2)文件权限与目录配置
概念一:用户与用户组 对linux下的每一个文件或者目录来说,访问者都有三种身份:所有者,用户组,其他人.这三种人对于同一个文件的权限是可以分开设定的. 概念二:linux文件权限 文件和目录都有3种 ...
- 鸟哥的linux私房菜——第五章学习(Linux的文件权限与目录配置)
******************第五章学习****************** 1.[重要的三个概念] 1).文件拥有者(使用者):User,该文件/文件夹只能我来读写: 2).群组:Group, ...
- Linux的文件权限与目录配置
用户与用户组(Linux是一个多用户多任务的系统) 文件所有者 设置适当的权限,其他人无法看到自己的文件 用户组概念 属于同一个用户组的可以看到这个团体的公共信息,每个账户都可以有多个用户组的 ...
随机推荐
- python打包工具 cx_Freeze介绍
原理 Python 脚本在装有 Python 的系统中可以直接双击运行,但绝大多数普通用户并没有配置此类环境,而编译为可执行二进制文件后,用户无需预先安装 Python 及依赖库即可像运行普通程序一样 ...
- 今天分享三种方法实现Linux系统调用,感兴趣的朋友可以参考一下
系统调用(System Call)是操作系统为在用户态运行的进程与硬件设备(如CPU.磁盘.打印机等)进行交互提供的一组接口.当用户进程需要发生系统调用时,CPU 通过软中断切换到内核态开始执行内核系 ...
- Hadoop HDFS安装、环境配置
hadoop安装 进入Xftp将hadoop-2.7.3.tar.gz 复制到自己的虚拟机系统下的放软件的地方,我的是/soft/software 在虚拟机系统装软件文件里,进行解压缩并重命名 进入p ...
- Codeforces 1153D Serval and Rooted Tree (简单树形DP)
<题目链接> 题目大意: Serval拥有的有根树有n个节点,节点1是根. Serval会将一些数字写入树的所有节点.但是,有一些限制.除叶子之外的每个节点都有一个写入操作的最大值或最小值 ...
- [转]PHP实现页面静态化的超简单方法
为什么要页面静态化? 1.动态文件执行过程:语法分析-编译-运行 2.静态文件,不需要编译,减少了服务器脚本运行的时间,降低了服务器的响应时间,直接运行,响应速度快:如果页面中一些内容不经常改动,动态 ...
- H5如何解监听页面退出需求???
事发背景(时间较久): 在一个阳光明媚的一天,这天lz正在工位上悠闲的敲着代码:说时迟那时快,运营小姐姐箭步过来,让lz做一个挽留弹窗:我当时一听这TM不是流氓么.于是便有了以下的故事... 如何实现 ...
- tensorflow 使用 3 模型学习
模型学习 import tensorflow as tf import numpy as np # 生成 100 个随机的点 x_data = np.random.rand( 100 ) y_data ...
- poi导出Excel直接在浏览器下载
需求:导出成Excel格式,要在浏览器看到类似于下载的效果. 导出的Excel和下载在同一个目录下. xxController.java // 导出 @RequestMapping(value = & ...
- CentOS 编译安装 Redis (实测 笔记 Centos 7.3 + redis 3.2.8)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...
- 第一次app经验
第一次做一个app 发现 需要和前端沟通好而且 还要注意细节 效果图细节不要忘记 尽量多穿数据不要少传数据 而且 对接 注意细节