Linux操作系统目录配置标准FHS详细介绍

发布者:小熊掌心最新更新时间:2012-03-27 来源: 61ic关键字:Linux  操作系统目录  配置标准  FHS 手机看文章 扫描二维码
随时随地手机看文章
 因为Linux的开发人员实在太多了,如果每个人都使用自己的目录配置方法,那么将可能会带来很多管理问题。你能想象,你进入一个企业之后,所接触到的 Linux目录配置方法竟然跟你以前学的完全不同吗?很难想象。所以,后来就有所谓的文件系统层次标准(Filesystem Hierarchy Standard,FHS)出台。

  FHS实际上仅是规范在根目录(/)下面各个主要目录应该放什么样的文件。FHS定义了两层规范,第一层是, / 下面的各个目录应该要放什么文件数据,例如 /etc应该要放置设置文件,/bin与 /sbin则应该要放置可执行文件等等。第二层则是针对 /usr及 /var这两个目录的子目录来定义。例如 /var/log放置系统登录文件、/usr/share放置共享数据等等。

  由于FHS仅是定义出最上层(/)及子层(/usr, /var)的目录内容应该要放置的文件数据,因此,在其他子目录层级内,就可以随开发人员自行配置了。举例来说,FC4的网络设置数据放在 /etc/sysconfig/network-script/ 目录下,但SuSE Server 9则是将网络放在 /etc/sysconfig/network/ 目录下,目录名称是不同的。

  另外,在Linux中,所有的文件与目录都由根目录 / 开始。那是所有目录与文件的源头。然后再一个一个分支下来,有点像树状。因此,我们也称这种目录配置方式为:“目录树(directory tree)”。这个目录树主要特性有:

  目录树的起始点为根目录(/, root)。

  每一个目录不仅能使用本地端分区的文件系统,也可以使用网络上的文件系统。举例来说,可以利用网络文件系统(Network File System,NFS)服务器载入某特定目录等。

  每一个文件在此目录树中的文件名(包含完整路径)都是独一无二的。

  此外,根据文件名写法的不同,也可将路径(path)定义为绝对路径(absolute)与相对路径(relative)。绝对路径为:由根目录(/)开始写起的文件名或目录名称,例如 /home/dmtsai/.bashrc;相对路径为相对于当前路径的文件名写法。例如 ./home/dmtsai或 ../../home/dmtsai/ 等等。反正开头不是 / 就属于相对路径的写法。必须要了解,相对路径是以“当前所在路径的相对位置”来表示的。举例来说,当前在 /home目录下,如果想要进入 /var/log目录时,怎么写呢?

  cd /var/log(absolute)

  cd ../var/log(relative)

  因为在 /home中,所以要回到上一层(../)之后,才能继续向 /var移动。

  特别注意这两个特殊的目录:

  .:表示当前目录,也可以使用 ./ 来表示。

  ..:表示上一层目录,也可以 ../ 来表示。

  与 .. 的目录概念很重要,你常常会看到cd .. 或 ./command之类的命令方式,就是表示上一层与当前所在目录的工作状态。此外,针对“文件名”与“完整文件名(由 / 开始写起的文件名)”的字符限制大小为:

  单一文件或目录的最大容许文件名为255个字符。包含完整路径名称及目录(/)的完整文件名为4096个字符。

  我们知道,/var/log/ 下面有个文件名为message,这个message文件的最大文件名可达255个字符。var与log这两个上层目录最长也分别可达255个字符。但总的来说, /var/log/messages这样完整的文件名最长则可达4096个字符。

  提示:root在Linux里面的意义很多。如果从“账号”的角度来看,root指“系统管理员”身份,如果以“目录”的角度来看,root指的是根目录,就是 / 。要特别注意。
关键字:Linux  操作系统目录  配置标准  FHS 引用地址:Linux操作系统目录配置标准FHS详细介绍

上一篇:基于Windows CE的物流车载终端设计
下一篇:VxWorks操作系统及实时多任务程序设计

推荐阅读最新更新时间:2024-05-02 21:59

OK6410A 开发板 (八) 16 linux-5.11 OK6410A start_kernel 打印角度 第二阶段 do_initcalls
log // init_jiffies_clocksource- ... - __clocksource_register_scale clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns // futex_init futex hash table entries: 256 (order: -1, 3072 bytes, linear) // netlink_proto_init NET: Registered protocol family 16 // atomic_pool_
[单片机]
应用c进行嵌入式Linux的研究
   1.引言   嵌入式Linux是一种开放源码的真正32位的操作系统,并且可以进行裁减和优化,性能稳定,并且支持多任务和软实时,所以深受开发者的信赖。它支持从IntelX86到MotorolaPowerPC,ARM,CompaqAlpha等多种硬件平台,并且提供了丰富的软件资源,具有强大的网络支持功能,支持GUI开发,并且嵌入式Linux的开发技术资源丰富。如何管理各个应用在系统中无冲突安全地工作?如何把开发的系统快速的转化为可发布的产品?如何优化和管理嵌入式系统的开发过程,保证在有限的工期之内完成高质量的产品?使用平台创建套件(PCS)来开发嵌入式Linux应用可以很好地解决这些问题。   2.平台创建套件介绍
