zoukankan      html  css  js  c++  java
  • Linux目录结构详解(一)

    Linux目录结构,在逻辑上所有目录只有一个顶点,即/(根目录),是所有目录的起点。根下面类似于一个倒挂着的树的结构。

    Linux目录按照类别组织:

    应用程序 /usr/bin

    数据文件,帮助/usr/share

    配置文件 /ect/

    启动命令 /etc/init.d

    要访问一块磁盘设备,必须先将其挂载到Linux目录结构中。如/dev/sda,要将其挂载到/usr上,用命令mount /dev/sda /usr,然后就可以使用磁盘了。目录结构和分区设备是没有关系的。不同的目录可以跨越不同的磁盘设备或分区。

    相对路径和绝对路径:

      从根开始的就是绝对路径,如/data /ect /usr/bin

      不是从根开始的就是相对路径 如:data ./test.txt

    Unix系统目录结构典故

      话说1969年,Ken ThompsonDennis Ritchie在小型机PDP-7上发明了Unix。1971年,他们将主机升级到了PDP-11。

      当时,他们使用一种叫做RK05的储存盘,一盘的容量大约是1.5MB。

      没过多久,操作系统(根目录)变得越来越大,一块盘已经装不下了。于是,他们加上了第二盘RK05,并且规定第一块盘专门放系统程序,第二块盘专门放用户自己的程序,因此挂载的目录点取名为/usr。也就是说,根目录"/"挂载在第一块盘,"/usr"目录挂载在第二块盘。除此之外,两块盘的目录结构完全相同,第一块盘的目录(/bin, /sbin, /lib, /tmp...)都在/usr目录下重新出现一次。  

      后来,第二块盘也满了,他们只好又加了第三盘RK05,挂载的目录点取名为/home,并且规定/usr用于存放用户的程序,/home用于存放用户的数据。

      从此,这种目录结构就延续了下来。随着硬盘容量越来越大,各个目录的含义进一步得到明确。

      /:存放系统程序,也就是At&t开发的Unix程序。

      /usr:存放Unix系统商(比如IBM和HP)开发的程序。

      /usr/local:存放用户自己安装的程序。

      /opt:在某些系统,用于存放第三方厂商开发的程序,所以取名为option,意为"选装"。

    Linux目录层次标准FHS

      FHS全称(Filesystem Hierarchy Standard),中文意思是目录层次结构,是Linux的目录规范标准。

      FHS定义了两层规范:第一层是"/"目录下应该存放什么文件数据,如/ect 目录放置系统的配置文件 /ect/exports,/ect/hosts,而/bin和/sbin放置程序及系统命令。

        第二层是针对/usr(unix software resource)和/var这两个子目录来定义的。

    /bin:常用二进制命令所在目录,如ls,cp,mkdir,rm等和/usr/bin类似

    /boot:Linux内核以及引导系统程序所需的文件目录。

    /dev:设备文件目录,如磁盘,声卡

    /dev/null:空设备 用cat /dev/null > ./test.txt 可以清空文件内容

    /etc:二进制安装包的配置文件默认路径和服务启动命令存放的目录。

    /home:普通用户的家目录默认数据存放目录

    /lib:库文件目录

    /root:超级用户root的家目录

    /lost+found:当系统意外崩溃或机器意外关机,会产生一些文件碎片在这里。系统在开机启动的过程中,fsck工具会检查这里,并修复已经损坏的文件系统。当系统发生问题时,可能会有文件被移动到这个目录中,可能需要用手工的方式来修复,或移动文件到原来的位置上。

    /mnt:一般用于临时挂载存储设备的挂载目录,如cdrom,u盘等目录。直接插入光驱无法使用,要先挂载后使用。挂载点就是文件系统的(设备)入口。

    /opt(option):在某些系统,用于存放第三方厂商开发的程序,所以取名为option,意为"选装"。

    /proc:一个虚拟的文件系统。/proc 文件系统是一种内核和内核模块用来向进程 (process) 发送信息的机制 (所以叫做 /proc)。这个伪文件系统让你可以和内核内部数据结构进行交互,获取 有关进程的有用信息,在运行中 (on the fly) 改变设置 (通过改变内核参数)。 与其他文件系统不同,/proc 存在于内存之中而不是硬盘上。

    /sbin:大多是设计系统管理命令的存放地,是root用户可执行命令的存放地。

    /tmp:临时文件目录,有时用户运行程序时,会产生临时文件。/tmp就用来存放临时文件,权限比较特殊。/var/tmp目录和这个目录类似

    /var:这个目录内容经常变动的。/var/log目录用来存放系统日志,/var/www目录是定义Apache服务器站点存放目录;/var/lib用来存放一些库文件,如MySQL数据库。

    一些重要的子目录或文件:

      /var/log/messages 系统日志

      /var/log/secure 系统安全日志

      /var/spool 打印机、邮件、代理服务器等假脱机目录

      /proc/interrupts 中断文件

      /etc/fstab 磁盘文件系统开机自动挂载文件

      /etc/profile 全局的环境配置文件

  • 相关阅读:
    玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-4 模态弹出框--结构分析
    玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-3 模态弹出框
    玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-2 动画过渡
    玩转Bootstrap(JS插件篇)-第1章 模态弹出框 :1-1导入JavaScript插件
    SpringMVC中的 JSR 303 数据校验框架说明
    对JSON格式的城市按照拼音首字母排序
    Urozero Autumn 2016. BAPC 2016
    BZOJ2596 : [Wc2007]疯狂赛车
    BZOJ3253 : 改编
    XVII Open Cup named after E.V. Pankratiev. GP of Moscow Workshops
  • 原文地址:https://www.cnblogs.com/ZGreMount/p/7647314.html
Copyright © 2011-2022 走看看