<<鸟哥的私房菜>>--读书笔记--HFS

Linux文件系统的组织方式--FHS

我们在使用linux时,不管是redhat还是SUSE,会发现它们下面的目录结构总是相差不大。这是因为主流发行版大都遵循FHS(Filesystem Hierarchy Standard)。

FHS 主要对/,/usr,/var这三个目录规定了其主要的次级目录有哪些,每个次级目录放置什么文件,做什么用途作了规定。

/ 目录的介绍
一个根目录下挂载的次级目录大概有以下几种:

1.常规目录:

目录名称 说明
/bin 存放用户可以使用的二进制命令,如ls、vi等
/sbin s是system的意思,用来存放只有root能够执行的系统管理命令,包括系统引导,修复等命令
/lib 或 /lib64 放置驱动和库文件,/bin和/sbin中命令执行所需要的库文件都放置在这个目录
/etc 放置系统配置文件
/srv 用来存放某些特定服务的数据,如,www、FTP运行过程中都可能用到这个目录
/tmp 用来放置临时文件

2.特殊目录:

目录名称 说明
/boot 系统引导所需要的静态文件都放在这个目录下,如:内核,bootload等
/dev 用来存放设备文件,设备文件也分两种,一种是确确实实连接到主机的物理设备,另一种是操作系统虚拟出来的虚拟设备。像/dev/tty0 就是一个虚拟控制台
/home 一般情况下,每个普通用户在该目录下都有一个同名的子目录,作为该用户的家目录
/root 超级用户root的家目录
/media 可移动媒体的挂载点,如:U盘,DVD等
/mnt 文件系统的临时挂载点,如:NFS
/opt 第三方软件存放与安装目录(不常用)
/lost+found 当文件系统发生错误时,会把遗失的片断放到这个目录,当修复文件系统时,fsck会到这个目录里搜索。每个新文件系统都会有这个目录。(不常用)

3.伪文件系统

目录名称 说明
/proc 存在于内存中,不占实际的物理空间。通过这里面的特殊文件,可以向内核提取或发送信息
/sys 在2.6内核以后新增的一个虚拟文件系统,目的是为了更好的支持热插拨设备。里面的内容与/proc类似,但可以显示热插拨设备的设备信息的分层视图。

还有两个很特殊的目录,/var和/usr目录,这两个目录,也是系统启动到多用户模式下所必须的。因此会在下面单独拿出来介绍一下


/usr 目录的介绍

/usr 根据鸟哥的说法,这个目录名是Uinx Software Resource的缩写。FHS建议大部分标准序程序都放置在/usr目录下相应的子目录下。

/usr目录下主要有以下几个次级目录:

目录名称 说明
/usr/bin 大多数用户可执行的命令和可执行文件都放置在这个目录下
/usr/sbin 不太关键的系统管理命令一般都放置在这,最常见的就是一些网络服务的管理命令
/usr/lib 或 /usr/lib64 用来放置对象文件与共享库,这里面的文件默认不能给用户或shell直接使用。说白了,就是专门给应用程序使用的。
/usr/etc 用来放置应用的配置文件,因为redhat的配置文件都是放在/etc下面的,所以这个目录常常是空的。
/usr/share 用来放置各种架构都能使用的文件文件,如:man手册,软件的各种说明等
/usr/libexec 用来放置可供其它程序调用的小型助手程序
/usr/include 用来放置C的头文件
/usr/src 用来放置原代码的
/usr/local 这个目录下的次级目录基本与/usr目录相同,是用来给管理员本地安装软件用的。有的时候为了升级安全,也可以将新版本的软件安装到这个目录下面。


/var 目录的介绍

/var 是variable的缩写,从字面上理解,就是可变的,实际上也确实是这样,一般情况下,新装完一个系统,/usr目录通常是最大的,但随着系统的使用,/var目录会变的越来越大。

那/var目录是用来干什么的呢?在FHS的规定中,/usr目录是可以通过NFS做为一个共享目录,供其它主机使用的。/usr目录里面有那么多重要文件,当它共享出去时,通常是建议以只读方式挂载。那一个程序要运行,它肯定要产生数据吧,比如日志信息,进程号信息等等。这些信息那哪呢,就是放在/var目录下的。

