我们平常所说的Linux系统并不是说的某一个操作系统,而是指使用了由LinusTorvalds(林纳斯·托瓦兹)发明并领衔开发的Linux内核的所有操作系统,Linux仅仅指的是该系统的内核,单独的一个Linux基本上是难以运行任何程序的。
因为Linux内核是自由、免费的,所以有好多人开发了基于Linux的操作系统,开发这样一个系统的大环境是GNU计划,该计划提倡软件自由、免费!好多人接受了这样一种思维并开始开发一些免费的软件,而这种软件当时刚好苦于找不到一个好的内核,而由LinusTorvalds开发的Linux内核也同样须要运行于该内核的软件,于是GNU计划与Linux内核有了一个完美的结合。不同的人把不同的免费软件与Linux内核结合打包成完整的操作系统linux vi 命令,并逐渐产生了自己的品牌。这儿比较有影响力的有RedatLinux、UbuntuLinux、openSUSE、Mandriva、Centos等!
然而这样开发下来的系统都会有一些缺点,由不同的团队开发下来的基于Linux系统自然有好多地方是难以统一的puppy linux,想想假如每位开发人员都只身开发自己的系统,但是计算机配置与使用方式完全不统一,这么结果就是你学习了其中一个版本的Linux系统,但当你学成毕业,携带自己的手艺步入职场后,你傻啦!由于新的Linux系统与你学的完全不同,界面不同、文件结构不同、命令不同、使用习惯不同……
因为种种这种诱因,于是LSB(LinuxStandardBase)出现了,它是由Linux基金会发布的Linux标准规范,以实现天下Linux的大统一!在这份关于Linux标准文档中就规定了Linux的文件系统机构标准(FHS)。
FHS定义了在/(根目录)下各个主要目录应当储存的主要文件内容,再者还专门定义了/usr和/var两个目录及其子目录的结构。这样当我们使用来自不同公司开发的Linux系统时,你就可以很快的在某个地方找到你想要的文件了。
Linux系统采用的是树形储存结构,在Linux中所有文件与目录都是由/(根)开始的。就想你使用Windows是假如想要打开C盘Windows目录里的fonts文件夹下的某个文件,你必须从C盘开始去找!
以下是Linux各个目录及其储存的主要内容的说明:
/根目录linux文件目录结构,所有文件、文件夹的入口
/bin通常用户使用的命令
/sbin管理员使用的命令
/boot储存启动文件及Linux内核的地方
/dev设备目录,在Linux所有设备也都是以文件的方式出现的,打开/dev/sda1,就是打开了你硬碟的第一个分区
/etc系统配置文件,在这儿你可以更改系统的好多东西,关键是你得熟悉这种文件
/home每位用户自己的个人空间
/lib库文件
/media曾经是挂接外部储存器的,如今都改到/mnt下了,光碟的内容在该目录下
/mnt外接设备目录,如联通硬碟、U盘的内容在次目录下储存
/opt部份软件的储存地点
/root超级管理员的个人空间
/tmp临时文件
/usr绝大多数程序默认会安装在该目录下的某个子目录中
/var系统日志文件夹
这种是最主要的主目录linux文件目录结构,假如你想深入研究各个子目录的定义可以去下载全部文档说明。
有个这样一个标准我们可以快速的由某个Linux的发行版迁移到另一个发行版,其实FHS仅是一个参考,每位不同的发行版还是会有自己的一些奇特设计。