【Linux根文件系统层级标准FHS(01)】笔记

如何使用帮助

  • help
  • –help,man,info
  • 自带文档(README,CHANGELOG,INSTALL),官方文档
  • 发行版的文档
  • Google

Linux Kerenl:Documentation
whatis keyword:在使用手册内容中的查询关键词
man (n) KEYWORD:查看关键词在具体章节中内容

程序编译方式

Linux基本库包含

  • 动态链接式编译:
    程序将需要调用库的代码复制到编译程序本身,程序运行不依赖库内文件,节约内存资源。体积大,难开发。
  • 静态链接式编译:
    程序运行需要用到库时,从库调用,如库中没有匹配的库则程序无法运行。体积小,易开发

进程的类型

  • 与终端相关:依赖终端启动的进程
  • 与终端无关:操作引导启动过程当中自启动

操作系统的组成
从静态观点看,由kernel+application构成
由文件系统组织成层级结构
FHS(Filesystem Hierarchy Standard 文件系统层次化标准)

  • /bin
    供所有用户使用的基本命令文件目录
  • /sbin
    供系统管理员使用的命令程序目录
  • /boot
    引导加载器必须用到的各静态文件目录。包括kernel,initramfs(initrd),grub等
  • /dev
    特殊文件(如虚拟设备)或设备文件目录

设备分为:

  • 字符设备(线性设备)
    有时序的,只能以字符方式输入输出的设备,如:键盘
  • 块设备(随机设备)
    以数据块方式输入输出的设备, 如:硬盘
  • /etc
    主机特有的系统配置文件,只能是静态,不能是程序执行文件,拥有自己独立的层级结构(opt,X11,sgml,xml)
  • /home
    普通用户家目录(optional 可选的目录)
  • /root
    管理员家目录(optional 可选的目录)
  • /lib
    基础共享库和内核模块目录,为 /bin 和 /sbin 目录下的文件提供共享库

libc.so.:动态链接的C库
Id
:运行链接器/加载器
modules:存储内核模块的目录

  • /lib<qual>
    64位即以上系统特有的库文件目录
  • /media
    挂载便携设备的目录
  • /mnt
    其它文件系统的临时挂载目录
  • /opt
    扩展应用程序包目录(optional 可选的目录)
  • /srv
    当前主机提供特有服务的数据目录
  • /tmp
    临时文件目录,供所有用户执行写入操作,有特殊权限
  • /usr
    usr hierarchy,全局共享的只读文件目录

子目录:

  • /bin
  • /sbin
  • /lib
  • /lib<qual>
  • /include(C程序头文件)
  • /share(参考手册和自带文档等架构特有的文件目录)
  • /local(local hierarchy,系统管理员用于安装本地应用程序或第三方的目录,local目录也拥有自己的独立层级结构 ),/X11R6(X-Window程序安装目录)
  • /src:程序源码文件的储存目录
  • /var
    var hierarchy,存储常发生变化的数据目录
  • cache – Application cache data
  • lib – Variable state information
  • local – Variable data for /usr/local
  • lock – lock tiles
  • log – log files and directuries
  • opt – Variable data for /opt
  • run – Data relevant to running processes
  • spool – Application spool data
  • tmp – Temporary files preserved between system reboots
  • /proc
    基于内存的虚拟文件系统,将内核和进程信息的虚拟路径抽象为文件信息模式进行保存,多为内核参数,如:net.ipv4.ip-forward通过proc虚拟为net/ipv4/ip-forward,完整路径为/proc/sys/net/ipv4/ip-forward,存储于/proc/sys下
  • /sys
    sysfs虚拟文件提供一种比proc更为理想的访问内核数据的途径,其主要作用在于为管理Linux设备提供一种统一模型的接口。
    参考:https://www.ibm.com/developerworks/cn/linux/l-cn-sysfs
    原文作者:goee
    原文地址: https://www.jianshu.com/p/2069102c5fde
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