linux系统的目录结构
目录结构特点:
(1)目录结构和分区设备是没有关系的,也就是不同的目录可以跨越不同的磁盘设备或分区
(2)linux的目录结构也是有规律的,而且也是按照类别组织的
(3)区分绝对路径和相对路径
目录层次标准FHS
FHS linux目录定义标准
FHS定义了两成规范
第一层是“/”目录下的各个目录应该放什么文件数据
第二层是针对/usr和/var这两个目录的子目录来定义
/根目录,一级目录
逻辑上所有的目录只有一个顶端/(跟),所有目录顶点
/ #存放系统相关的程序,也就是At&t开发的Unix程序
|-- application
|-- bin #程序及系统命令,常用二进制命令所在目录
|-- boot #Linux的内核引导程序所需的文件目录
|-- dev #设备文件目录
|-- etc #系统的配置文件存放目录
|-- home #普通用户的家目录默认数据存放目录
|-- lib #库文件存放目录
|-- lib64 #库文件存放目录
|-- lost+found #在ext3文件系统中,系统意外的崩溃了或关机了,会产生一些文件碎片在这里
|-- media #移动介质的挂载点
|-- mnt #一般是用于挂载存储设备的挂载目录,光驱、U盘等
|-- opt #存放一些软件包,自定义软件包,我们自己编译的软件的软件包,可以安装在这个目录
|-- proc #操作系统运行时,进程信息及内核信息(比如CPU、硬盘、内存信息等)存放在这里
|-- root #Linux超级用户权限用户root的家目录
|-- sbin #系统管理命令存放,是超级用户root的可执行命令存放地
|-- selinux #
|-- srv #服务数据,包含服务器特定服务相关的数据
|-- sys #
|-- tmp #临时文件目录
|-- usr #存放Unix系统商开发程序,比如命令、帮助文件等
`-- var #存放可变数据,如日志、缓存文件等
/etc/目录
特定主机系统范围内的配置文件。
/etc/sysconfig/network-scripts/ifcfg-eth0 #配置网络地址和网关等,网卡的配置文件
/etc/resolv.conf #设置linux本地客户端DNS的文件
/etc/hosts #设置IP与名字(域名)的对应解析表,相当于本地LAN内的DNS
/etc/sysconfig/network #可修改机器名及网卡启动,网管等配置
/etc/fstab #记录开机要mount的文件系统的一个文件
/etc/inittab #设定系统启动时init进程将把系统设置成什么样的runlevel及加载相关的启动文件设置
/etc/exports #设定NFS网络文件系统用的配置文件。
/etc/init.d #这个目录是用来存放系统或者服务器以System V模式启动的脚本,这在以System V模式启动或初始化的系统中常见
/etc/xinetd.d #如果服务器是通过xinetd模式运行的,它的脚本要放在这个目录下。有些系统没有这个目录
/etc/profile #系统全局变量配置路径(可以存放ailas rm = 和PATH变量)
/etc/profile.d #加载系统登录程序一个目录,命令或文件独立存在
/etc/rc.local #存放开机自启动程序命令的文件(chkconfig只能管理yum/tpm安装的程序的启动文件)
/etc/issue #记录用户登录前显示的信息
/etc/motd #登录提醒
/etc/redhat-release #RedHat版本号和名称的信息
/etc/system-release #系统版本号和名称的信息
/etc/group #设定用户的组名与相关信息
/etc/passwd #账号信息文件
/etc/shadow #密码信息文件
/etc/sudoers #可执行使用sudo命令的配置文件
/etc/securetty #设定那些终端可以让root登陆
/etc/login.defs #所有用户登录时缺省配置
/etc/modprobe. conf #内核模块额外参数设定
/etc/syslog.conf #日志设置文件
/etc/rsyslog.conf #日志设置文件
/etc/DIR_COLORS #设定颜色
/etc/host.conf #文件说明用户的系统如何查询节点名
/etc/hosts.allow #设置允许使用inetd的机器使用
/etc/hosts.deny #设置不允许使用inetd的机器使用
/etc/protocols #系统支持的协议文件
/etc/X11 #X Window 的配置文件
/etc/rc.local #存放开机自启动内容文件(通过源程序编译安装的软件)chkconfig一般是用来管理yun/rpm包装的服务
/usr/目录
默认软件都会存于该目录下。用于存储只读用户数据的第二层次;包含绝大多数的用户工具和应用程序。
/lib #系统会使用到的函数库
/lib/modules #kernal的相关模块
/var/lib/rpm #rpm套件安装处
/usr/bin #可执行程序目录
/usr/sbin #可执行程序目录
/user/local #存放用户自编译安装软件的存放目录
/usr/loacl/bin #用户安装的小的应用程序,和一些在/usr/local目录下大的应用程序的符号连接
/usr/loacl/sbin #系统全局环境目录,可放置一些不需要加路径执行的脚本等
/usr/share #系统公用的东西存放地
/usr/src #内核源码存放目录
/usr/bin #使用者可执行的binary file的目录
/usr/local/bin #使用者可执行的binary file的目录
/usr/lib #系统会使用到的函数库
/usr/local/lib #系统会使用到的函数库
/var/目录
/var 包括系统一般运行时要改变的数据.每个系统是特定的,即不通过网络与其他计算机共享.
/var #可变数据存放目录
/var/log #各种系统日志存放地
/var/log/messages #系统默认日志文件,非常重要。按周自动轮询
/var/log/secure #记录登入系统存取信息的文件,按周自动轮询
/var/log/wtmp #记录登陆者信息的文件
/var/spool #定时任务crontab默认路径,按用户命令的文件
/var/spool/cron/root #
/var/spool/mail #系统用户邮件存放目录
/var/spool/clientmqueue #sendmail临时文件目录,很多原因会导致整个目录碎文件很多C64不会安装sendmail,所以问题不常见
/proc/目录
虚拟文件系统,将内核与进程状态归档为文本文件(系统信息都存放这目录下)。
/proc #虚拟目录,是内存的映射,内核和进程的虚拟文件目录
/proc/version #内核版本
/proc/sys/kernel #系统内核功能
/proc/sys/net/ipv4
/proc/cpuinfo #关于处理器的信息,如类型、厂家、型号和性能等
/proc/meminfo #系统内存信息
/proc/devices #当前运行内核所配置的所有设备清单
/proc/dma #当前使用的DMA通道
/proc/filesystems #正在使用的中断,和曾经有多少中断
/proc/ioports #当前正在使用的I/O端口
/proc/loadavg #系统负载平均值信息
/dev/目录
设备文件分两种:块设备文件(b)和字符设备文件(c)
设备文件一般存放在/dev/目录
/dev/hd[a-t] #IDE设备
/dev/sd[a-z] #SCSI设备
/dev/fd[0-7] #标准软驱
/dev/md[0-31] #软raid设备
/dev/loop[0-7] #本地回环设备
/dev/ram[0-15] #内存
/dev/null #无限数据接收设备,相当于黑洞
/dev/zero #无限零资源
/dev/tty[0-63] #虚拟终端
/dev/ttyS[0-3] #串口
/dev/lp[0-3] #并口
/dev/console #控制台
/dev/fb[0-31] #framebuffer
/dev/cdrom #=> /dev/hdc
/dev/modem #=> /dev/ttyS[0-9]
/dev/pilot #=> /dev/ttyS[0-9]
/dev/random #随机数设备
/dev/urandom #随机数设备