linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘建议留言网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 专题栏目 > LPI >
栏目导栏
  LPI
  cisco
资料搜索
热门文章
·LPI 101认证学习1-硬件和体系结
· LPI 101认证学习7-Linux安装与
·LPI 101认证学习26-X Window 系
·LPI 101认证学习8-Linux安装与
·LPI 101认证学习15-GNU和UNIX命
·LPI 101认证学习28-X Window 系
·LPI 101认证学习10-Linux安装与
·LPI 101认证学习11-GNU和UNIX命
·LPI 101&102 2007年考试大纲
·LPI 101认证学习18-设备、Linu
·LPI 101认证学习27-X Window 系
·LPI 101认证学习14-GNU和UNIX命
·LPI 101认证学习12-GNU和UNIX命
·LPI考试流程
· LPI 101认证学习9-Linux安装与
最新文章
·LPI 101&102 2007年考试大纲
·LPI 302中文考试大纲
·LPI 301中文考试大纲
·LPIC-3认证考试内容最终确定
·LPI 101认证学习28-X Window 系
·LPI 101认证学习27-X Window 系
·LPI 101认证学习26-X Window 系
·LPI 101认证学习25-设备、Linu
·LPI 101认证学习24-设备、Linu
·LPI 101 学习指南:一.安装网络
·LPI 101 学习指南:一.安装 本地
· 安装光盘介绍(The Installati
·LPI 101认证学习23-设备、Linu
·LinuxWorld上海开展 LPI与众多
·LPI 和 Canonical 联合发布Ubu
Google
 
LPI 101认证学习25-设备、Linux 文件系统与文件系统层次标准(FHS)之查找和放置系统文件
[ 作者:  加入时间:2006-12-09 10:55:57  来自:Linux联盟 ]

查找和放置系统文件

本节讨论初级管理(LPIC-1101 考试的主题 1.104.8 的内容。这个主题的权值是 5

在本节中,学习以下内容:

  • 文件系统层次标准(FHS)以及如何对文件和目录进行分类

  • 查找文件和命令

文件系统层次标准(FHS

文件系统层次标准(FHS)是一个文档,它指定 Linux 或其他类 UNIX 系统上目录的布局。创建它是为了提供一个共用的布局,让不同的 Linux 发行版将文件放在相同的位置,从而简化独立于发行版的软件开发。它还被用在文件系统层次标准(FHS)中(参见 参考资料)。

两个独立的 FHS 分类

FHS 的核心是两种独立的文件性质:

可共享的与不可共享的

可共享的文件可以位于一个系统上并在另一个系统上使用它们,而不可共享的文件只能在它们所在的系统上使用。

可变的与静态的

静态文件包括没有系统管理员参与就不会改变的文档、库和二进制文件。不是静态的文件就是可变的。

可以根据这些区别,将具有不同性质的文件存储在不同的文件系统上。表 6 是一个来自 FHS 文档的例子,展示了一个符合 FHS 的布局。

6. FHS 示例

 

可共享的

不可共享的

静态的

/usr5akLinux联盟
/opt

/etc5akLinux联盟
/boot

可变的

/var/mail5akLinux联盟
/var/spool/news

/var/run5akLinux联盟
/var/lock

根文件系统

FHS 的目标是使根文件系统尽可能小。它必须包含引导、恢复或修复系统所需的所有文件,包括有经验的管理员执行这些任务所需要的工具。引导系统要求在根文件系统上有足够的文件,能够挂载其他文件系统。

根文件系统中的目录

7 显示 FHS 要求在根(即 /)文件系统中存在的目录的用途。这些目录或它们的符号链接必须存在,除非标为可选的,只在存在对应的子系统时需要那些可选的目录。

7. FHS 根文件系统

目录

用途

bin

基本的命令二进制文件

boot

引导装载器的静态文件

dev

设备文件

etc

主机特有的系统配置

lib

基本的共享库和内核模块

media

可移除介质的挂载点

mnt

临时挂载文件系统的挂载点

opt

附加的应用程序软件包

sbin

基本的系统二进制文件

srv

这个系统提供的服务的数据

tmp

临时文件

usr

辅助层次结构

var

可变数据

home

用户的主目录(可选)

lib<qual>

替代格式的基本共享二进制文件(可选)

root

根用户的主目录(可选)

/usr /var

/usr /var 层次结构足够复杂,能够容纳 FHS 要求的所有部分。/usr 文件系统是文件系统的第二个主要部分,包含可共享、只读的数据。它可以在系统之间共享,但是不经常这样做。/var 文件系统包含可变的数据文件,包括假脱机目录和文件、管理和日志数据、过渡和临时文件。/var 的某些部分不能在不同系统之间共享,但是其他目录(比如 /var/mail/var/cache/man/var/cache/fonts /var/spool/news)可以共享。

要全面了解这个标准,请阅读 FHS 文档(参见 参考资料)。

文件在哪里?

Linux 系统常常包含成千上万的文件。我们在本教程中使用的是一个新安装的 Ubuntu 系统,仅在它的 /usr 层次结构中就包含近 50000 个文件。我有时候使用的 Fedora 系统有大约 175000 个文件。本节的其余部分介绍一些文件搜索工具,帮助您在这么多数据中查找文件,尤其是程序。

PATH

如果您有几个 Linux 系统,就可能会注意到作为根用户登录时能够执行 fdisk 等命令,但是作为一般用户时就不能执行。实际情况是,在命令行上运行程序时,bash(或其他)shell 搜索一系列目录,查找您需要的程序。目录的清单是在环境变量 PATH 中指定的,常见情况是根用户的路径包含 /sbin,而非根用户的路径不包含。清单 64 显示两个不同的用户路径示例,以及一个根路径示例。

5akLinux联盟
清单 64. 一些 PATH 示例

 

                                      

ian@pinguino:~$ echo $PATH

/usr/local/sbin:/usr/local/bin:5akLinux联盟
/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games

[ian@attic4 ~]$ echo $PATH

/usr/kerberos/bin:5akLinux联盟
/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/ian/bin

[ian@attic4 ~]$ su -

Password:

[root@attic4 ~]# echo $PATH

/usr/kerberos/sbin:5akLinux联盟
/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:

/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin

 

可以看到,PATH 变量只是一个由冒号分隔的目录名清单。因为 fdisk 命令实际上位于 /sbin/fdisk,所以只有第一个和最后一个路径允许用户通过输入 fdisk 运行它,而不需要提供完全限定的名称(/sbin/fdisk)。

路径常常是在一个初始化文件(比如 .bash_profile .bashrc)中设置的。可以为当前会话指定新的路径。要记住,如果想让新的路径对您启动的其他进程生效,那么要导出 PATH 变量。一个例子见清单 65

5akLinux联盟
清单 65. 修改 PATH

 

                                      

[ian@attic4 ~]$ fdisk

-bash: fdisk: command not found

[ian@attic4 ~]$ export PATH=/sbin:$PATH

[ian@attic4 ~]$ fdisk

 

Usage: fdisk [-l] [-b SSZ] [-u] device

E.g.: fdisk /dev/hda  (for the first IDE disk)

  or: fdisk /dev/sdc  (for the third SCSI disk)

  or: fdisk /dev/eda  (for the first PS/2 ESDI drive)

  or: fdisk /dev/rd/c0d0  or: fdisk /dev/ida/c0d0  (for RAID devices)

  ...

whichtype whereis

在前面的例子中,我们通过尝试运行 fdisk 发现它不可用。有几个命令可以帮助您解决这个问题。

which

可以使用 which 命令搜索路径,查找在输入一个命令时将执行的命令(如果有的话)。清单 66 显示的例子查找 fdisk 命令。

5akLinux联盟
清单 66. 使用 which

 

                                      

[ian@attic4 ~]$ which fdisk

/usr/bin/which: no fdisk in 5akLinux联盟
(/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:

/usr/X11R6/bin:/home/ian/bin)

[ian@attic4 ~]$ export PATH=/sbin:$PATH

[ian@attic4 ~]$ which fdisk

/sbin/fdisk

 

which 命令显示一个命令在路径中的第一次出现。如果想知道这个命令是否出现了多次,那么添加 -a 选项,如清单 67 所示。

Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论

分页:[1] 2
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·LPI 101认证学习24-设备、Linux 文件系统与文件系统层次标准(FHS)之链接  (2006-12-08 10:59:05)
 ·LPI 101认证学习23-设备、Linux 文件系统与文件系统层次标准(FHS)之管理文件所属权  (2006-12-07 11:40:51)
 ·LPI 101认证学习22-设备、Linux 文件系统与文件系统层次标准(FHS)之文件权限和访问控制  (2006-12-06 12:18:09)
 ·LPI 101认证学习21-设备、Linux 文件系统与文件系统层次标准(FHS)之硬盘配额  (2006-12-05 11:00:17)
 ·LPI 101认证学习20-设备、Linux 文件系统与文件系统层次标准(FHS)之挂载和卸载文件系统  (2006-12-04 12:01:33)
 ·LPI 101认证学习19-设备、Linux 文件系统与文件系统层次标准(FHS)之文件系统完整性  (2006-12-01 11:38:56)
 ·LPI 101认证学习18-设备、Linux 文件系统与文件系统层次标准(FHS)之创建分区和文件系统  (2006-11-30 13:31:58)
 ·LPI 101认证学习17-GNU和UNIX命令之用正则表达式进行搜索  (2006-11-29 13:15:41)
 ·LPI 101认证学习16-GNU和UNIX命令之修改进程执行优先级  (2006-11-28 14:08:21)
 ·LPI 101认证学习15-GNU和UNIX命令之创建、监视和杀死进程  (2006-11-27 11:55:34)