Linux入门——目录格式
linux入门——目录格式
摘要:本文主要了解了linux系统的目录格式。
一切皆文件
linux下“一切皆文件”是unix/linux的基本哲学之一。
linux中所有内容都是以文件的形式保存和管理的,即一切皆文件,普通文件是文件,目录(windows下称为文件夹)是文件,硬件设备(键盘、监视器、硬盘、打印机)是文件,就连套接字(socket)、网络通信等资源也都是文件。虽然他们的类型不同,但是linux系统为它们提供了一套统一的操作接口。
linux支持多种文件系统,为了方便管理,在所有这些文件系统上面提供了一层抽象,即虚拟文件系统。虚拟文件系统为各类文件系统提供了统一的操作界面和应用编程接口,也就是说,不论是什么类型的文件系统,都必须提供符合vfs标准的接口。
规范
因为使用linux来开发的公司和个人有很多,如果每个开发者都按各自的想法来配置文件的目录,会导致在管理上造成很多不便。所以,linux基金会维护了fhs(filesystem hierarchy standard)来规范开发者存放文件的位置。
根据fhs的官方文件指出,他们的主要目的是希望让使用者可以了解到已安装软件通常放置于那个目录下,所以他们希望独立的软件开发商、操作系统制作者、以及想要维护系统的用户,都能够遵循fhs的标准。
也就是说,fhs的重点在于规范每个特定的目录下应该要放置什么样子的数据而已。这样做好处非常多,因为linux操作系统就能够在既有的面貌下(目录架构不变)发展出开发者想要的独特风格。
各个目录存放的内容
/bin:所有用户使用的可执行文件,也包含系统管理员和普通用户通用使用的命令,并且要求在没有挂载其他文件系统的情况下也能使用。也包含了能够通过脚本间接使用的命令。
/boot:存放于系统启动相关的文件,内核相关的文件。
/home:每个用户的家目录,创建用户时自动创建一个与用户名同名的目录作为其用户登录的默认工作目录。
/etc:存放系统管理和配置文件。
/usr:用于存放系统应用程序,比较重要的目录。
/opt:额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里。
/proc:虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
/root:超级用户(系统管理员)的主目录。
/sbin:存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。
/dev:用于存放设备文件。
/mnt:系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。
/lib:一般是32位系统程序所依赖的共享库文件以及内核所依赖的模块文件。
/lib64:一般是64位系统程序所依赖的共享库文件。
/tmp:用于存放各种临时文件,是公用的临时文件存储点。
/var:存放系统及服务应用产生的日志文件或临时文件,也是某些大文件的溢出区。
/lost+found:这个目录平时是空的,系统非正常关机而留下“无家可归”的文件就在这里。
相对路径和绝对路径
绝对路径:由根目录(/)开始写起的档名或目录名称,例如: /home/file 。
相对路径:相对于目前路径的档名写法。例如: ./file , ../../home/file/ 等等。反正开头不是/就属于相对路径的写法。