linux目录结构
一、linux系统的目录结构:
1、逻辑上所有的目录只有一个顶点/(根),所有目录的起点,根下面类似一个倒挂着的树一样的层次结构,tree -L显示层数,tree -L 1 /在根下显示一层
2、linux中的目录结构是有规律的,而且是按照类别组织的
如应用程序/usr/bin
数据文件,帮助/usr/share
配置文件/etc
启动命令/etc/init.d
小结:
1)linux的所有目录结构是一个有层次的倒挂着的树形目录结构
2)根也就是所有目录的顶点
3)目录结构和分区设备是没有关系的,也就是不同的目录可以跨越不同的磁盘或者分区
4)所有目录都是按照一定类别和规律的组织和命令的
绝对命令和相对命令:
绝对命令:从根开始的就是绝对命令,如:cd /data/
相对命令:只要不是从根开始的就是相对命令 如 cd data/
二、目录层次标准
1 [root@pyrene ~]# tree -L 1 / 2 / 3 ├── bin 4 ├── boot 5 ├── dev 6 ├── etc 7 ├── home 8 ├── lib 9 ├── lib64 10 ├── lost+found 11 ├── media 12 ├── misc 13 ├── mnt 14 ├── net 15 ├── opt 16 ├── proc 17 ├── root 18 ├── sbin 19 ├── selinux 20 ├── srv 21 ├── sys 22 ├── tmp 23 ├── usr 24 └── var
目录结构用途说明
/ 存放系统相关的程序,也就是说At&t开发的Unixt‘程序
/usr 存放Unix系统商的开发程序,可以定义成unix software resource
/usr/local 存放用户自己安装的程序,相当于c:/program files 一般编译软件的时候默认路径
yum或rpm包安装默认路径一般不是这里了
/opt 在某些系统,用于存放第三方厂商开发的程序,所以取名为option 意为”选装”
四、linux目录结构介绍
FHS 全称 :中文意思目录层次标准,是linux的目录标准规范
1、定义了两层规范:第一层是“/”目录下的各个目录应该放什么文件数据
如 :
/etc目录下存放系统的配置文件 如/etc/exports ./etc/hosts
/bin/sbin放置程序及系统命令
2、第二层是针对/usr和/var着两个目录的子目录来定义的
如:/var/log下放置系统日志文件等 提示:/var分区单独分出来
3、目录说明
/bin :常用二进制所在的目录 /bin目录和/usr/bin类似
/boot linux内核级引导系统编程所需的文件系统
/dev 设备文件的目录
/etc a)二进制安装包的配置文件默认路径 (yum rpm)b)服务启动命令存放的目录(/etc/init.d/)
/home 普通用户的家目录默认数据存放目录
/lib 库文件存放目录
/lost+found 在xt3文件系统中,但系统意外崩溃或者机器意外关机,会产生一些碎片在这里,但系统在开机启动的过程中fsck工具会检查这里,并且修复已经损坏的文件系统,系统发生问题,可能会有文件移动到这个目录中,可能需要手工的方式来修复,或移动文件到原来的位置上
/mnt 一般是用于临时存储设备的挂载目录
/opt 表示可选择的意思,有些软件的安装包被安装到这里,也就是自定义软件包,我们自己编译的软件包,就可以安装在这个目录中,通过源码包安装的软件可以./configure --profix=/opt/目录中
/proc 操作系统运行的时候,进程信息及内核信息存放在这里
/sbin 大多是设计喜用管理的命令的存放,是超级权限用户root的可执行命令存放地
/tmp 临时文件目录,有时候用户运行程序的时候,会产生临时文件
/usr 系统存放程序的目录,比如命令,帮助文件等
/usr/bin 用户可执行文件目录
/usr/include 程序的头文件存放位置
/usr/lib 库文件目录
/usr/local local hierarchy(empty after main installation)
/usr/share/fonts 字体目录
/usr/share/man 帮助目录
/usr/share/doc 文档目录
/usr/src Source code 源码目录
/var 可变的数据的目录
/var/lib 用来存放一些库文件,比如mysql的以及mysql数据库的存放地,记录日志和缓存
/var/log/messages 系统日志文件目录
/var/log/secure 系统安全信息文件,可以在这里查看谁在破解自己系统
/var/spool/cron 定时任务的配置文件路径
小结
/dev/设备目录
/etc/配置文件以及服务启动的目录
/proc 显示内核及进程信息虚拟文件系统
/tmp 临时文件目录
/home 普通用户家目录
/var 变化目录,一般是日志文件的目录
/usr 用户程序,及数据,帮助文件等的目录
/bin 和 /sbin和/usr/sbin/用户命令的目录
5、重要的子目录
1、/etc/sysconfig/network-scripts/ifcfg -eth0 配置网络地址及GW
/etc/hosts 设定用户IP与名字(或者域名)的对应解析表,相当于本地LAN内DNS
/etc/fstab 记录开机要mount的文件系统的一个文件/etc/rc.local
/etc/inittab 设置系统启动的时候init进程将把系统设置成什么样的runlevel及加载相关的启动文件配置
/etc/exports 设定NFS网络文件系统用的配置文件
/etc/sysconfig/network 可以修改机器名字及网卡启动,网关等配置
/etc/rc.local 存放开机启动程序命令的文件(chkconfig只能管理yum安装的程序的启动服务)
/etc/init.d 这个目录是用来存放系统或者服务器以System V模式启动的脚本
/etc/xinit.d 如果服务器是通过xinetd模式运行的,他的脚本要放在这个目录下,有些系统没有这个目录,比如slackware这些老的版本没有
/etc/profile 系统全局环境变量配置路径
/etc/profie.d 加载系统登录程序的一个目录,命令或者文件独立存在