/var目录下主要有以下几个次级目录:

目录名称 说明
/var/log 日志文件存放目录
/var/run 程序运行后,通常会把它们的pid放置在这个目录
/var/lock 当系统中一些资源或文件,同一时间只能供一个程序使用时,就会将该资源或文件上锁,锁定文件就放置在这个目录下面
/var/lib 程序运行过程中所需要使用到的数据文件就放置在这个目录下,如:rpm 查询时所需要的数据就都放置在/var/lib/rpm目录下面
/var/spool 通常用来放置排队等待其它程序使用的数据,等其它程序使用完成后,通常会将其删除。比如:/var/spool/mail目录是,就置的就是系统收到的新信,当用户收取后,原则上它就会被删掉


在文件分区划分中的一点小建议:

  1. 在操作系统内部,可变的与不可变的分开。也就是说,随着操作系统使用,目录的占用空间会持续增长的,最好是划分为一个单独的分区挂载,而不要与/分区划分在一起。否则当/目录被占用过大时,会造成系统的不稳定,也不容易找出具体哪个目录将/分区撑满了。
  2. 操作系统与应用最好分开。这样做的好处是,a.操作系统所在磁盘不会被经常读写,不容易损坏。b.如果操作系统损坏,不会影响到应用数据,在做好操作系统备份的情况下,可以很容易的修复。c.当应用分区出现故障,导致系统无法正常启动时,因为应用是作为一个单独分区,可以先行禁用掉,等操作系统正常启动后,使用fsck等工具对应用分区进行修复。


目录树



绝对路径,相对路径

绝对路径:以/目录开头的路径都叫做绝对路径,多用于脚本执行中。

