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/ 等等。反正开头不是/就属于相对路径的写法。

Linux目录和文件——目录格式的更多相关文章

  1. Linux scp 远程文件/目录传输

    Linux scp远程文件/目录传输 1.获取远程服务器上的文件 scp -P 22 root@www.test.com:/root/test.tar.gz /home/test.tar.gz 上端口 ...

  2. Atitit.软件guibuttonand面板---os区-----linux windows搜索文件 目录

    Atitit.软件guibuttonand面板---os区-----搜索文件 1. Find 1 2. 寻找文件夹 1 3. 2. Locate// everything 1 4. 3. Wherei ...

  3. linux shell判断文件,目录是否存在或者具有权限

    在linux中判断文件,目录是否存在或则具有的权限,根据最近的学习以及网上的资料,进行了以下的总结: #!/bin/sh myPath="/var/log/httpd/" myFi ...

  4. Linux SSH远程文件/目录传输命令scp

    转载地址:http://www.vpser.net/manage/scp.html 相信各位VPSer在使用VPS时会经常在不同VPS间互相备份数据或者转移数据,大部分情况下VPS上都已经安装了Ngi ...

  5. LInux SSH远程文件/目录传输命令scp(转载)

    From:http://www.vpser.net/manage/scp.html 相信各位VPSer在使用VPS是经常会在不同VPS间相互备份数据或转移数据.一般情况下VPS都已安装了Ngnix或者 ...

  6. linux hexdump-显示文件十六进制格式

    博主推荐:获取更多 linux文件内容查看命令 收藏:linux命令大全 hexdump命令一般用来查看“二进制”文件的十六进制编码,但实际上它能查看任何文件,而不只限于二进制文件. 语法 hexdu ...

  7. linux下更改文件字符格式为uft-8

    liunx下发布的.net Core 程序,发现短信签名不错误不能发出.后来检查发现配配文件中的字符为乱码才知道是因为字符格式问题. 因为服务器批较多,还是使用命令来解决比较快.使用iconv来更改. ...

  8. Linux 文件/目录操作详解

    目录 Linux 文件/目录操作详解 初识Linux 一.文件/目录显示命令 ls 二.目录创建命令 mkdir 三.目录转移命令 cd 四.当前目录显示命令 pwd 五.文件处理命令 rmdir 六 ...

  9. Linux SSH远程文件/目录 传输

    Linux SSH远程文件/目录传输命令scp 2010年08月6日 上午 | 作者:VPS侦探 相信各位VPSer在使用VPS时会经常在不同VPS间互相备份数据或者转移数据,大部分情况下VPS上都已 ...

随机推荐

  1. 简单文件传输协议TFTP分析还原

    - 协议介绍 TFTP有如下特征: 1.UDP承载,请求端口固定为69: 2.没有列出目录内容功能: 3.无验证和加密机制: 4.仅有读取或写入文件功能: 5.支持三种不同的传输模式:"ne ...

  2. [20190823]关于CPU成本计算2.txt

    [20190823]关于CPU成本计算2.txt --//前几天探究CPU cost时遇到的问题,获取行成本时我的测试查询结果出现跳跃,不知道为什么,感觉有点奇怪,分析看看.--//ITPUB原始链接 ...

  3. vs code切换中英文界面

    1. 在vs code的应用扩展中搜索这个插件: Chinese (Simplified) Language Pack for Visual Studio Code 这个插件,安装完毕重新加载即可生效 ...

  4. 故障排除指南(TSG)-ORA-01552: Cannot Use System Rollback Segment for Non-System Tablespace (Doc ID 1579215.1)

    Troubleshooting Guide (TSG) - ORA-01552: Cannot Use System Rollback Segment for Non-System Tablespac ...

  5. cluster集群基本概念

    cluster集群种类: 1,LB(Load Balance)负载均衡集群: 弱点:当横向扩展到一定机器后,发现在怎么横向加机器也没有效果的时候,瓶颈就卡在分发的服务器上了,也就是LB机器上了,如何解 ...

  6. Linux 设置MySQL开启自动启动

    1. 将服务文件拷贝到init.d下,并重命名为mysql cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld 2. 赋 ...

  7. -bash: /home/java/jdk1.8.0_221/bin/java: 权限不够

    1)进入存放jdk文件的文件夹路径我这里是 usr/local/jdk/2)输入命令 chmod 777 jdk1.8.0_221/bin/java修改权限3)再次输入 java -version 成 ...

  8. 让人又爱又恨的this

    this是个神奇的东西, 既可以帮助我们把模拟的类实例化. 又可以在事件绑定里准确指向触发元素. 还可以帮助我们在对象方法中操作对象的其他属性或方法. 甚至可以在使用apply.call.bing.f ...

  9. The Python Debugger Pdb

    Python Debugger pdb The Python Debugger Pdb 可以直接在命令行中启动,调试程序 也可以写在代码中 命令行使用 可以直接在命令行指定要进行调试的程序 pytho ...

  10. Mybatis主配置文件配置url报错:Cause: org.xml.sax.SAXParseException; lineNumber: 15; columnNumber: 100; 对实体 "useSSL" 的引用必须以 ';' 分隔符结尾。

    <property name="url" value="jdbc:mysql://localhost:3306/shop?characterEncoding=UTF ...