Linux的文件权限与目录配置
Linux最优秀的地方之一,就在于它的多用户、多任务环境。
1、Linux一般将文件可存取访问的身份分为3个类别,分别是:owner、group、others,且3种身份各有read、write、execute等权限。
2、Linux的文件属性
3、文件属性与权限的改变
(1)改变所属用户组:chgrp
chgrp [-R] /dirname/filename
其中-R可选,表示进行递归改变,即如果该目录下有子目录或文件都进行改变
(2)改变文件所有者:chown
chown [-R] 账户名称 文件或目录
同时改变文件所有者和用户组:chown [-R] 账户名称:用户组名 文件或目录。也可以使用:chown [-R] 账户名称.用户组名 文件或目录
其中[-R]同上。
(3)改变权限:chmod
权限设置有两种:分别是数字或者符号。r:4 w:2 x:1
chmod [-R] xyz 文件或目录
·数字类型改变权限:chmod -R 644 Hello.java
·符号类型改变权限:chmod -R a+w Hello.java
其中,符号类型a-全部的身份、u-文件所有者、g-所在用户组、o-其他用户组;+(加入)、-(除去)、(=)设置
如:chmod u=rwx go=rx Hello.java
chmod o+x Hello.java
4、目录与文件的权限意义
文件权限对数据安全非常重要,也保证多用户的数据保密性。
注:目录的x权限代表的是用户能否使用cd命令,切换到该目录让其成为工作目录。即用户能不能进入某目录,只与该目录的x权限有关。即使有r权限没有x权限也不能进入该目录。
5、Linux文件种类与拓展名
·linux下的任何设备都是文件,文件种类有:[-]普通文件、纯文本文件、二进制文件、数据格式文件、[d]目录、[l]连接文件、[b]设备文件、[c]字符设备文件、[s]套接字文件、[p]管道文件;
·一个linux文件能不能被执行与他的权限属性有关,与拓展名没关系的。通常用拓展名来表示该文件是什么种类的。
6、Linux目录配置标准:FHS
其FHS的主要目的是希望让用户可以了解到已安装软件通常放置于那个目录下,也希望软件开发商、操作系统制作商、维护者都能遵循HFS标准。
/根目录:所有的目录都是由根目录衍生出来的,也与开机、还原、系统修复等操作有关。
/bin放置执行文件
/boot放置开机会使用到的文件
/dev设备文件
/etc系统配置文件
/home系统默认的用户主文件
/lib放置系统的函数库
/media放置可删除的设备,如光盘、软盘、DVD等
/mnt挂载额外设备的目录
/opt第三方软件放置目录
/root系统管理员(root)的主文件夹
/sbin 放置设置系统环境命令的文件,需要一定权限才能执行的命令
/srv可视为“service”的缩写,一些网络服务启动之后,这些服务所需要取用的数据目录
/tmp让一般用户或正在执行的程序暂时存储文件的地方,需要定期清理一下
/lost+found 文件系统使用ext2/ext3格式才会产生这个目录,目的在于当文件系统发生错误是,将一些丢失的片段设置到该目录下。这个目录通常会在分区的最顶层存在
/proc这个目录本身就是一个虚拟文件系统,它设置的数据都是在内存当中
/sys与/proc类似,也是一个虚拟的文件系统,主要记录与内核相关的信息
/usr 存放的数据属于常变动的,也分享给其他系统挂载使用的。系统默认的软件安装都会在/usr中
/var存放系统在使用过程所产生的文件,属于常态性变动的文件,包括缓存文件、登录文件以及软件运行所产生的文件
因为根目录与开机有关,而/etc、/bin、/dev、/lib、/sbin这5个文件设置开机的系统配置信息,所以不能把这5个文件与根目录分开,即不能把这5个文件与根目录放到不同分区中,必须在同一个分区中。
Linux由上面文件共同组成目录树(directory tree)。
7、目录的相对路径与绝对目录
绝对路径:由根目录(/)开始写起的文件名或目录,如:/home/dmtsai/.bashrc
相对路径:相对于当前路径的文件或目录的写法,如./home/dmtsai等
注:相对路径中,.代表当前的目录,..代表上一层目录