相对路径:以当前所处位置为参照的路径叫做相对路径。常用的有两个符号:.(当前目录)  ..(当前目录当的上级目录。

时间: 09-22

<<鸟哥的私房菜>>--读书笔记--HFS的相关文章

《鸟哥的私房菜》笔记 (缓慢更新)

大学的时候粗略翻过鸟哥的私房菜,但那时候不太上心,没记住多少东西.现在静下来重读这本书,好好再熟悉一下linux的基础,记录一些没记住或者比较重要的东西. 原文地址请保留http://www.cnblogs.com/rossoneri/p/4172923.html 5.1 输入命令基本格式: $ command [-options] paremeter1 paremeter2 第一个输入的绝对是“命令”或“可执行文件” 选项前带'-',如果选项用的全名前面用'--' 命令过长用转义字符'\'将e

鸟哥linux私房菜学习笔记,U盘安装centos5.3不能正常进入图形界面的问题

前面说过自己成功引导了centos系统,现在进入启动界面,首次进入会进行相关设置,按照步骤一步一步完成,取消完光盘安装,点击下一步,就进入下面这个界面,没有登录框...没错!怎么蓝屏了,这可是linux啊! 可能第一次初始化慢,然而十几分钟过去了,依旧一成不变...懵圈了,按书上切换命令行模式也没反应,重启了也是一样卡在这个界面,没办法了,我重装吧. 再次重装很顺利,然后启动,接着首次设置,最后...还是卡到了这个界面.不会是我U盘启动盘制作有问题吧,果断重新制作,然后再次重装启动...不出所料

《Linux鸟哥的私房菜》笔记6:SUID/SGID/SBIT权限简要说明

文件特殊权限 SUID 设置的对象: 文件 产生的作用:可使对于该文件有x权限的执行者获得程序所有者Owner的权限,只对binary program有效 举例: /usr/bin/passwd 该文件权限为:-rws r-x r-x 对于Others的用户帐号有x执行权限,并且其owner权限处设了s,所以可以让others的帐号对于该文件有了owner的权限,不过执行权限仅在该程序的过程中(run-time)内有效 SGID 设置的对象:文件和目录 对文件设置后的作用:SGID只对binar

(整理)ubuntu 的 相关知识(来自 鸟哥的私房菜)

1. Linux 文件权限概念 $ ls 察看文件的指令 $ ls -al 出所有的文件详细的权限与属性 (包含隐藏档,就是文件名第一个字符为『 . 』的文件) 在你第一次以root身份登入Linux时, 如果你输入上述指令后,应该有上列的几个东西,先解释一下上面七个字段个别的意思: 图2.1.1.文件属性的示意图 第一栏代表这个文件的类型与权限(permission): 这个地方最需要注意了!仔细看的话,你应该可以发现这一栏其实共有十个字符:(图2.1.1及图2.1.2内的权限并无关系) 图2

嵌入式开发之道——菜鸟成长日志与项目经理的私房菜(读书笔记)

嵌入式开发之道--菜鸟成长日志与项目经理的私房菜 邱毅凌著 读书笔记文档下载:http://download.csdn.net/detail/luckywang1103/8710299 1.一般函数调用与中断ISR的区别 一般程序都是循序执行的,CPU一定要执行到main()的第20行,才有可能去调用sub_fun()函数,而中断可以发生在任何的时间地点.例如,使用者可以在任何时候按下键盘的某个键,此时不论CPU下个要执行的指令是什么,CPU都会先记录目前的状态,然后参考中断向量表,接着去执行键

鸟哥Linux私房菜知识点总结3到5章

感觉自己对Linux的理解一直不够,所以近期翻看了一本<鸟哥的Linux私房菜>.这是一本基础的书,万丈高楼平地起,会的不多但能够学.这是我整理的一些知识点,尽管非常基础.希望和大家共同交流. 第3章主机规划与磁盘分区 1.3D计算机游戏须要3D光影运算. 2.在Linux系统中.每一个设备都被当成一个文件来对待. 3.整个开机流程到操作系统之前的动作: (1)BIOS: 开机主动运行的韧体,会认识第一个可开机的设备. (2)MBR :第一个可开及设备的第一个扇区内的主引导分区块,包括引导载入

鸟哥Linux私房菜知识点总结6到7章

最近翻看了一本<鸟哥的Linux私房菜>.这是一本基础的书,万丈高楼平地起,会的不多但可以学.这是我整理的一些知识点,虽然很基础.希望和大家共同交流. 第6章主机规划与磁盘分区 1.在进行团队开发资源时,用户组是很有用的一个功能. 2.Linux文件属性, 如:-rw-r--r-- 第一个字符代表这个文件时目录[d],文件[-]或链接文件[I] 接下来的三个字符代表文件所有者的权限 再接下来的三个字符代表所属组的权限 最后三个字符代表其他人的权限 3.改变文件属性和权限: chgrp:改变文件

鸟哥Linux私房菜知识点总结0到2章

感觉自己对Linux的理解一直不够,所以最近翻看了一本<鸟哥的Linux私房菜>.这是一本基础的书,万丈高楼平地起,会的不多但可以学.这是我整理的一些知识点,虽然很基础.希望和大家共同交流. 第0章计算机概述 1.计算机主要有三大部分组成:a.输入部分,包括键盘,鼠标... b.中央处理器(CPU):含有逻辑,控制,记忆等单元 c.输出单元:屏幕,打印机等 2.基本上数据都是流经过内存再转出去的. 3.硬盘最小的组成单元为扇区. 4.个人计算机的内存主要主件为动态随机访问内存,只有在通电时才能

鸟哥Linux私房菜知识点总结8到9章

最近翻看了一本<鸟哥的Linux私房菜>.这是一本基础的书,万丈高楼平地起,会的不多但可以学.这是我整理的一些知识点,虽然很基础.希望和大家共同交流. 第8章 Linux磁盘与文件系统管理 一.Linux磁盘管理 1.文件系统通常会将两部分数据分别放在不同的块中,权限与属性放置到inode中,实际数据放到data block块中. 2.找到文件的inode,就会知道这个文件所放置数据的block号码,就能够读出该文件的实际数据了哦. 3.U盘使用的文件系统一般是FAT格式. 4.碎片整理:通过