事实上,FHS针对目录树架构仅定义出三个目录底下应该放置什么数据:html
/root/:与开机系统有关(能够查看Linux的root目录树)mysql
/usr/:与软件安装执行有关linux
/var/:与系统运做过程有关sql
这三个目录有特定的规定。数据库
1、 /usr的意义和内容缓存
第1部分:服务器
该目录下放置的数据属于分享的与不可变更的。网络
(顺便说一下,若是你知道如何透过网络进行分割槽的挂载,那么/usr能够分享给局域网络内的其余主机来使用)架构
不少人会误觉得/usr是usr的缩写,其实否则,usr是Unix Software Resource的缩写,也就是UnixOS软件资源学习
FHS建议全部软件开发者,将数据合理放置在这个目录下的子目录,而不是自行创建软件独立的目录。
另外,全部系统默认的软件(distribution发布者提供的软件)都会放置在/usr下面,所以
该目录相似于WindowsOS的C:\Windows+C:Program files目录的合体。
系统刚安装完毕,/usr会占用最多的硬盘容量
第2部分:
对于/usr底下的子目录有一些建议:
/usr/X11R6 为X Windows System重要数据所放置的目录
/usr/bin 绝大部分用户可使用的指令都放在该目录(它与根目录的/bin的不一样之处在因而否与开机过程有关)
/usr/include C/C++等程序语言的档头(header)与包含档(include)放置处,当用户以tar方式安装某些(tar.gz)软件时,安装的某些数据会使用到该目录的许多包含档
/usr/lib 包含各应用软件的函式库、目标文件,以及不被通常使用者惯用的执行档或者脚本。某些软件会提供一些特殊的指令来进行服务器的设定,这些指令也不会常常被系统管理员操做,则会放到该目录下。若是是4位LinuxOS,则会有/usr/lib64
/usr/local 系统管理员在本机自行安装下载的软件,非distribution默认提供的软件。若是你的distribution提供的软件较旧,此时你能够将新的版本软件下载到/usr/local目录下,能够区别。
/usr/sbin 非系统正常运做所须要的系统指令,最多见的是某些网络服务器软件的服务指令,好比daemon守护进程指令
/usr/share 放置共享文件的地方,在这个目录下放置的数据几乎不分硬件架构都可读取的数据,由于几乎都是文本文件。好比/usr/share/man联机帮助文件、/usr/share/doc软件杂项的文件说明、/usr/share/zoneinfo与时区有关的时区文件
/usr/src 通常原始码建议放置在这里,src有source的意思,至于核心原始码建议放置在/usr/src/linux目录下
2、/var的意义和内容
若是/usr是安装时会占用较大硬盘容量的目录,那么/var是在系统运行后才会渐渐占用硬盘容量的目录。
由于/var主要针对常态性变更的的文件。
包括缓存cache、登录档log file以及某些软件运做所产生的文件、包括程序文件lock file/run file,或者例如mysql数据库文件
常见次目录:
/var/cache 应用程序运做过程当中会产生一些暂存档
/var/lock 应用程序执行的过程当中,须要使用到的数据文件放置的目录。由于,若是同时两个程序使用该装置时会产生错误情况,所以,须要加上锁lock
/var/log (很是重要)这是登录文件放置的目录,里面比较重要的文件好比/var/log/messages
/var/mail 放置我的邮件邮箱的目录,不过有时候也被放置在/var/spoll/mail目录中。一般这两个目录互为连接文件
/var/run 某些应用程序或者服务启动后,会将它们的PID(进程id)(线程id-ptheadid)放置在这个目录下
/var/spool 放置一些队列数据,所谓的队列就是排队等待其余程序使用的数据。这些数据使用以后每每被删除。
了解了linux的三大目录,接下来,让我学习一些Linux下经常使用的命令行吧~
小白出门左转
基础用户(平时不怎么经常使用,但须要基本能用到的)出门右转