• linux学习笔记-目录结构(1)


    每个linux系统的目录结构差不多,因为有FHS(Filesystem Hierarchy Standard)标准的规范。

    FHS的重点在于规范每个特定的目录下应该要放什么样的数据。

    FHS依据文件系统使用的频繁与否是否允许用户随意改动,而将目录定义为四种交互作用的形态:

    1. 可分享的:可以分享给其他系统挂载使用的目录,包括执行文件和用户的邮件等数据。
    2. 不可分享的:自己机器上面运行的设备文件或者是与程序有关的socket文件等。
    3. 不变的:有些数据是不会经常变动的,例如函数库、文件说明文件、系统管理员所管理的主机服务配置文件等。
    4. 可变的:经常改变的数据,例如登录文件、新闻组等。

    事实上,FHS针对目录树架构仅定义出三层目录下面应该放置什么数据而已,分别是下面这三个目录的定义:

    1. /:与开机系统有关
    2. /usr:与软件安装/执行有关
    3. /var:与系统运作过程有关。

    1、根目录(/)的意义与内容

    根目录是整个系统最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的,同时,根目录也与开机、还原、系统修复等操作有关。

    根目录不要放在非常大的分区内,因为越大的分区会放入越多的数据,有较多发生错误的可能。因此FHS标准建议:根目录所在分区应该越小越好,且应用程序所安装的软件最好不要与根目录放在一个分区内。

    FHS定义出根目录下面应该有下面这些子目录的存在:

    • /bin:放置在单用户维护模式下还能够被操作的命令。/bin下面的命令可以被root与一般账号所使用,主要有cat、chmod、chown、date等常用命令。
    • /boot:主要放置开机会使用到的文件,包括Linux内核文件以及开机菜单与开机所需配置文件等。
    • /dev:任何设备与接口设备都是以文件的形式存在于这个目录当中。访问这个目录下的文件,相当于访问某个设备。
    • /etc:系统主要的配置文件几乎都放置在这个目录内。一般只有root有权修改。
    • /home:系统默认的用户主文件夹。~代表目前这个用户的主文件夹。
    • /lib:放置开机时会用到的函数库,以及在/bin或/sbin下面的命令调用的函数库。/lib/modules这个目录放置内核相关的模块(驱动程序)。
    • /media:可删除的设备,包括软盘、光盘等设备都暂时挂载于此。
    • /mnt:暂时挂载某些额外的设备。
    • /opt:第三方软件放置的目录。
    • /root:系统管理员的主文件夹。一般与根目录放置在同一个分区中。
    • /sbin:开机过程中所需要的,包括开机、修复、还原系统所需要的命令。
    • /srv:一些网络服务启动后,这些服务所需要取用的数据目录。
    • /tmp:临时文件目录,不要放重要数据。

    以下几个也是非常重要的目录:

    • /lost+found:使用标准的ext2/ext3文件系统格式才会产生的一个目录,目的在于当文件系统发生错误时,将一些丢失的片段放置在这个目录下。
    • /proc:一个虚拟文件系统,它放置的数据都是在内存当中,例如系统内核、进程、外部设备状态网络状态等,不占用任何硬盘空间。
    • /sys:类似于/proc,不占用硬盘空间。

    注意根目录与开机有关,开机过程中仅有根目录会被挂载,其他分区则是在开机完成之后才会持续进行挂载的行为。因为如此,根目录下与开机有关的目录就不能放置在不同的分区,有以下这些:

    • /etc:配置文件
    • /bin:重要执行文件
    • /dev:所需要的设备文件
    • /lib:执行文件所需的函数库与内核所需的模块
    • /sbin:重要的系统执行文件
  • 相关阅读:
    黑胶100
    界面滑动+ztree
    Linux下Java获取本机IP地址
    垂直对齐vertical-align:top
    针对jquery获取表单数据并且迭代方式
    js传递参数中文乱码
    前端开发资源库
    webpack加载器(Loaders)
    webpack基础知识点
    webpack操作基础
  • 原文地址:https://www.cnblogs.com/zczhangcui/p/6836847.html
Copyright © 2020-2023  润新知