Linux 的文件权限与目录配置
用户和用户组
- 文件所有者 (owner)
 - 用户组概念 (group)
 - 其他人概念 (others)
 
Linux文件权限概念
1. Linux文件属性
要了解Linux文件属性,那么有个重要的命令必须提及–Sls。以root的身份登录Linux之后,执行“ls -al”,看到下面的内容:
drwx—— 3 root root 4096 Sep 5 10:37 .gconf
-rw-r–r– 1 root root 42304 Sep 4 18:26 install.log
ls 是 “list” 的意思,而参数 “-al” 则表示列出所有的文件详细的权限与属性(包含隐藏文件)。
- 第一列代表这个文件的类型与权限
 
其中有十个字符。
第一个字符代表这个文件是“目录、文件或者链接文件等”。
[d] 代表目录
[-] 代表文件
[l] 表示为连接文件(linkfile)
[b] 表示设备文件里面的可供存储的接口设备
[c] 则表示设备文件里面的串行端口设备,例如键盘、鼠标。
接下来以3个为一组,且均为“rwx”的3个参数组合。其中[r]代表可读(read),[w]代表可写(write),[x]代表可执行(execute)。这三个权限的位置不会改变,如果没有权限就会出现减号[-]。
第一组为“文件所有者的权限” 
第二组为“同用户组的权限” 
第三组为“其他非本用户组的权限”
- 第二列表示有多少文件名连接到此节点
 - 第三列表示这个文件(或目录)的“所有者账号”
 - 第四列表示这个文件所属用户组
 - 第五列为这个文件的容量大小,默认单位为B
 - 第六列为这个文件的创建日期或者是最近的修改日期
 - 第七列为该文件名
 
如果文件名之前多一个“.”,则代表这个文件为“隐藏文件”。
2. 如何改变文件属性与权限
常用于用户组、所有者、各种身份的权限修改命令:
chgrp:改变文件所属用户组
chown:改变文件所有者
chmod:改变文件的权限
改变所属所属用户组:chgrp
改变文件所有者:chown
改变权限:chmod
3. 目录与文件的权限意义
权限对文件的重要性
- r (read): 可读取此文件的实际内容。
 - w (write):可以编辑、新增或者修改该文件的内容(但不含删除该文件)。
 - x (execute):该文件具有可以被系统执行的权限。
 
权限对目录的重要性
r (read contents in directory):表示具有读取目录结构列表的权限。
w (modify contents of directory):它表示你具有更改该目录结构列表的权限:
新建新的文件与目录;
删除已经存在的文件与目录(不论该文件的权限为何);
将已存在的文件或目录进行重命名;
转移该目录内的文件、目录位置。x (access directory):代表用户能否进入该目录成为工作目录,所谓的工作目录就是你目前所在的目录。
Linux目录配置
1. Linux目录配置标准:FHS
规范每个特定的目录下应该要放置什么样的数据。
根目录 (/) 的意义与内容
/bin 系统有很多放置执行文件的目录,但bin比较特,其下放置的是在单用户维护模式下还能够被操作的命令。bin下面的命令可以被root与一般账号所使用,主要有cat, chmod, chown, date, mv, mkdir, cp , bash 等常用命令。
/boot 这个目录主要放置开机会使用到的文件,包括Linux内核文件以及开机菜单与开机所需配置文件等。
/dev 在Linux系统上,任何设备与接口设备都是以文件的形式存在于这个目录当中的。你只要通过访问这个目录下面的某个文件,就等于访问某个设备。
/etc 系统主要的配置文件几乎都放置在这个目录内,例如人员的账号密码文件、各种服务的起始文件等。
/home 这是系统默认的用户主文件夹。
/lib 放置的是开机时会用到的库函数,以及在/bin 或 /sbin 下面的命令会调用的函数库。
/opt 这个是给第三方软件放置的目录。
/root 系统管理员的主文件夹。
/sbin 为开机过程中所需要的,里面包括了开机、修复、还原系统所需要的命令。
/srv 可视为service的缩写,是一些网络服务启动后,这些服务所需要取用的数据目录。
/tmp 这是让一般用户或者是正在执行的程序暂时放置文件的地方。
/usr 的意义与内容
其实usr是 UNIX Software Resource的缩写,也就是“UNIX操作系统软件资源”所放置的目录,而不是用户的数据。
因为是所有系统默认的软件都会放置到/usr下面,因此这个目录有点类似Windows系统的“C:\Windows\”和“C:\Program files\”这两个目录的综合体。
一般来说,/usr的子目录建议有以下所示这些:
/usr/bin/ 绝大部分的用户可使用命令都放在这里。
/usr/include/ C/C++等程序语言的头文件与包含文件放置处。
/usr/lib/ 包含各应用软件的函数库、目标文件,以及不被一般用户惯用的执行文件或脚本。
/usr/local/ 系统管理员在本机自行安装自己下载的软件(非distribution默认提供者)。
/usr/sbin/ 非系统正常运行所需要的系统命令。
/usr/share/ 放置共享文件的地方。(/man 在线帮助文件 /doc 软件杂项的文件说明 /zoneinfo 与时区有关的时区文件)
/usr/src/ 一般源码建议放置到这里。内核源码则建议放置到/usr/src/linux/目录下。
/var 的意义与内容
如果/usr是安装时会占用较大硬盘容量的目录,那么/var就是系统运行后才会渐渐占用硬盘容量的目录。因为/var目录主要针对常态性变动的文件,包括缓存、登录文件以及某些软件运行所产生的文件,包括程序文件(lock file,run file),或者例如MySQL数据库的文件等。
/var/cache 应用程序本身运行过程中会产生的一些暂存文件。
/var/lib 程序本身执行的过程中,需要使用到的数据文件放置的目录。在此目录下各自的软件应该要有各自的目录。MySQL的数据库放置到/var/lib/mysql/,而rpm的数据库则放到/var/lib/rpm目录下。
/var/lock/ 某些设备或者是文件资源一次只能被一个应用程序所使用,因此就得将该设备上锁,锁文件就放在此目录。
/var/run/ 某些程序或者服务启动后,会将它们的PID放置在这个目录下。
2. 目录树
- 目录树的起始点为根目录(/,root)。
 - 每一个目录不只能使用本地端的文件系统,也可以使用网络上的文件系统。
 - 每一个文件在此目录中的文件名(包含完整路径)都是独一无二的。
 

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;,几乎能完成任何事.... 二.目录权限的意义 目录的权限和文件的 ...
 - Linux 的文件权限和目录配置
		
