来源:自学PHP网 时间:2015-04-14 11:51 作者: 阅读:次
[导读] 第1章 Linux目录的基本概念 本章学习重点 ■ Linux被定义的基本目录 ■ 什么是根目录 ■ 根目录是如何产生的 ■ 根目录有何意义 ■ 本书所提到的目录有哪些 【IT专家网独家】Linux的目录...
第1章 Linux目录的基本概念 本章学习重点 ■ Linux被定义的基本目录 ■ 什么是根目录 ■ 根目录是如何产生的 ■ 根目录有何意义 ■ 本书所提到的目录有哪些 【IT专家网独家】Linux的目录是很多用户想了解但一直无法进入的门槛,这句话的意思是,或许很多人试着想要知道,到底Linux有哪些目录、哪些文件、哪些是值得去刨根问底的。但大多数人,都会因为庞大的目录及文件数量而却步,我想这也是为何到现在为止,还没有一本书愿意介绍所有目录架构的原因。 不过,当各位读者在看这样一本书时,千万不要认为所有的Linux版本(如Red hat、SuSE)都会是一致的,本书只能作为参考,主要原因是不同的操作系统厂商,所安装的组件、遵循的标准、版本的差异等都会造成整个Linux下目录或文件的不同(像有些服务程序放在/etc/rc.d下,某些则是在/etc/init.d下的差异),但是,只要熟悉其中一种的目录结构,最起码在很短时间内就可熟悉另一种操作系统。 不管如何,目录及文件在整个Linux启动运行过程中,不断地被使用,只是每一个阶段使用到的目录会不同,所以无法完全对照出整个系统运行流程和目录的关系,但笔者尽量将其归纳为一个整体性的图(如下图所示),以及对照到此书章节的表格,希望对读者在阅读本书时会有所帮助。 这张图会在本书中每章的最前面来提醒读者所阅读的部分和系统流程中,哪些部分是相关的,让读者更了解Linux目录的整体关系。 系统流程与章节内容对照图 启动流程中所使用的重点目录对照表如表1-1所示。 表1-1:启动流程中所使用的重点目录对照表 启动流程中所使用的重点目录对照表.doc 关闭设备将所有的存储设备停止动作 因为Linux是开放源代码的系统,所以每一家Linux厂商(如Redhat、SuSE、Ubuntu等)都有自己的考虑,会加入和删除一些基本选项或特殊功能,也因为这样,每一家厂商所推出的Linux发行版(Linux Distribution),其目录的文件数目一定会有相应的差距,甚至是同样组件中的某个文件,文件名称也会随Linux版本而有所差异,因为控制权其实是握在厂商的手上。 当然也会造成用户的麻烦,因为明明都是Linux系统,但是要在另一种平常没在使用的Linux版本中,寻找某一个经常使用的配置文件或指令,会发现竟然找不到,花费了很多时间才发现,可能只是一两个字符的差异。或者是A版本默认有该文件,而B版本默认没有该文件,其实都是可以使用的,但在不知情的情况下,也会造成用户的困扰,因此,有人开始规划一个让所有Linux版本都可遵循的目录规则。 FHS组织(Filesystem Hierarchy Standard Group)就是在这样的背景下应运而生的,该组织定义了一份FHS的公开标准,让所有Linux厂商参考,目的就是让大家都可以在同样的条件下发展所有的应用程序,将该有的目录或文件都可以因为使用同一份标准规范,而让用户有一个统一的方式。 当然,无论是哪一个目录或文件,Linux目录中最基本的就是【/】,所有使用Linux的用户,都会知道【/】根目录的重要性,但这个目录是何时建立与为何而产生的,就比较少有人去刨根问底地看个清楚了,这也是本章的学习目的之一,同时可以和读者分享根目录的意义所在。 1.1 Linux 目录的定义 Linux并没有硬性规定该有哪些目录或文件,大部分数据都是由Linux厂商自行处理的,只是因为大家所使用的都是Linux的kernel,所以基本上都会有相似的文件系统架构,但也因为如此,Linux的用户在转换上有时会产生一些瓶颈。 如在Fedora 7下的与SuSE 10下的网卡配置文件,文件名称的命名方式就有很大差异(如图1-1和图1-2所示),Fedora 7的命名规则为【ifcfg-适配器名称】,但SuSE下则为【ifcfg-eth-id-网卡的MAC Address】。 虽然这只是因为各家的网络配置方式不同,而采用的文件命名原则不同,但从图1-1中一样可以发现,两个系统连启动网络接口的工具程序也都放在不同的位置,这对经常使用固定某一版本的Linux用户来说,刚开始是会有一些麻烦的。
FHS组织为了解决这样的难题,因此制订出一份FHS标准,希望所有Linux厂商可以比照其所定义出的目录结构(基本上只制订大方向,毕竟不可能定义到太多层的目录结构)来开发应用程序,这样一来,对厂商或用户都有好处,一方面厂商可以加快开发的速度;另一方面用户可以缩短适应另一种Linux的时间。 笔者在这里简单地列出FHS制订的标准(表1-2顺便和Fedora 7目前的目录结构做简单的比较),目前FHS已经出到2.3版(于2004年1月29日发行)以供读者快速参考,但详细的内容还是请读者直接参考FHS官方网站上的标准文件。网址如下:http://www.pathname.com/fhs/ 表1-2:FHS所定义的目录结构 FHS所定义的目录结构.doc 除了FHS所定义的目录之外,每一家Linux厂商都有额外自行建立的目录,供自行开发的应用程序使用,所以真正的目录结构还是要以用户实际使用的Linux版本为依据,只是大部分目录不会脱离FHS所定义的标准。本书大多以Fedora 7为例,这并不代表任何特殊含义,只是希望通过一个操作系统的版本(因为笔者比较常使用的操作系统是Fedora 7)去阐述每一个目录的意义与所要提供的功能,毕竟各Linux版本的目录是大同小异的。 当然,笔者也并非万能,只能尽其所能地让读者对每一个目录有所了解,至于每一个目录涉及的深度,有可能会因为每一个目录的功能多少、文件数目、对系统的意义大小或笔者本身能力而有所差异。
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com