美文网首页
目录解析(1)

目录解析(1)

作者: jeepshen | 来源:发表于2017-01-06 21:30 被阅读0次

    目录结构解析 (1) /boot /dev/ /proc

    参考书籍《Linux 系统架构和目录解析》

    操作系统:Debian 8.6发行版 jessie

    FHS (Filesystem Hierarchy Standard)规定的目录结构:

    根目录下的各个目录
    目录 含义
    /bin 所有用户都可以使用的“必要”命令
    /boot 开机启动加载程序的核心文件
    /dev 设备文件目录:字符设备,块设备等。
    /etc 主机或者系统的配置文件目录
    /home 用户目录
    /lib 需要共享的函数库与kernel模块
    /media 移动存储设备的挂载点
    /mnt 临时挂载的挂载点
    /opt 额外所安装的应用程序目录
    /root root管理员的家目录
    /sbin 存放系统的必要指令
    /srv 系统服务的文件存放区
    /tmp 临时文件存放区
    /usr/ /var/ /proc之后介绍
    
    根目录的产生和系统启动
    1. 启动流程:
      • 系统预处理程序? -> GRUB -> Kernel -> initrd(在这里挂载/根目录)
      • init启动 -> inittab(桥黑板:文件作用) -> rc.sysinit -> functions -> modules
        -> rcX.d ->图形模式/字符模式
    2. 关机流程:
      • 关机: shutdown/reboot -> Close Service -> Kill all Processes -> halt/reboot
      • 休眠: sleep -> suspend/Hibernate -> Functions -> close devices

    Debian8.6 目录结构

    开机启动加载/boot

    ├── boot
    │   ├── config-3.16.0-4-amd64
    │   ├── grub
    │   ├── initrd.img-3.16.0-4-amd64
    │   ├── memtest86+.bin
    │   ├── memtest86+_multiboot.bin
    │   ├── System.map-3.16.0-4-amd64
    │   └── vmlinuz-3.16.0-4-amd64
    
    文件名或目录名 作用
    config-3.16.0-4-amd64 系统kernel的配置文件,内核的功能配置
    /grub 启动管理程序GRUB,包括GRUB启动时的画面
    initrd 系统启动时的模块供应主要来源
    memtest86+.bin 启动时的内存检测工具?
    System.map-3.16.0-4-amd64 系统Kernel的变量对应表
    vmlinuz-3.16.0-4-amd64 最重要的文件,实际就是系统使用的Kernel

    内核空间和用户空间的桥梁:虚拟文件系统

    1. Kernel执行会占据一块内存空间,就是内核空间,所有用户都不能直接和内核空间交互,这样提供保护和保证读写速度
    2. 用户空间是用户执行任何程序占用的内存空间
    3. 特权级 用途 允许访问
      Ring0 内核空间 Kernel
      Ring1 虚拟机文件系统 Devices
      Ring2 用户空间 Modules or Driver
      Ring3 用户空间 User or Application
      对应CPU的特权级:
      特权级 用途 允许访问
      Ring0 内核空间 Kernel
      Ring1 虚拟机文件系统 Devices
      Ring2 用户空间 Modules or Driver
      Ring3 用户空间 User or Application

    设备文件目录 /dev

    ├── dev
    │   ├── autofs
    │   ├── block
    │   ├── bsg
    │   ├── btrfs-control
    │   ├── bus
    │   ├── char
    │   ├── console
    │   ├── core -> /proc/kcore
    │   ├── cpu
    |   | ....
    

    /dev(ring2) <-> devfs(ring1) <-> Kernel(ring0)
    'll'alias 'ls -al' 查看文件:

    • 文件属性字段:1位类型字段('-':普通文件,‘d’:目录,‘l’:符号链接,‘b’:块设备,‘c’:字符设备)9权限字段
    • 如果是文件,表示该文件的硬链接数;如果是目录,表示目录内的子目录数
    • 文件拥有者
    • 文件拥有者所在的组
    • 文件大小
    • 创建日期或者最后修改日期
    • 文件名
    设备文件名 类别 所属组 主要用途
    /dev/mem char kmem 读写物理内存时用
    /dev/null char root 空的设备文件,黑洞,接地线
    /dev/zero char root 空的位文件,可以用来缠上固定大小的文件
    /dev/random char root 产生随机数
    /dev/urandom char root 快速但低安全性的随机数产生器
    /dev/sda* block disk SATA硬盘或者光驱的设备文件
    /dev/hda* block disk IDE硬盘或者光驱的设备文件
    /dev/tty* char tty 用户登录时使用的控制台接口,依次编号,最多有64个:0-63
    /dev/ttyS0 char dialout 串口COM口使用的控制台接口,最多192个?
    /dev/console char root 系统的终端借口, 显示开机启动信息
    /dev/ptmx char tty /dev/pts下文件的来源
    /dev/pts char tty 远程或者Xwindows用户打开的Terminal 界面
    /dev/bus dir root 总线设备,常用的都是USB
    /dev/disk dir root 硬盘信息
    /dev/input dir root 输入设备: event , mice, mouse
    /dev/mapper dir root 块设备的映射
    /dev/net/tun char root VPN 通道
    /dev/shm file shen普通用户 tmpfs挂载,虚拟文件系统,用于共享内存的一种API
    /dev/VolGroup00 link root LVM组

    程序信息和系统设置目录 /proc

    ├── proc
    │   ├── 1
    |   ├── ....
    │   ├── acpi
    │   ├── asound
    │   ├── buddyinfo
    │   ├── bus
    |   ├── ....
    

    /proc目录是procfs产生的,procfs用以存储开机后硬件,进程相关信息的方式。/proc不是一个实体的目录,root也不能再该目录下增删文件。
    /proc对系统的功能:

    • 整理系统内部的信息;
    • 存放主机硬件信息;
    • 调整系统执行时的参数;
    • 检查和修改网络和主机的参数;
    • 检查和调整系统的内存和性能;
    文件名 主要用途
    /proc/cpuinfo CPU硬件信息
    /proc/devices 设备号和设备类型
    /proc/interrupts 中断编号;cpu使用该中断的次数;中断的管理模式,一般位APIC, PIC;对应的硬件设备
    /proc/kcore 系统的内存,(或者最大内存?我这里显示128T, 0_0)
    /proc/keys keys-users Linux的密钥保留服务
    /proc/meminfo 系统内存的信息
    /proc/mudoules 系统模块信息,lsmod信息来自该文件
    /proc/mttr 系统内存配置机制
    /proc/iomem 和/proc/mttr 配合,储存配置后内存的明细信息
    /proc/ioports 可见设备对应内存位置的分配表
    /proc/[numbers] 系统运行的程序 ps ax 看到的信息应该来自这里
    /proc/acpi 省电设置相关的文件
    /proc/bus 主机上总线的所有信息,包括输入设备,PCI接口..
    /proc/driver 很少用
    /proc/net 网络相关的虚拟文件
    /proc/sys 系统核心会使用到的一些变量, 可以通过/etc/sysctl.conf修改这里的值,和/sys目录对比?

    相关文章

      网友评论

          本文标题:目录解析(1)

          本文链接:https://www.haomeiwen.com/subject/pauxbttx.html