从零单排Linux – 3 – 目录结构

从零单排Linux – 3 – 目录结构

1、FHS标准(filesystem hierarchy standard)

why? –> 为了规范,还有为了linux的发展

重点 –> 规范每个特定目录下应该要放置什么样的数据

what? –> 定义了三层目录下应该放置什么数据{

1. /  根目录:放置与开机系统有关的数据

2. /usr (unix software rescource): 与软件的安装执行有

关数据

3. /var :与系统运行过程有关的数据

}

根目录不要放在非常大的分区,应该越小越好,一是提升性能,二是不容易发生问题

2、FHS定义根目录下应该有那些子目录{

/bin    系统有很多的执行文件,一般用户都可以使用,单用户模式下

能够操作的命令

/boot   放置开机会使用到的文件,包括linux内核文件以及开机菜单,

配置文件

/dev    放置设备以及接口设备文件 {

/dev/null 类似一个黑洞 作用:禁止标准错误

禁止标准的输出

/dev/zero 也是一个伪文件,用来临时交换文件

/dev/hd* –>IDE设备 硬盘

/dev/sd* –>SCSI设备

/dev/tty[0-63] –>虚拟终端

/dev/ttys –>串口

/dev/ram* –>内存

/dev/lp –>并口

}

/etc    系统主要的配置文件是放在这个目录里面,账号,密码,

各种服务的起始文件,组名。一般的用户都是可以查询

的,只有root权限才能修改。FHS建议不要放置

可执行文件(binary)在这个目录中。比较重要的{

inittab –>runlevel的默认配置就在这里

init.d –>所有服务的默认启动脚本都是放在这里的

}

/home    这里系统默认的用户主文件夹,主要你的个人数据,

/home/用户名

/lib     放置开机会用到的函数库,以及在/bin或者/sbin下面的

命令会调用的函数库。

/lib/modules ->放置内核相关的模块(驱动程序)

/media   媒体的英文,下面放置的可删除的设备,比如光驱,软驱

/misc    杂项驱动放置的地方

/mnt     挂载某些额外设备的地方,比如u盘

挂载是指讲一个设备挂接一个已存在的目录,通过访问这

个目录来访问设备

/net     跟网络有关,网络目录的一个挂载点

/opt     放置第三方软件的目录,比如自己安装的java,realplay等

/root    系统管理员的主文件夹

/proc    这个一个虚拟文件系统,放置的数据都是在内存里面,比如

系统的内核,进程,本身不占硬盘空间。

/sbin    只有系统管理员才能用,其他用户只能查询,设置系统环境

的命令,修复,还原系统等这些命令、**和/bin的区别{

功能来说:/sbin 属于基本的系统,shutdown,reboot,

启动系统,修复系统。

/bin 一些普通的基本命令,如ls,chmod

用户的权限来说:/sbin 下面的命令通常只有管理员可

以运行

/bin 管理员和一般用户都可以用

}

/selinux 这个目录的数据也是在内存的,不会占用硬盘容量,他是

linux的内核的重要的外挂之一。

/srv    service的缩写,是些网络服务启动之后需要用到的数据目录

比如:www,ftp

/tmp    类似临时文件夹,任何人都可以访问,所以不要将重要的数

据放到这个目录下面

/lost+found    当文件系统发生错误的时候,会将一些丢失的文件片

段放这个目录。比如非法关机,这个目录里面就会放

这些文件。

/sys    和proc类似,也是一个虚拟文件系统,主要记录与内核相关的

一些信息,包括:目前已经加载的内核模块和内核检测到的硬

件设备信息。

/usr    这个是unix操作系统软件资源所放置的目录,不是用户的数

据,这点注意下。 对于开发者而言,不要自行新建目录在

这个下面。系统默认的软件都是放置在这个/usr下面。类

似windws的c:\window + c:\program files 这2个目录的

结合体。

/var    这个目录在运行以后才会逐渐占用硬盘容量。缓存文件,登陆

文件,某些软件运行所产生的文件,像数据库文件等等。

}

3、需要注意的是:

根目录和系统开机有关,根目录和哪些目录不能放到不同的分区{

/etc    配置文件

/bin    执行文件

/dev   设备文件

/lib     执行文件所需要的函数库和内核所需要的模块

/sbin    系统执行文件

}

4、绝对路径和相对路径

a/b/c/d/e     windows/java/jre/tolls.jar

windows/java2/jre2/tools2.jar

上一篇:【Struts2】Struts2获取session的三种方式


下一篇:Web服务器处理动态程序三种方式及Apache配置