文章目录

  • 前言
  • 标准目录结构
  • / (根目录)
  • /bin
  • /boot
  • /dev
  • /etc
  • /home
  • /lib
  • /media
  • /mnt
  • /opt
  • /run
  • /sbin
  • /srv
  • /tmp
  • /proc
  • /sys
  • /var
  • /lost+found
  • /root
  • /usr

前言

Linux操作系统中的目录(文件夹)结构遵循Linux基金会定义和维护的Linux文件系统层次标准(FHS)。有了定义良好的标准,用户和软件开发人员就可以更容易地知道已安装的二进制文件、系统文件、系统信息等的位置。通过这种方式,Linux应用程序不必为特定的发行版量身定制,而是可以普遍使用。


标准目录结构

如下图,左侧/为根目录,连接着boot, bin, sbin等目录,其中usr有多个子目录,虚线说明两目录为软连接(快捷方式)关系。

/ (根目录)

这是Linux文件系统层次结构的开始。所有的文件路径都起源于根目录。

上面列出的目录或指向这些目录的符号链接在/中是必需的,否则,文件结构就不符合FSH。

/bin

存储系统管理员和用户都可以使用的基本命令二进制文件,如cat,ls,mv,ps,mount等。

这些命令用于引导系统(访问引导文件、挂载驱动器),并且可以在/usr中的二进制文件不可用时修复系统。

/boot

此目录包含系统启动所需的所有文件。

这包括内核文件,initrd, initramfs, bootloader等。

/dev

包含系统中挂载的所有物理和虚拟设备的设备文件。

设备文件不是传统意义上的文件。它们是设备驱动程序访问并与所述设备交互的一种方式。

通常,主存储称为sda (/dev/sda)

/etc

此目录包含系统的配置文件。

设备名称、密码、网络配置、DNS、crontab、日期和时间等都存储在配置文件中。

根据FHS,该目录不能包含任何二进制可执行文件。

这些配置文件影响系统上的所有用户。如果您想对特定用户进行配置更改,应该使用~/.conf/而不是/etc/

常见/etc目录下的配置文件:

/etc/bashrc          用来定义系统范围内的函数和别名
/etc/crontab        计划任务的配置文件
/etc/fstab          记录系统中开机启动时所要自动挂载的相关文件系统列表
/etc/group          记录系统用户组的基本信息
/etc/gshadow        记录用户组密码
/etc/hosts          记录主机名和ip
/etc/issue          用户在登陆系统前显示的信息
/etc/passwd         用户的基本信息
/etc/shadow         用户的密码信息
/etc/login.defs     设置用户账号的设置信息,在添加新用户时根据这个文件生成相应的显示内容
/etc/skel           添加新用户时将此目录中拷贝/home中并修改目录名为用户名
/etc/profile        每个用户的环境变量信息
/etc/profile.d      包含/etc/pfofile中需要执行的脚本
/etc/ssh            ssh服务配置文件
/et/yum.repos.d     yum仓库配置文件目录

/home

主页包含所有个人用户特定的文件。它为每个用户包含独立的目录,可以通过cd /home/username访问。

这是你大部分工作的地方。你系统上所有的下载、图片、音乐等都在/home目录下。

每个应用程序的特定于用户的配置文件可以在/home/[username]/.conf中找到。

可以通过执行cd ~[username]进入任何用户的主目录。如果系统上只有一个用户,那么使用cd ~就可以。

/lib

库是定义编程语言中使用的命令的标准代码文件。在编译过程中,编译器会查找这些库来理解代码,就像我们在读书时查找字典来理解句子的意思一样。

这个目录包含启动系统所需的所有库,以及/bin和/sbin中要运行的命令。它还包含控制大量硬件和设备功能的内核模块。

很多时候,不同的32位和64位库具有相同的名称。为了避免任何串通,这些二进制文件被保存在两个独立的目录中,分别命名为/lib32和/lib64。

/media

此目录包含几个子目录,系统在其中挂载可移动设备(如USB驱动器)。

/mnt

用户可以使用该目录手动挂载设备(与仅由系统使用的/media相对)。

当前用户之间的惯例是在/mnt下创建一个单独的子目录,并将设备挂载在该子目录中,而较老的传统是将设备直接挂载在/mnt中。

/opt

/opt包含与包相关的库和二进制文件,它们不是由系统的包管理器安装的,而是通过第三方的方式安装的。

/opt是/usr/local的一个不太受欢迎的替代方案。是供应商决定库和二进制文件的去向,但通常更单一和专有的软件。

/run

此目录包含自引导后的设备和元数据。

这包括当前会话中执行的所有系统进程和守护进程的数据。

在引导过程开始时,该目录下的文件被清除(删除或截断)。

/sbin

就像/bin一样,/sbin也包含必要的系统二进制文件。但是,这些二进制文件仅供系统管理员而不是普通用户使用。

这些二进制文件主要用于设备管理。例如,fdisk, fsck, mkfs, ifconfig, reboot。

/srv

只有当你的设备作为网络服务器时,你才会使用这个目录,因为这个目录包含了所有关于网络服务器的文件。

例如,如果主机有一个FTP连接,所有需要共享的文件默认应该在/srv/ FTP目录下。

/tmp

包含当前运行进程的临时文件。

每次引导后也会刷新此数据。

/proc

就像/dev提供作为文件的设备一样,这个文件夹包含作为文件的系统信息和内核信息。

这包括内存、分区、硬件(电池、温度等)、所有加载的内核模块等信息。

/sys

它包含类似于在/proc/中保存的信息,但是显示关于热插拔设备的特定设备信息的层次视图。

/var

