Unix(包含Linux)的初学者,常常会很困惑,不明白目录结构的含义何在。

举例来说,根目录下面有一个子目录/bin,用于存放二进制程序。但是,/usr子目录下面还有/usr/bin,以及/usr/local/bin,也用于存放二进制程序;某些系统甚至还有/opt/bin。它们有何区别?

长久以来,我也感到很费解,不明白为什么这样设计。像大多数人一样,我只是根据《Unix文件系统结构标准》(Filesystem Hierarchy Standard),死记硬背不同目录的区别。

昨天,我读到了Rob Landley的简短解释,这才恍然大悟,原来Unix目录结构是历史造成的。

话说1969年,Ken Thompson和Dennis Ritchie在小型机PDP-7上发明了Unix。1971年,他们将主机升级到了PDP-11。

当时,他们使用一种叫做RK05的储存盘,一盘的容量大约是1.5MB。

没过多久,操作系统(根目录)变得越来越大,一块盘已经装不下了。于是,他们加上了第二盘RK05,并且规定第一块盘专门放系统程序,第二块盘专门放用户自己的程序,因此挂载的目录点取名为/usr。也就是说,根目录"/"挂载在第一块盘,"/usr"目录挂载在第二块盘。除此之外,两块盘的目录结构完全相同,第一块盘的目录(/bin, /sbin, /lib, /tmp...)都在/usr目录下重新出现一次。

后来,第二块盘也满了,他们只好又加了第三盘RK05,挂载的目录点取名为/home,并且规定/usr用于存放用户的程序,/home用于存放用户的数据。

从此,这种目录结构就延续了下来。随着硬盘容量越来越大,各个目录的含义进一步得到明确。

  /:存放系统程序,也就是At&t开发的Unix程序。

  /usr:存放Unix系统商(比如IBM和HP)开发的程序。

  /usr/local:存放用户自己安装的程序。

  /opt:在某些系统,用于存放第三方厂商开发的程序,所以取名为option,意为"选装"。

(完)

Unix目录结构的来历相关推荐

  1. Unix/Linux 目录结构的来历

    Unix(包含Linux)的初学者,常常会很困惑,不明白目录结构的含义何在. 举例来说,根目录下面有一个子目录/bin,用于存放二进制程序.但是,/usr子目录下面还有/usr/bin,以及/usr/ ...

  2. 【转载】Unix设计哲学 回车换行八卦 EOF八卦 UNIX目录结构八卦

    昨天看了这篇文章 <关于Unix哲学> 首先用了两个例子,用风扇吹出空肥皂盒 和 太空铅笔,来说明简单设计也能派上作用吧. Unix哲学,Wikipedia上列出了好几个版本,不同的人有不 ...

  3. Linux/Unix操作系统目录结构的来历

    [IT168 资讯] Unix(包含Linux)的初学者,常常会很困惑,不明白目录结构的含义何在. 举例来说,根目录下面有一个子目录/bin,用于存放二进制程序.但是,/usr子目录下面还有/usr/ ...

  4. Mac终端指令总结「Unix/Linux区别和联系、终端指令原理、Mac目录结构」

    一.认识UNIX和Linux 1.了解Unix和Linux的关系 下图Unix族谱 3.UNIX/Linux系统结构 UNIX/Linux 系统可以粗糙地抽象为 3 个层次(所谓粗糙,就是不够细致.精 ...

  5. Unix/Linux文件系统的目录结构

    完美解读Linux中文件系统的目录结构   发布时间:2007.03.16 03:28     来源:赛迪网技术社区    作者:skid 一.前 言 接触Linux也有一段时间了,不过这几天在编译开 ...

  6. CentOS目录结构超详细版

    最近初学Linux 对linux的目录产生了很多疑问,看到这篇文章,让我顿时对目录有了一个清晰的认识!推荐给大家! ------------------------------------------ ...

  7. 简述Linux目录结构和系统结构

    提到 GNU/Linux 系统的目录结构,不得不说一下FHS(Filesystem Hierarchy Standard,文件系统层次结构标准),正是这一标准的存在,详细的定义了类 Unix 操作系统 ...

  8. linux目录结构   各个目录文件作用

     linux 目录结构 /: 根目录,一般根目录下只存放目录,不要存放文件,/etc./bin./dev./lib./sbin应该和根目录放置在一个分区中 /bin:/usr/bin: 可执行二进制文 ...

  9. 每天一个linux命令(23):Linux 目录结构

    对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面 ...

最新文章

  1. 从零开始开发JVM语言(十一)Lambda
  2. java 图像处理 空白_使用Java进行图像处理的一些基础操作
  3. 洛谷 - P1036 选数(递归)
  4. 用php生成HTML文件的类
  5. WinCE驱动的动态加载
  6. java继承静态方法,是否在Java中继承了静态方法?
  7. centos 7 lvm用法
  8. 《女士品茶》与统计检验
  9. 达州市中学高考2021成绩查询,2020达州高考成绩揭晓,恭喜恭喜!另附成绩统计表...
  10. 计算机算法英语表示,计算机编程算法常用英语术语
  11. 计算机域名设置方法,windows电脑加入域的设置方法步骤(图文)
  12. 如何使用unity制作雷达探测目标效果动画
  13. 【Map】Echarts之iphone销量地图的使用以及详细配置
  14. BIOS入门基础------TXT
  15. 知新温故,从知识图谱到图数据库
  16. c语言总结试题,C语言试题总结
  17. QQ登录界面模仿和事件监听(下)
  18. 问题 C: 最小素数对
  19. Android 联想,雷电,mumu,游戏饭(长尾)游戏联运SDK接入
  20. 落地式大容量高速冷冻离心机HL10R

热门文章

  1. 重写equals和hashCode
  2. 客户端用javascript填充Dropdownlist,服务器端获取不到Dropdownlist的值
  3. Windows Server 2003显示中文为乱码(方框)的问题
  4. 基于Spatial CNN的车道线检测和交通场景理解
  5. 【C/C++】将二个有序数组合并
  6. AM-GM均值不等式的一种简证
  7. SDL播放音频的时候发现SDL_OpenAudioDevice打开一直失败
  8. 子网掩码和网关的关系
  9. windows下使用开源gSOAP技术调用WebService
  10. VC++连接远程Oracle数据库