zoukankan      html  css  js  c++  java
  • 1、Linux 文件和目录管理

    一、文件系统架构

    1、Linux文件系统具有层级性

    1. 文件或者目录起始于根目录 "/” 成为树状结构
    2. 最顶层由 / 开始

    2、文件和目录名区分大小写

    3、路径通过"/"分隔开

    4、.. 表示上层目录

    5、./ 表示当前目录

    6、隐藏目录或者文件名以 “." 开始

    二、重要目录说明

    1.根目录

    1. 根目录是整个系统中最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的,同时根目录也与开机、还原、系统修复等操作有关。
    2. FHS标准建议:根目录(/)所在的分区应该越小越好,且应用程序所安装的软件最好不要与根目录放在同一个分区内,保持根目录越小越好。这样不但性能较好,根目录所在的文件系统也不容易发生问题。
    3. 因为根目录与开机有关,在开机的过程中仅有根目录所在分区会被挂载,其他分区则是在开机之后才会持续进行挂载的行为。所以根目录下与开机有关的目录就不能与根目录放置在不同的分区:/etc(配置文件)、/bin(重要的执行文件)、/dev(所需要的设备文件)、/lib(执行文件所需的函数库与内核所需的模块)、/sbin(重要的系统执行文件)。
    目录 应放置的内容
    /bin 系统有很多放置执行文件的目录,但是/bin目录比较特殊。/bin放置的是在单用户维护模式下还能够被操作的命令。在/bin下面的命令可以被root与一般用户使用。
    /boot 这个目录主要放置开机会使用到的文件,包括Linux内核文件以及开机菜单与开机所需配置文件等。
    /dev 在Linux系统上,任何设备与结构设备都是以文件的形式存在于这个目录中的。只要通过访问这个目录下的某个文件,就等于访问某个设备。
    /etc 系统主要的配置文件几乎都放置在这个目录里,例如人员的账号密码文件、各种服务的起始文件等。一般来说,这个目录下的各个文件属性是可以让一般用户查阅的。但只有root用户有权限修改。FHS标准建议不要放置可执行文件(binary)在这个目录中。
    /home 这是系统默认的用户文件夹(home directory)。在创建一个一般用户时,默认的用户主文件夹都会放置到这里。主文件夹有两种代号:~:代表目前这个用户的主文件夹 ~ahao:代表用户ahao的主文件夹
    /lib /lib放置的是在开机时会用到的函数库,以及在/bin或/sbin下面的命令会调用的函数库。
    /media /media放置的是可删除的设备。包括软盘、光盘等设备都暂时挂载于此。
    /mut 如果你想要暂时挂载某些额外的设备,一般建议可以放置到这个目录中。在比较早的时候,该目录的用途于/media相同。
    /opt 这是给第三方软件放置的目录。
    /proc 这个目录本身是一个虚拟文件系统(virtual filesystem)。它放置的数据都是在内存当中,例如系统的内核、进程、外部设备状态及网络状态等。因为这个目录下的数据都是在内存当中,所以本身不占任何硬盘空间。
    /root 系统管理员(root)的主文件夹。之所以放在这里,是因为如果进入单用户维护模式而仅挂载根目录时,该目录就能拥有root的主文件夹,所以将root的主文件夹与根目录放置在同一块分区内。
    /sbin 放在/sbin下面的为开机过程中所需要的命令,里面包括开机、修复、还原系统所需要的命令。
    /srv srv可视为“service”的缩写,是一些网络服务启动之后,这些服务所需要取用的目录数据。
    /sys 这个目录跟/proc非常相似,也是一个虚拟文件系统,主要记录与内核相关的信息。包括目前已加载的内核模块与内核检测到的硬件设备信息等。该目录同样不占用硬盘容量。
    /tmp 这是一般用户或者时正在执行的程序暂时放置文件的地方。这个目录任何人都能访问并且创建数据,但是只用root和数据的使用者才能删除所创建的数据。

    2.usr及下级(即,unix system resource相当于win的目录:windows + programe files)

    目录 应放置的内容
    /usr/bin/ 绝大部分的用户可使用的命令都放在这里。它与/bin的不同之处在于:是否与开机过程有关。
    /usr/include/ C/C++等程序语言的头文件与包含文件放置处。
    /usr/lib/ 包含各种应用软件的函数库、目标文件,以及不被一般用户惯用的执行文件或脚本。
    /usr/local/ 系统管理员在本机自行安装自己下载的软件,建议安装到此目录,这样比较便于管理。
    /usr/sbin/ 非系统正常运行所需要的系统命令。
    /usr/share/ 放置共享文件的地方。
    /usr/src/ 一般源码建议放置到这里,src可以视为source的缩写。而至于内核源码则建议放置到/usr/src/linux/目录下。

    3.var及下级

    • /var目录主要针对常态性变动的文件,包括缓存、登陆文件以及某些软件运行所产生的文件
    目录 应放置的内容
    /var/cache/ 放置应用程序本身运行过程中会产生的一些暂存文件。
    /var/lib/ 程序本身执行过程中,需要使用到的数据文件放置目录。
    /var/lock/ 某些设备或文件资源一次只能被一个应用程序所使用,如果同时有程序使用该设备或文件资源时,就可能产生一些错误的情况,因此就要将该设备或文件资源上锁(lock),以确保该设备或文件资源只会给单一软件所使用。
    /var/log/ 放置登录文件的目录。面比较重要的文件如/var/log/messages,/var/log/wtmp(记录登录者信息)等。
    /var/mail/ 放置个人电子邮件信箱的目录。不过这个目录也被放置到/var/spool/mail/目录中,通常这两个目录是互为连接文件
    /var/run/ 某些程序或服务启动后,会将他们的PID放置在这个目录下。
    /var/spool/ 这个目录通常放置一些队列数据,所谓的“队列”就是排队等待其他程序使用的数据。这些数据被使用后通常会被删除。

    三、目录和文件的命名规则

    1、不超过255个字符
    2、区分大小写
    1 ) file、File、fILE表示不同的文件
    3、除了/外,所有的字符都合法
    1 )避免文件名首字符使用+-.
    2 )避免使用空格、制表符和*@#$%[]()
    4、最好使用有意义的名称来命名

  • 相关阅读:
    自考新教材--p94
    prim算法--教材p146-147
    图的广度优先遍历BFS实现--邻接矩阵p143
    自考新教材--p98
    输入若干有序数放在数组中,然后输入一个数,插入到此有序数列中,插入后,数组中的数仍然有序。请对插在最前、插在最后、插在中间三种情况运行程序,以便验证程序是否正确。
    【Mybatis】02 快速入门Part2 补完CRUD
    【Mybatis】01 概述 & 快速入门Part1
    【DataBase】MySQL 13 分组查询
    【DataBase】MySQL 06 条件查询 & 排序查询
    【DataBase】MySQL 05 基础查询
  • 原文地址:https://www.cnblogs.com/chenxi188/p/12573787.html
Copyright © 2011-2022 走看看