五、Linux的档案权限与目录配置

2017-11-19  本文已影响37人  努力爬行中的蜗牛

1、使用者与群组

1.1、档案拥有者
1.2、群组概念
1.3、Linux系统中,默认情况下,所有的系统上的账号与一般身份使用者,还有那个root的相关信息,都是记录在/etc/passwd这个档案内的,个人密码则是记录在/etc/shadow这个档案下,所有的组名都是肌瘤在/etc/group内,这三个档案可以说是Linux系统里账号、密码、群组信息的集中地;

2、Linux档案权限概念

2.1、Linux文件属性

1)ls查看档案指令 ls -al,chgrp chown等指令都需要使用root的身份才能够处理;
2)drwxr--r-- 3 zhanghaha wheel 102 11 19 16:36 testing

  • drwxr--r--:第一栏代表这个档案的类型与权限;
    当为d则是目录,-是档案,l表示为连接档,b表示装置文件里面的可供储存的接口设备,c表示为装置文件里面的串行端口设备,例如键盘、鼠标;
    接下来的字符中,三个为一组,且均为rwx的三个参数的组合,其中,r代表可读,w代表可写,x代表可执行,这三个权限的位置不会改变,如果没有权限,就会出现减号“-”,第一个为档案拥有者的权限,第二组为同群组的权限,第三组为其他非本群组的权限;
  • 第二栏表示有多少档名连接到此节点;
  • 第三栏表示这个档案的拥有者账号;
  • 第四栏表示这个档案的所属群组;
  • 第五栏为这个档案的容量大小,默认为bytes;
  • 第六栏为这个档案的建档日期或者最近的修改日期;
  • 第七栏为这个档案的档名;如果档名钱多一个“.”,代表这个档案为隐藏档

2.2、如何改变文件属性与权限:chgrp,chown,chmod

  • 改变所属群组:chgrp
    chgrp users install.log
    注意:要改变的组名必须要在/etc/group档案内存才行,否则会显示错误;
  • 改变档案拥有者:chown
    chown bin install.log
    如果要连目录下的所有词目录或者档案同时更改档案拥有者的话,直接加上-R的选项即可;
    注意:用户必须是已经存在系统中的账号,也就是在/etc/passwd这个档案中有记录的用户名称才能改变;
  • 改变权限:chmod,权限的设定方法有两种,分别可以用数字或者符号来进行权限的变更;
    1)数字类型改变档案权限:
    Linux的基本权限就有9个,分别是owner/group/others,三种身份各有自己的read/write/execute权限,这9个权限是三个三个一组的;其中我们可以用数字来代表各个权限,r:4,w:2,x:1,每种身份各自的三个权限分数是需要累加的;
    如:chmod 777 install.log,chmod a-x .bashrc
    2)符号类型改变档案权限
    由u、g、o代表三种身份,a则代表all即全部的身份
    chmod (u/g/o/a)(+、-、=) r/w/x 档案或者目录
    如chmod u=rwx,go=rx .bashrc

2.3、目录与档案之权限意义

  • 权限对档案的重要性:
    r:可读取此档案的实际内容,如读取文本文件的文字内容等;
    w:可以编辑、新增或者是修改该档案的内容(但不含删除该档案)
    x:该档案具有可以被系统执行的权限;
  • 权限对目录的重要性
    r:具有读取目录结构列表的权限
    w:建立新的档案与目录,删除已经存在的档案与目录,将已经存在的档案或目录进行更名,搬移该目录内的档案、目录位置;
    x:目录的x代表的是用户能够进入该目录称为工作目录的用途;

2.4、Linux档案种类与扩展名

  • 档案种类
    1)正规档案
    纯文本档:Linux系统最多的一种文件类型,称为纯文本是因为内容为我们人类可以直接读取的数据,例如数字、字母等;cat ~/.bashrc
    二进制文件binary
    数据格式文件data
    2)目录,第一个属性为d
    3)连接档link;
    4)设备与装置文件device
    5)资料接口文件sockets
    6)数据传送文件pipe
  • Linux档案扩展名
    基本上Linux的档案是没有所谓的扩展名的,一个Linux档案能不能执行,与他的第十个属性有关,与文件名无关,但x代表这个档案具有可执行的能力,能不能执行陈宫,当然还得要看该档案的内容;
    1).sh:脚本或批处理文件
    2)
    Z,.tar,tar.gz,.zip,.tgz:经过打包的压缩文件;
    3).html,.php:网页相关档案;

3、Linux目录配置

3.1、Linux目录配置的依据--FHS:/,/usr,/var

  • FHS是根据过去的经验一直再持续的改版的,FHS依据文件系统使用的频繁与否与是否允许使用者随意变动,将目录定义为4中交互作用的形态
    可分享的:可以分享给其他系统挂载使用的目录,所以包括执行文件与用用户的邮件等数据;
    不可分享的:自己机器上面运作的装置档案或者是与程序有关的socket档案等
    不可变的:有些数据不会经常变动,例如函式库、文件说明文件,系统管理员所管理的主机服务配置文件等;
  • 事实上,FHS针对目录树架构仅定义出三层目录底下应该防止什么数据而已,分别是底下的这三个目录:
    1)/:根目录,与开机系统有关;
    根目录所在分割槽应该越小越好,且应用程序所安装的目录最好不要与根目录放在同一个分割槽内,保持根目录越小越好;
    开机过程仅有根目录会被挂载,其他分割槽则是在开机完成之后才会持续的进行挂载的行为;因此,这些目录不可与分目录分开:
    /etc:配置文件
    /bin:重要执行档
    /dev:所需要的装置档案
    /lib:执行档所需要的函式库与核心所需的模块;
    /sbin:重要的系统执行文件
    2)/usr(unix software resource),与软件的安装、执行有关;
    usr是Unix操作系统软件资源所放置的目录,而不是永辉的数据;
    3)/var,与系统运作有关;
    可变动的:经常改变的数据
    如果usr是安装时会占用较大硬盘容量的目录,那么var就是系统运作后才会渐渐占用硬盘容量的目录;因为var目录主要针对常态性变动的档案,包括快取,登录档以及某些软件运作所产生的档案;

3.2、目录树

  • 目录树的起始点为根目录
  • 每一个目录不止能使用本地端的partition的文件系统,也可以使用网络上的filesystem
  • 每一个档案在此目录树种的文件名都是独一无二的;

3.3、绝对路径与相对路径

绝对路径:由根目录开始写起的文件名或目录名称,如/home/dmtsai/.bashrc;
相对路径:相对于目前路径的文件名写法,如./home/dmtsai或../../home/dmtsai/等
".":代表当前的目录,也可以使用./表示;

“..”:代表上一层目录,也可以用../来代表;
“./”代表本目录的意思,所以./run.sh代表执行本目录下,名为run.sh的档案;

3.4、CentOS的观察:lsb_release

上一篇下一篇

猜你喜欢

热点阅读