unix是什么软件,unix文件系统

  

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

  

     

  

  比如根目录下有一个子目录/bin,用来存放二进制程序。但是/usr子目录下有/usr/bin和/usr/local/bin,也是用来存放二进制程序的;有些系统甚至有/opt/bin。两者有什么区别?   

  

  很长一段时间,我也觉得很不解,不明白为什么要这样设计。我和大多数人一样,只是按照《Unix文件系统结构标准》(文件系统层次标准)来背不同目录的区别。   

  

  昨天看了Rob Landley的简要说明,恍然大悟,Unix的目录结构是历史造成的。   

  

  1969年,肯汤普森和丹尼斯里奇在小型机PDP-7上发明了Unix。1971年,他们将主机升级为PDP-11。   

  

     

  

  当时他们用的是一个叫RK05的存储盘,容量大概是1.5MB。   

  

     

  

  没多久操作系统(根目录)越来越大,一个磁盘都装不下了。于是,他们增加了第二个磁盘RK05,并规定第一个磁盘专用于系统程序,第二个磁盘专用于用户自己的程序,于是挂载的目录点被命名为/usr。也就是说,根目录“/”安装在第一个磁盘上,而“/usr”目录安装在第二个磁盘上。况且两个磁盘的目录结构完全一样,第一个磁盘的目录(/bin,/sbin,/lib,/tmp.)在/usr目录中重新出现一次。   

  

  后来,第二个磁盘已满,他们不得不添加第三个磁盘RK05。挂载的目录点被命名为/home,并规定/usr用于存储用户的程序,/home用于存储用户的数据。   

  

  此后,这种目录结构一直延续。随着硬盘容量的增加,每个目录的意义也进一步明确。   

  

  /:存储系统程序,即Att开发的Unix程序。   

  

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

  

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

  

  /opt:在某些系统中,它用来存储第三方厂商开发的程序,所以命名为option,意思是‘可选’。   

相关文章