包含有关正在运行的进程的可变数据。

这包括所有应用程序的日志、缓存和线轴。

线轴是等待进一步处理的数据。例如,在打印机队列中等待的文档或等待发送的电子邮件头。

/lost+found

虽然没有列在FHS中,但该目录是由fsck自动生成的,ext4特有的。

它将所有孤立的和损坏的文件存储在这个文件夹中。

这包括因为断电而无法保存的文件,由于升级过程失败而损坏的文件等等。

/root

root用户的家目录。root登录后便进入到该目录,普通用户无法访问。

/usr

/usr目录有一个非常有趣的起源。在创建时,它的作用应该类似于/home目录,但当人们在/bin上用完空间时,他们开始将非必要的二进制文件存储在/usr中。

随着时间的推移,这个目录已经被用来存储用户安装的应用程序的二进制文件和库。例如,bash在/bin中(因为它可以被所有用户使用),fdisk在/sbin中(因为它应该只被管理员使用),而用户安装的应用程序,如vlc在/usr/bin中。

总之,/usr就是应用系统的存储目录。

1-4 Linux 标准目录结构FHS相关推荐

  1. Linux 标准目录结构 FHS

    因为 Linux 的开发人员实在太多了,如果每个人都使用自己的目录配置方法,那么将可能会带来很多管理问题.所以,后来就有了 Filesystem Hierarchy Standard(FHS,文件系统 ...

  2. 【Linux】Linux 标准目录结构

    为什么80%的码农都做不了架构师?>>>    初学Linux,首先需要弄清Linux 标准目录结构 / root --- 启动Linux时使用的一些核心文件.如操作系统内核.引导程 ...

  3. Linux的目录结构与目录管理

    Linux的目录结构与目录管理 Linux目录结构: 目录创建的规则 FHS 文件系统层次化标准 指定了Linux操作系统,哪些目录是一定要具备的 /boot /bin /sbin /etc /sys ...

  4. Linux的目录结构和头文件相关;哪里找- sys/types.h, sys/stat.h

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_29757283/article/ ...

  5. Linux理论05:Linux的目录结构

    本文介绍Linux的目录结构,属于基础理论. Linux的目录 Linux的所有目录都是从根目录开始,根目录表示为/.此与Windows不同,Windows的所有目录是从盘符开始,如C:,D:. 根目 ...

  6. 大数据技术之_01_Linux学习_01_linux的入门+VM和linux的安装+linux的目录结构+远程登录到linux服务器+vi和vim编辑器+开机、重启和用户登录注销+用户管理+用户组管理

    大数据学习之_01_Linux学习_01 1 linux的入门 1.1 Linux的介绍 2 VM和linux的安装 2.1 安装vm和Centos 2.1.1 基本说明 2.1.2 CentOS安装 ...

  7. Linux学习--目录结构

    ** Linux学习–目录结构 ** 一.基本介绍 linux 的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录"/",然后在此目录下再创建其他的目录. 记住一句经 ...

  8. linux apache设置web访问重定向_从零开始学Linux运维|30.Linux的目录结构

    1.tree命令 linux下目录结构跟一个倒过来的树一样的,最顶层就是根目录 / tree这个命令就很形象 它够很方便的查看目录结构 使用"yum install tree -y" ...

  9. Maven-学习笔记03【基础-Maven标准目录结构和常用命令】

    Java后端 学习路线 笔记汇总表[黑马程序员] 黑马程序员(腾讯微云)Maven基础讲义.pdf Maven-学习笔记01[基础-Maven基本概念] Maven-学习笔记02[基础-Maven的安 ...

最新文章

  1. JAVA CLASSPATH 和PATH的区别 经典
  2. 深度学习基础——激活函数以及什么时候使用它们?
  3. 面试题整理12 求字符串括号最大深度子串
  4. hdu 5093 二分匹配
  5. [蓝桥杯][2014年第五届真题]兰顿蚂蚁-模拟
  6. 前端学习(2829):block标签的使用
  7. SpringBoot集成MyBatis-Plus代码生成器(Dao)
  8. 跨过山和大海的地铁外放党们有人管了,明年开始!网友:没收手机么?
  9. c++如何判断两个字符串是否相同?_链表 | 如何判断两个单链表(无环)是否交叉...
  10. python支持向量机回归_Python机器学习之支持向量机——非线性SVC
  11. GIS笔记_普通tif文件转成array数组 c#
  12. FreeBSD下面安装PostgreSQL。
  13. 为什么数学叫“数学”?
  14. [算法]从Trie树(字典树)谈到后缀树
  15. 谷歌浏览器崩溃,无法搜索
  16. 会声会影批量处理素材设置教程
  17. 分布式技术与实战第一课 分布式理论与一致性算法
  18. 上海邮政EMS海关清关(个人) 流程
  19. Dart的mixin详解
  20. 大数据开发工程师需要具备哪些技能?

热门文章

  1. 李彦宏说百度吹的牛都实现了,还扔出来一个ACE计划
  2. 关于SQL中not exists的双重否定的一些记录
  3. soc验证 c语言,一种Soc芯片验证方法与流程
  4. java.lang.NoClassDefFoundError: javax/transaction/Synchronization 解决方法。
  5. 1213:八皇后问题1700:八皇后问题
  6. 物联网导论-自动识别技术
  7. 微信小程序实现添加银行卡,银行卡号每隔四位插入空格并展示时仅显示前后四位,或者仅显示后四位(超详细)
  8. linux之下载工具那些事
  9. Xadmin-Xadmin的安装与配置(Django2.0+python3.6)
  10. 工程研发中EVT、DVT、PVT、MP等名词解释