1.Linux文件属性 用root用户登录linux后,执行 ls -al 命令查看文件.显示如下: 文件属性示意图如下: 第一列代表这个文件的类型和权限 第一个字符代表这个文件是:目录.文件或链接文 ...
 - 第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——(2)文件权限与目录配置
		
概念一:用户与用户组 对linux下的每一个文件或者目录来说,访问者都有三种身份:所有者,用户组,其他人.这三种人对于同一个文件的权限是可以分开设定的. 概念二:linux文件权限 文件和目录都有3种 ...
 - 鸟哥的linux私房菜——第五章学习(Linux的文件权限与目录配置)
		
******************第五章学习****************** 1.[重要的三个概念] 1).文件拥有者(使用者):User,该文件/文件夹只能我来读写: 2).群组:Group, ...
 - Linux的文件权限与目录配置
		
用户与用户组(Linux是一个多用户多任务的系统) 文件所有者 设置适当的权限,其他人无法看到自己的文件 用户组概念 属于同一个用户组的可以看到这个团体的公共信息,每个账户都可以有多个用户组的 ...
 
随机推荐
- Spring Enable*高级应用及原理
			
Enable* 之前的文章用到了一些Enable*开头的注解,比如EnableAsync.EnableScheduling.EnableAspectJAutoProxy.EnableCaching等, ...
 - <转>Android开发使输入框点击弹出日期选择对话框的方法
			
非常简单直接上代码: 转自:http://blog.sina.com.cn/s/blog_4ac1b5f60102vgnx.html final EditText et1=(EditText)find ...
 - noip2012 P1081 开车旅行
			
小 A 和小 B 决定利用假期外出旅行,他们将想去的城市从 1 到 N 编号,且编号较小的城市在编号较大的城市的西边,已知各个城市的海拔高度互不相同,记城市 i 的海拔高度为Hi,城市 i 和城市 j ...
 - Eclipse配置C++环境
			
由于实在不想用(界面太丑,超级强迫症),前段时间JAVA一直用eclipse,感觉这个IDE非常友好,看上去很舒服,下载的时候发现有C++版本,于是折腾了一会儿,谷歌上发现好多教程,但是大部分比较老, ...
 - 【Android开发】之MediaPlayer的错误分析
			
最近在做媒体播放器,使用了Android自带的MediaPlayer,经常性会碰到MediaPlayer报错的情况,找过网上的,感觉总结的不是很好或者比较散.下面,我来总结一下使用MediaPlaye ...
 - 用monit监控系统关键进程
			
原地址: https://feilong.me/2011/02/monitor-core-processes-with-monit monit是一款功能强大的系统状态.进程.文件.目录和设备的监控软件 ...
 - centos7的防火墙(firewalld)
			
Centos7中默认将原来的防火墙iptables升级为了firewalld,firewalld跟iptables比起来至少有两大好处: 1.firewalld可以动态修改单条规则,而不需要像ipta ...
 - git忽略特殊文件或文件夹
			
1.在项目目录中添加“.gitignore”文件,项目目录就是你存放git工程的目录就是有“.git”目录的目录 vi .gitignore 2.在文件中添加如下内容,其中“/runtime/”是忽略 ...
 - Centos之其他帮助命令
			
选项帮助 命令 -help 获取命令选项的帮助 例如 ls --help 我们会发现用这种方式查看帮助命令 居然还有中文解释: 详细命令帮助info info 命令 -回车:进入子帮助页面(带有*号标 ...
 - R语言学习笔记:使用reshape2包实现整合与重构
			
R语言中提供了许多用来整合和重塑数据的强大方法. 整合 aggregate 重塑 reshape 在整合数据时,往往将多组观测值替换为根据这些观测计算的描述统计量. 在重塑数据时,则会通过修改数据的结 ...