一,linux的目录结构

  • /bin:所有用户都可以使用的可执行程序

  • /sbin:系统管理员使用的可执行程序

  • /boot:引导加载器必须用到的静态文件:kernel,initramfs,grub等。

  • /dev:设备文件和特殊文件(虚拟设备等)。设备有2种

    • 字符设备(线性设备,有顺序依次处理):逐个字符处理。比如,显示器,键盘等
    • 块设备(随机设备,无顺序跳跃处理):多个字符一起处理。比如,硬盘等
  • /etc:进程的配置文件。必须是文本文件。它下面必须有以下4个目录

    • opt:Configuration for /opt
    • X11:Configuration for the X Window system(optional)
    • sgml:Configuration for SGML(optional)
    • xml:Configuration for XML(optional)
  • /home:用户使用的家目录的集中位置。

  • /root:管理员的家目录。

  • /lib:为系统启动或者/bin和/sbin目录下的可执行程序提供共享库,以及为内核提供内核模块。

    • libc.so.*:动态链接的C库。
    • ld*:运行时的链接器/加载器
    • /lib/modules目录:用于存放内核模块的目录。
  • /lib64:64系统的动态库文件

  • /media:便携式设备挂载点,比如cdrom,软盘,u盘等

  • /mnt:其他文件系统的临时挂载点。

  • /opt:Add-on application software packages。第三方程序的安装目录。

  • /srv:当前主机为服务提供的数据,一般不使用。

  • /tmp:为那些会产生临时文件的进程,提供用于存储临时文件的目录。可供所有用户提供写入操作。

  • /usr:全局共享的只读数据路径。

    • /bin,/sbin
    • /lib,/lib4
    • /include:c的头文件
    • /share:命令手册和自带文档
    • /local:第三方的安装程序的存放目录。让系统管理人员安装新版本的程序,并保留老版本的程序。
    • /src:程序源码文件
  • /var:数据经常发生的目录。比如日志。

    • /cache:application cache data
    • /lib:variable state information
    • /local:variable data for /usr/local
    • /lock:Lock files
    • /log:Log files and directories
    • /opt:variable data for /opt
    • /run:data relevant to running processes
    • spool:application spool data
    • tmp:temporary files preserved between system reboots
  • /proc:基于内存的虚拟文件系统。内核是有属性信息(版本号等)的,那么如何查看,正在运行中的内核的属性信息呢?内核把它的属性信息抽象成filesystem。比如内核属性:net.ipv4.ip_forward,抽象成了/proc/sys/net/ipv4/ip_forward文件,这个文件里的内容就是此属性的值。进程和内核一样,也把自己的属性信息,抽象成了filesystem。符合Linux里,一切都是文件的理念。

  • /sys:sysfs虚拟文件系统提供了比/proc更好的访问内核属性数据的途径,其主要作用:为管理linux设备提供了统一的接口。以后有可能取代/opt。从2.6内核开始才有此目录。

    # ls /sys
    block class devices fs kernel power
    bus dev firmware hypervisor module

二,文件类型

ls -l后,

# ls -lrt /dev
total 0
drwxrwxrwt. 2 root root 40 Dec 14 18:26 shm
lrwxrwxrwx. 1 root root 15 Dec 14 18:26 stdout -> /proc/self/fd/1
crw-------. 1 root root 10, 239 Dec 14 18:26 uhid
brw-rw----+ 1 root cdrom 11, 0 Dec 14 18:26 sr0
drwxr-xr-x. 3 root root 60 Dec 14 18:26 bus
  • ls -lrt /dev的输出结果中的第一个数字10:major number:主设备号,用于标识设备类型的,进而确定要加载的驱动程序。
  • ls -lrt /dev的输出结果中的第二个数字239:minor number:次设备号,用于标识同一类型中的不同设备。
  • -:常规文件
  • d:目录
  • b:block device,块设备文件,可以以block单位,进行随机访问
  • c:character device,字符设备文件,以字符为单位,进行线性访问
  • l:symolic link,符号链接,软链接文件
  • p:pipe,有名字的管道文件
  • s:socket,套接字文件,用于本地进程间通信

ps:用file命令可以查看文件的类型。

c/c++ 学习互助QQ群:877684253

本人微信:xiaoshitou5854

Linux 文件系统简介(FHS:Filesystem Hierarchy Standard)的更多相关文章

  1. Linux:文件系统层次结构标准(Filesystem Hierarchy Standard)

    Linux FHS_2.3标准文档:http://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.pdf

  2. Linux & Filesystem Hierarchy Standard

    Linux & Filesystem Hierarchy Standard The Filesystem Hierarchy Standard of Linux https://zhuanla ...

  3. The Filesystem Hierarchy Standard of Linux

    The Filesystem Hierarchy Standard of Linux linux directory https://zhuanlan.zhihu.com/p/23862856 htt ...

  4. linux 文件系统简介

    linux文件系统简介   文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识. 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录.挂载基 ...

  5. linux文件系统简介

    文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识. 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录.挂载基本原理.文件存储结构.软链接 ...

  6. Linux文件系统简介----转载

    原文地址:Linux文件系统 文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识. 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录.挂载 ...

  7. 【转载】linux文件系统简介

    文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识. 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录.挂载基本原理.文件存储结构.软链接 ...

  8. Linux文件系统简介及常用命令

    在linux系统中一切皆是文件,下面简要总结了一下linux文件系统中分区类型.文件系统类型以及常用命令. 一.分区类型1.主分区:最多只能有四个2.扩展分区:只能有一个,也可以看做是主分区的一种.即 ...

  9. Filesystem Hierarchy Standard (Unix, Linux etc)

    http://www.pathname.com/fhs/ /boot -- Static files of the boot loader Purpose: contains everything r ...

随机推荐

  1. SPOJ Distanct Substrings(求不同子串的数量)

    Given a string, we need to find the total number of its distinct substrings. Input T- number of test ...

  2. hdu-4638

    There are n men ,every man has an ID(1..n).their ID is unique. Whose ID is i and i-1 are friends, Wh ...

  3. HDU2833-WuKong(求不同起点,终点最短路的交点最多数量)

    Liyuan wanted to rewrite the famous book "Journey to the West" ("Xi You Ji" in C ...

  4. Python抓取豆瓣电影top250!

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者:404notfound  一直对爬虫感兴趣,学了python后正好看到 ...

  5. Sqlite 的管理工具SQLite

    SQLite 的管理工具 SQLite Administrator 下载链接 : https://sqliteadmin.orbmu2k.de/ 下载后是一个免安装的程序文件,直接运行就可以了,可以选 ...

  6. get请求被浏览器跨域的同源策略请求机制拦截,但是get请求是否请求到了服务器呢

    浏览器会拦截跨域请求,但是只是拦截返回结果,请求还是会被发送到服务器. 请求因为跨域被拦截后,会改成 OPTIONS 请求送达服务器,这样服务器就可以知道有人在请求.

  7. PHP ftp获取目录内容为空

    使用PHP的ftp函数获取目录内容,ftp_nlist()和ftp_rawlist()返回都为空. 查了一圈资料找不到答案,然后用Python写了一个,一样的操作就可以获取目录内容. 抓包发现,Pyt ...

  8. ObjectPool 对象池设计模式

    Micosoft.Extension.ObjectPool 源码架构.模式分析: 三大基本对象: ObjectPool抽象类 ObjectPoolProvider抽象类 IPooledObjectPo ...

  9. 松软科技Web课堂:JavaScript JSON

    JSON 是存储和传输数据的格式. JSON 经常在数据从服务器发送到网页时使用. 什么是 JSON? JSON 指的是 JavaScript Object Notation JSON 是轻量级的数据 ...

  10. SuperMap iDesktop .NET 10i制图技巧-----如何利用二维平面数据起白膜

    1.打开超图的SuperMap iDesktop,加载数据源 udbx其实就是类似于arcgis中的gdb一样的东西,把数据压缩在里面了,这样也可以保证数据的统一集中 2.打开二维面数据,里面的结构如 ...