Linux目录树

时间:2022-03-01 05:39:08

Linux目录树(directory tree)

分层结构(不同于数据库文件系统),单个文件/目录的最大长度为255个字符,完整路径为4096个字符

特殊的文件系统

文件系统

挂载点

说明

Root

/

Linux系统运行的基点

Proc

/proc

以文件系统的方式为访问系统内核数据的操作接口(2.4,2.6)

Sysfs

/sys

以文件系统的方式为访问系统内核数据的操作接口(2.6)

Tmpfs

/dev,/var/run,/var/lock

程序访问共享内存资源时使用的文件系统

Usbfs

/proc/bus/usb

访问usb设备时使用的文件系统

Devpts

/dev/pts

内核用来与伪终端进行交互的文件系统

Swap

内核使用的特殊文件系统,无挂载点

创建虚拟内存

/(root,根目录):目录树的起始点,衍生其它目录并与开机,还原,系统修复有关,因此根目录越小越好

/bin

单用户维护模式下操作命令/执行文件,一般用户即可执行的命令

基本系统所需的命令。功能和/usr/bin类似,这个目录中的文件都是可执行的,普通用户都可以使用的命令。

/sbin

开机过程中所需要的设置系统环境/系统维护文件,需要root权限

/dev

设备和接口以文件形式存放于这个目录,读写文件相当于操作接口/设备

/etc

系统主要的配置文件(不要放置可执行文件binary)

/lib

执行文件所需的函数库与内核所需的模块

库文件和内核模块

/boot

开机所用文件,Linux内核(加载)文件/开机菜单/开机配置文件等(vmlinuz/grub)

内核和加载内核所需的文件。一般情况下,GRUB 或 LILO 系统引导管理器也位于这个目录。

/home

用户主文件夹(home directory)

/media

可删除的设备软盘/media/floppy,光盘/media/cdrom

即插即用型存储设备的挂载点自动在这个目录下创建,比如 USB盘、CDROM/DVD自动挂载后,也会在这个目录中创建一个目录。

/mnt

暂时挂载

/opt

第三方软件配置

/root

系统管理员主文件夹

/srv

网络服务所需的数据

存放本系统提供的站点服务数据。

/tmp

临时文件夹

/lost+found

这个目录通常在ext2/ext3分区的最顶层,目的在于文件系统发生错误时,将一些丢失的片段放置到这个目录下

/proc

虚拟文件系统(virtual filesystem),在内存中记录内核,进程,设备状态等

/sys

虚拟文件系统,记录内核相关信息,加载的内核模块/检测到的硬件设备等

/usr

Unix操作系统软件资源(UNIX Software Resource)类似于Program file

存放用户使用系统命令和应用程序等信息,比如命令、帮助文件等。

/var

运行时产生的动态文件,包括缓存(cache),登陆文件(log file),程序文件(lock file,run file),数据库文件等

存放经常变动的数据。

其它重要目录

/usr/X11R6 存放 X Window 的目录
/usr/bin 存放了许多用户命令
/usr/games
存放游戏和教育类软件
/usr/include 存放Linux下开发和编译应用程序所需要的头文件
/usr/lib
放一些常用的动态链接共享库和静态档案库
/usr/local 供给本地用户的/usr目录,在这里安装本地的应用软件
/usr/sbin
存放root超级用户使用的管理程序
/usr/share 系统共用的东西存放地,如:手册、文档、字体等
/usr/src 是内核源码存放的目录

/usr/X11R6/

X Windows系统重要数据放置目录

/usr/bin/

绝大部分用户可以使用的命令(有别于/bin 是否与开机过程有关)

/usr/include/

C/C++等语音的头文件与包含文件

/usr/lib/

应用软件函数库,目标文件,不被一般用户惯用的执行文件或脚本

/usr/local/

系统管理员自行安装下载软件的目录

/usr/sbin/

非系统正常运行所需要的系统命令

/usr/share/

共享文件,几乎不分硬件架构均可读取的数据

/usr/src/

源码目录(内核源码放于/usr/src/linux下)

/var/cache/

程序运行过程中的暂存文件

/var/lib/

数据文件放置的目录,如MySQL:/var/lib/mysql,rpm:/var/lib/rpm

/var/lock/

设备/文件只能被一个程序所访问(Lock),如刻录机,打印机等

/var/log/

登陆文件,如:/var/log/messages,/var/log/wtmp(登陆者信息)等