[嵌入式]
基于ARM的嵌入式linux 内核的裁剪与移植
0 引言 微处理器的产生为价格低廉、结构小巧的CPU和外设的连接提供了稳定可靠的硬件架构,这样,限制嵌入式系统发展的瓶颈就突出表现在了软件方面。尽管从八十年代末开始,已经陆续出现了一些嵌入式操作系统(比较著名的有Vxwork、pSOS、Neculeus和Windows CE)。但这些专用操作系统都是商业化产品,其高昂的价格使许多低端产品的小公司望而却步;而且,源代码封闭性也大大限制了开发者的积极性。而Linux的开放性,使得许多人都认为Linux非常适合多数Intemet设备。Linux操作系统可以支持不同的设备和不同的配置。Linux对厂商不偏不倚,而且成本极低,因而很快成为用于各种设备的操作系统。嵌入式linux是大势所趋
[单片机]
嵌入式Linux的低功耗策略研究
摘 要:功耗是嵌入式设备的一个十分重要的性能指标。在硬件设计和选型之后,功耗水平在极大程度上取决于软件的设计。鉴于Lioux在嵌入式设备中的应用日益广泛,提出在嵌入式Linux下软件编写的几种策略。通过这些软件编写方式,能有效降低最终产品的功耗水平。 关键词:嵌入式Linux功耗策略 引 言 由于Linux系统具有嵌入式操作系统需要的很多特色,如适应于多种CPU和多种硬件平台、性能稳定、可裁剪性很好、源码开放、开发和使用简单等。目前,基于Linux应用的嵌入式设备日益增多,Linux正在嵌入式领域发挥着越来越重要的作用。 对于嵌入式设备尤其是移动设备来说,功耗是系统的重要指标,系统设计的重要目标之一就是要尽可能地降低功耗
[嵌入式]
ARM Linux根文件系统(Root Filesystem)的制作
简介:介绍根文件系统的组成:目录、Shell、库、脚本。 目录 根文件系统要包含这些必须有的目录:/dev、/bin、/usr、/sbin、/lib、/etc、/proc、/sys /dev是devfs(设备文件系统)或者udev的挂在点所在。在使用devfs的内核里如果没有/dev,根本见不到Shell启动的信息,因为内核找不到/dev/console;在使用udev的系统里,也事先需要在/dev下建立console和null这两个节点。关于devfs和udev的区别,网上很多文章说。当然如果你的内核已经不支持devfs了(2.6.12以后),可以使用纯纯的静态节点。也就是用mknod人工生成。 /bin、/usr/
[单片机]
Linux kernel 2.6.36发布支持君正CPU
日前,Linux kernel 2.6.36版本正式发布,值得注意的是,该版本支持君正Jz4740国产CPU,这是Linux内核首次支持国产芯片,标志着国产CPU平台已获得国际开源组织的认可和肯定,为君正CPU跨入国际主流嵌入式处理器行列打下了坚实的基础。 Jz4740芯片是君正推出的一款高性能、低功耗的32位嵌入式处理器,采用君正自主创新XBurst CPU内核,支持RTOS、Linux和WinCE等操作系统,被广泛应用于PMP/MP4、教育电子、电子书、指纹识别等移动设备和嵌入式设备。Jz4740是国内首款支持Rm/Rmvb解码的MP4主控芯片,曾引领国内MP4产业全面进入Real解码时代;在电子书市场,Jz4740
[嵌入式]
linux内核中的信号机制--信号发送
Kernel version:2.6.14 CPU architecture:ARM920T Author:ce123(http://blog.csdn.net/ce123) 应用程序发送信号时,主要通过kill进行。注意:不要被 kill 迷惑,它并不是发送SIGKILL信号专用函数。这个函数主要通过系统调用sys_kill()进入内核,它接收两个参数: 第一个参数为目标进程id,kill()可以向进程(或进程组),线程(轻权线程)发送信号,因此pid有以下几种情况: pid 0:目标进程(可能是轻权进程)由pid指定。 pid=0:信号被发送到当前进程组中的每一个进程。 pid=-1:信号被发送到任何一个进
[单片机]
TQ2440 学习笔记—— 5、Linux烧写——USB
用USB下载线烧写Linux 软件:TQBoardDNW 连接USB下载线和串口线 烧写前首先格式化Nand Flash格式化之后再烧写镜像文件 1、烧写u-boo镜像 2、烧写Linux内核镜像 3、烧写文件系统镜像 4、烧写开机logo镜像 烧写完uboot、内核、文件系统、和logo镜像后,拔掉USB下载线,然后选择命令8即boot the system 就可以启动Linux操作系统,开机后需要进行触屏校准!如果第一次没有校准,后面触屏操作将会很麻烦,也找不到再次校准的设置(我反正没找到,所以又重新烧写了一回) 设置Linux的启动方式 TQ2440 配套的uboot 和Linu
[单片机]
TQ2440 学习笔记—— 5、<font color='red'>Linux</font>烧写——USB
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved