Linux的文件权限与目录配置

来源:互联网 发布:江恩轮软件下载 编辑:程序博客网 时间:2024/05/17 05:55

Linux的文件权限与目录配置


Linux文件属性

-rw-r--r-- 1 root root 42304 Sep 4 18:26 install.log
1. 第一个字符代表这个文件是“目录,文件或链接文件”
  • [d]表示目录
  • [-]表示文件
  • [l]表示链接文件
  • [b]表示设备文件里面的可供存储的接口设备
  • [c]表示设备文件里面的串行端口设备,例如键盘。
    接下来的字符,三个为一组,均为“rwx”三个参数的组合。[r]表示可读,[w]代表可写,[x]代表可执行。没有权限用“-”表示。
  • 第一组为“文件所有者的权限”。
  • 第二组为“同用户组的权限”。
  • 第三组为“其他非本用户组的权限”。
2. 第二列表示有多少文件名连接到此节点。
3. 第三列表示这个文件(或目录)的“所有者账号”。
4. 第四列表示这个文件的所属用户组。
5. 第五列为这个文件的容量大小,默认单位为B。
6. 第六列为这个文件的创建文件日期或者是最近的修改日期。
7. 第七列为该文件名

如何改变文件属性与权限

  • chgrp: 改变文件所属用户组。
    chgrp [-R] dirname/filename
    参数:-R : 进行递归的持续更改,也即连同子目录下的所有文件,目录

  • chown: 改变文件所有者。
    cp 源文件 目标文件 命令表示复制文件给其他人,cp会复制执行者属性和权限。

  • chmod: 改变文件的权限。

    Linux文件的基本权限有9个,分别是owner/group/others的rwx.每种身份的权限有r(4)w(2)x(1)三者分数相加。
    命令格式:chmod [-R] xyz 文件或目录

    例子:chmod 777 .bashrc 表示修改.bashrc文件的权限为 rwxrwxrwx.
    Linux还可以用过符号类型改变文件权限。“-rwxr-xr” 等价于 “ chmod u=rwx,g=rx,o=r”


目录与文件的权限意义

1. 权限对文件的重要性

  • r: 可读取此文件的实际内容
  • w: 可以编辑,新增或者修改该文件的内容(但不可以删除该文件)
  • x: 该文件具有可以被系统执行的权限。

2. 权限对目录的重要性

  • r表示具有读取目录结构列表的权限,你可以查询该目录下的文件名数据。

  • w表示你具有更改该目录结构列表的权限
    -新建新的文件与目录;
    - 删除已经存在的文件与目录(不论该文件的权限如何);
    - 将已存在的文件或目录进行重命名
    - 转移该目录内的文件,目录位置

  • x表示用户能否进入该目录成为工作目录。

    如果你在目录下不具有x权限,那么你就无法切换到该目录下,也就无法执行该目录下的任何命令,即使你具有该目录的r权限


目录配置

目录的四种交互作用形态:

这里写图片描述

FHS针对目录树架构仅定义出三层目录底下应该分别放置什么数据:

  • /(root,根目录):与开机系统有关
  • /usr (unix software resource) : 与软件安装/执行有关
  • /var (variable) : 与系统运作过程有关。

不可与根目录分开的五个目录,因根目录跟开机有关:

  • /etc : 配置文件
  • /bin : 重要执行档
  • /dev : 所需要的装置档案
  • /lib: 执行档所需的函式库与核心所需的模块
  • /sbin : 重要的系统执行文件

/usr 目录类似于windows系统下的C:\Windows+C:\Program files\的综合体,其放置的是操作系统软件资源,而不是用户数据。

/var目录主要针对常态性变动的文件,如缓存(cache),登录档(log file)以及某些软件运作所产生的档案。


目录树:

  • 目录树的起始点为根目录。
  • 每一个目录不止能使用本地端的partition文件系统,也可以使用网络上的filesystem.
  • 每一个文件在此目录树的文件名(包括完整路径)都是独一无二的。

这里写图片描述


  • 绝对路径:由根目录(/)开始写起的文件名或目录名称。如/home/yateslaw/.bashrc
  • 相对路径。相对于目前路径的文件名写法。如./home/yateslaw
  • . : 代表当前的目录,也可以用./来表示
  • .. : 代表上一层目录,也可以用../来表示。

/bin主要放置在开机时,以及进入单人维护模式后还能够被使用的指令。而/usr/bin则是大部分软件提供的指令放置处。

/bin放置的是一般用户惯用的指令。而/sbin则是系统管理员才会用到的指令,

0 0
原创粉丝点击