/var/mail/

个人信箱目录,通常与/var/spool/mail/互为链接文件

/var/run/

服务启动的pid存放目录

/var/spool/

队列数据,如新信件/var/spool/mail,发信件/var/spool/mqueque等

/etc/X11/

X Windows的设置目录

/etc/altermatives

存储具有相同功能程序的二/多选一的链接目录

/etc/apm

高级电源管理的配置目录

/etc/init.d

守护进程启动脚本目录

/etc/logrotate.d

日志滚动脚本的配置目录

/etc/lvm

LVM2配置目录

/etc/opt

/opt应用程序的配置目录

/etc/pam.d

PAM配置目录

/etc/pcmcia

Pcmcia设备配置目录

/etc/ppp

Ppp设备配置目录

/etc/rc?.d

启动,改变运行时的scripts目录

/etc/skel

普通用户初始化环境目录

/etc/ssh

Ssh的配置目录

/etc/vim

Vim的配置目录

/etc/w3m

W3m的配置目录

/etc/yum

Yum的配置目录

/etc/yum.repos.d

Yum源的配置目录

/proc/n

N为PID,每个进程在/proc下有一个名为其进程号的目录

/proc/cpuinfo

处理器信息,如:类型,制造商,型号,性能

/proc/devices

当前运行的核心配置的设备驱动列表

/proc/dma

当前使用的DMA通道

/proc/filesystems

核心配置的文件系统

/proc/interrupts

使用的中断

/proc/ioports

使用的I/O端口

/proc/kcore

系统物理内存映像,与物理内存大小完全一样,但不实际占用内存

/proc/kmsg

核心输出的消息,也被送到syslog

/proc/ksyms

核心符号表

/proc/loadavg

系统负载均衡:3个指示器指出当前的工作量

/proc/meminfo

存储器使用信息,包括物理内存和虚拟内存

/proc/modules

当前加载的核心模块

/proc/net

网络协议状态

/proc/self

查看/proc目录的程序的符号链接,

/proc/stat

系统状态

/proc/uptime

系统启动的时间长度

/proc/version

内核版本信息

绝对目录&相对路径

绝对路径以根目录(/)开始,如:/home等,相对路径,如:cd var/log cd ../../home等

Linux文件

Linux系统并不刻意区分文件的类型,但可以按照管理添加后缀,文件名最长为255个字符,完整路径长度为4096个字符,文件名避免特殊字符 *?<>;&![]|\(){}

文件种类(ls -l第一个字符)

- 普通文件(regular file):纯文本文件(ASCII cat可查看)/二进制文件(binary可执行文件)/数据格式文件(data如日志文件等特殊文件cat时会乱码)/源代码/shell脚本等:

d 目录文件(directory):目录是一种特殊类型的文件,存储其下的文件名和节点,由linux管理维护,用户可以访问但无法直接修改目录文件的内容

l 链接(link)文件:是那个不同的文件名引用同一个数据或程序,(指向同一个block节点)也称为硬连接(适用于同一文件系统),任何一个文件更新都会反映到其它文件中.符号链接文件能够跨越不同的物理文件系统建立连接文件,符号连接文件本身也是一种单独的数据文件,其内容是指向文件或目录的路径名

设备文件(device)/特殊文件(special type):

b 块(block)设备文件:采用与数据块组织结构和处理方式的设备(磁盘)相关联,以固定长度的数据块传输数据,也能够随机访问其中的任何数据块的存储设备,如磁盘与内存之间通常以数据块的方式传输数据,借助文件系统,可以在磁盘的任何位置读写热议的字节的数据

c 字符(character)设备文件:任何非数据块组织的设备均为字符设备,字符设备无法随机访问(不能对键盘随机截取),其最底层的I/O接口一次只能处理一个字符,鼠标,键盘,控制台终端,打印机等串口设备都是字符特殊文件

s 套接字(sockets) :用于网络上数据的连接,以及进行数据通信

p 管道(FIFO,pipe):First-in-first-out先进先出,主要目的是解决多个程序同时访问一个文件所造成的错误问题,Linux系统存在两种管道:普通管道/管道文件,普通管道是一个可用文件描述符标识和存取的数据缓冲区,当程序执行结束后自动消失,管道文件作为一个特殊文件存在于系统文件系统中,故管道文件也被称谓命名的管道(named pipe)