Linux系统目录结构详细介绍

目录

一、根目录(/)

二、/bin 

三、/boot

四、/dev

1.设备文件类型:

2.常见设备文件:

 五、/etc

六、/home  

 七、/root

八、/run

九、/sbin

十、 /tmp

十一、/usr 

十二、/var 


Linux系统目录结构是一种层次化的文件系统结构,它定义了Linux操作系统中各个目录的作用和存放内容的规范。下面是Linux系统目录结构的主要部分:

一、根目录(/)

  • 整个文件系统的起始点,所有其他目录和文件都是从根目录开始的。根目录包含了系统中的所有文件和目录。

二、/bin 

  • 存放着系统的基本命令和可执行文件,是系统用户可以直接执行的命令的存放位置。这些命令通常是用于系统管理和日常操作的常用工具;常见的/bin目录下的命令 
/bin/ls用于列出目录内容的命令
/bin/cp用于复制文件和目录的命令
/bin/mv用于移动或重命名文件和目录的命令
/bin/rm用于删除文件和目录的命令
/bin/cat用于查看文件内容的命令
/bin/mkdir用于创建新目录的命令
/bin/pwd用于显示当前工作目录的命令
/bin/chmod用于修改文件和目录的权限的命令
/bin/chown用于修改文件和目录的所有者的命令
/bin/chgrp用于修改文件和目录的所属组的命令

         这只是/bin目录下的一部分命令,实际上,还有许多其他常用的命令也存放在这个目录/bin目录中的命令通常不依赖于其他库文件,因此可以在系统启动时就可以使用。

三、/boot

  • 存放引导相关文件的目录。在该目录中,通常会包含以下文件
vmlinuzLinux内核的可执行文件。它负责加载操作系统并提供系统的基本功能
initrd.img一个初始化RAM磁盘映像文件,用于在系统引导过程中加载并运行
grubGRUB(GRand Unified Bootloader)引导程序的配置文件。它包含了引导菜单的配置信息,可以选择启动哪个操作系统
config-内核的配置文件,包含了编译内核时使用的配置选项
System.map-内核符号表文件,它包含了内核中所有符号的地址信息
memtest86+一个用于测试计算机内存的工具。可以在引导菜单中选择运行

         除了上述文件,boot目录还可能包含其他与引导相关的文件和目录。在不同的Linux发行版中,boot目录的具体内容和结构可能会有所不同

四、/dev

  • 设备文件目录,存放了系统中所有的设备文件。在Linux中,一切设备都被视为文件,而这些设备文件就存放在/dev目录下;

1.设备文件类型:

字符设备文件(Character Device Files)以字符为单位进行读写的设备文件,例如键盘、鼠标、串口等。
块设备文件(Block Device Files)以块为单位进行读写的设备文件,例如硬盘、U盘等
虚拟设备文件(Virtual Device Files)用于与内核进行交互的设备文件,例如/dev/null(空设备)、/dev/zero(全零设备)等
符号链接(Symbolic Links)指向其他设备文件或目录的软链接

2.常见设备文件:

/dev/sda硬盘设备(sda为第一个硬盘)
/dev/tty终端设备
/dev/ram虚拟内存设备
/dev/null空设备,接收数据后将其丢弃
/dev/zero全零设备,读取时将输出全零字符

        dev目录中的设备文件在系统启动时会被自动创建,访问这些设备文件可以与硬件交互或进行系统配置 

 五、/etc

  • 存放系统配置文件的目录。它包含了许多重要的配置文件,用于设置系统的各种参数和选项。以下是一些常见的/etc目录下的配置文件:

/etc/passwd

存储系统用户的基本信息,如用户名、用户ID、用户主目录等
/etc/group存储用户组的信息,如组名、组ID、组成员等
/etc/shadow存储用户的加密密码和密码过期信息
/etc/hosts用于设置主机名与IP地址的映射关系
/etc/hostname存储主机名
/etc/resolv.conf配置系统的DNS解析器
/etc/fstab定义了系统的文件系统挂载点和选项
/etc/network/interfaces配置网络接口的信息
/etc/apt/sources.list用于配置系统的软件源
/etc/sudoers定义了哪些用户可以以超级用户身份执行命令

        除了上述文件,/etc目录还包含了许多其他的配置文件,用于设置系统的不同方面。这些配置文件对于系统的正常运行和用户的定制化设置非常重要

六、/home  

  •  /home目录是用于存放用户个人文件和配置的目录。每个用户在系统中都会有一个独立的子目录,以其用户名命名,位于/home目录下。例如,如果有一个用户的用户名是"john",则该用户的个人目录路径就是/home/john

        每个用户的个人目录通常包含以下一些常见的子目录和文件:

/home/user/Documents

用户的文档文件夹,用于存放文档和文件
/home/user/Downloads用户的下载文件夹,用于存放从互联网上下载的文件
/home/user/Desktop用户的桌面文件夹,用于存放桌面上的快捷方式和文件
/home/user/Pictures用户的图片文件夹,用于存放照片和图像文件
/home/user/Music用户的音乐文件夹,用于存放音乐文件
/home/user/Videos用户的视频文件夹,用于存放视频文件

        此外,用户还可以根据需要在自己的个人目录下创建其他自定义的子目录和文件,以组织和管理自己的个人文件。用户的个人目录通常具有对应用户的权限,只有该用户和超级用户(root)才能访问和修改其中的文件 

 七、/root

  • /root目录是系统管理员(root用户)的个人主目录。它是Linux系统中的超级用户(root)的默认主目录,类似于普通用户的/home目录。

    /root目录通常包含以下一些常见的子目录和文件

    /root/Documents

    root用户的文档文件夹,用于存放文档和文件
    /root/Downloadsroot用户的下载文件夹,用于存放从互联网上下载的文件
    /root/Desktoproot用户的桌面文件夹,用于存放桌面上的快捷方式和文件
    /root/Picturesroot用户的图片文件夹,用于存放照片和图像文件
    /root/Musicroot用户的音乐文件夹,用于存放音乐文件
    /root/Videosroot用户的视频文件夹,用于存放视频文件

        /root目录下的文件和子目录只有root用户才能访问和修改。作为系统的超级用户,root用户具有最高的权限,可以对系统进行任何操作。因此,/root目录通常被用来存放root用户的个人文件和配置,以及一些系统级别的脚本和配置文件 

八、/run

  • run目录是一个临时文件系统(tmpfs),用于存放运行时的临时文件、进程相关文件和运行时数据。它是在系统启动时由initramfs(初始RAM文件系统)挂载的。

    /run目录的用途包括但不限于以下几个方面:

    进程相关的文件

    /run目录存放了一些与正在运行的进程相关的文件,如进程ID文件(pid file)和套接字文件(socket file)。这些文件用于进程间通信和进程管理
    锁文件run目录也可以存放一些进程锁文件,用于协调多个进程之间的操作
    临时文件/run目录可以用于存放临时文件,这些文件在系统重启后会被清除。临时文件可以是任何需要在系统运行时储的数据
    运行时数据一些系统和服务可能会将一些运行时数据存放在/run目录中,例如运行时状态文件、运行时配置文件等

        总之,/run目录是用于存放运行时临时文件和数据的目录,它提供了一个临时性的存储空间,用于系统和进程之间的通信和数据交互。由于是一个临时文件系统,系统重启后,/run目录中的文件将会被清空并重新创建 

九、/sbin

  • /sbin目录是存放系统管理员(root用户)使用的系统管理命令的目录。与/bin目录类似,/sbin目录中的命令也是可执行的,但这些命令通常只有超级用户(root)才能执行。

    /sbin目录中的命令主要用于系统管理和维护,包括:

    系统启动和关机相关的命令

    如/sbin/reboot(重启系统)、/sbin/shutdown(关机系统)等
    硬件设备管理相关的命令如/sbin/ifconfig(配置网络接口)、/sbin/fdisk(磁盘分区工具)等
    系统服务管理相关的命令如/sbin/service(管理系统服务)、/sbin/chkconfig(配置系统服务启动项)等
    文件系统管理相关的命令如/sbin/mkfs(创建文件系统)、/sbin/fsck(检查和修复文件系统)等
    系统日志管理相关的命令如/sbin/syslogd(系统日志守护进程)等
    系统安全管理相关的命令如/sbin/iptables(配置防火墙规则)等        

        总之,/sbin目录中的命令是用于系统管理和维护的工具,提供了对系统底层和关键功能的管理和控制。这些命令通常只有超级用户(root)才能执行,用于进行系统配置、故障排查、性能调优等任务

十、 /tmp

  • /tmp目录是用于存放临时文件的目录。它是一个公共的临时文件夹,供所有用户和程序共享使用。

    /tmp目录的特点是存放的文件会在系统重启时被清空,因此它适合用于存放临时数据和临时文件。一些常见的用途包括:

    程序临时文件

    许多程序在运行过程中需要创建临时文件,例如某些编辑器的临时保存文件、临时下载文件等
    临时缓存某些应用程序可能会将一些临时数据缓存到/tmp目录中,以提高性能
    临时传输文件当需要在不同用户之间传递文件时,可以将文件放在/tmp目录中,供其他用户临时访问

        /tmp目录对于所有用户都是可读可写的,因此请注意确保敏感数据不被存放在/tmp目录中,以防止数据泄露。此外,由于/tmp目录的文件在系统重启时会被清空,因此请注意在使用之后及时删除不再需要的临时文件,以释放磁盘空间

十一、/usr 

  • /usr目录是Unix Shared Resources(Unix共享资源)的缩写,它是用于存放用户可共享的应用程序、文件和数据的目录。/usr目录是一个非常重要的目录,通常包含了系统的大部分软件包和应用程序。

    /usr目录的结构如下:

    /usr/bin:

    存放可执行文件,包括系统和用户安装的应用程序
    /usr/sbin:存放系统管理员使用的系统管理命令
    /usr/lib存放系统的共享库文件,供多个程序共享使用
    /usr/include存放C语言库的头文件(header files),用于编译程序
    /usr/share存放与系统无关的共享文件,如文档、数据文件、图标等
    /usr/local存放用户自行安装的软件包和应用程序
    /usr/src存放源代码文件,用于编译系统内核、设备驱动程序等
    /usr/share/doc存放软件包的文档和帮助文件
    /usr/share/man

    存放程序和命令的帮助手册(man pages)

        总之,/usr目录是Linux系统中用于存放用户可共享的应用程序和文件的目录,它是系统的重要组成部分。在标准的Linux发行版中,/usr目录的结构和内容是按照一定的规范进行组织的,以方便用户安装、管理和使用各种软件包和应用程序

十二、/var 

  • /var目录用于存储变量数据文件,如日志文件、临时文件、系统假脱机文件等。它通常作为单独的分区挂载,以确保即使根分区已满,系统进程也可以写入它。

    /var”中的一些常见子目录包括:

    /var/log:该目录包含系统和应用程序生成的各种日志文件。这些日志可用于故障排除和监视活动
    /var/tmp此目录用于在系统重新启动时保留的临时文件
    /var/spool此目录用于存储假脱机文件,通常用于打印队列和邮件队列
    /var/www此目录通常用作 Web 服务器文件(如 HTML、CSS 和其他 Web 内容)的默认位置
    /var/lib此目录用于存储特定于单个应用程序或服务的持久性数据文件。例如,MySQL 或 PostgreSQL 的数据库文件可能存储在此处

        总的来说,/var目录在管理Linux系统中的各种类型的数据文件方面起着重要的作用 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/742510.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode 热题 100_两数相加

题解一: 迭代:首先判断整数0,然后分别遍历两段链表,将对应位数的值相加并存入新链表,再遍历新链表,将节点值val>10的减10,并且其下一节点值val1。需要注意最后一位节点进位是将下一位节点值设…

spring-boot-maven-plugin springboot打包配置问题

目录 一、打包可执行jar 二、打包非可执行jar 三、两种jar对比 springboot项目的pom文件中一般都配置了spring-boot-maven-plugin打包插件。 <!-- 打包插件依赖 --><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-b…

Python逆向:pyc字节码转py文件

一、 工具准备 反编译工具&#xff1a;pycdc.exe 十六进制编辑器&#xff1a;010editor 二、字节码文件转换 在CTF中&#xff0c;有时候会得到一串十六进制文件&#xff0c;通过010editor使用查看后&#xff0c;怀疑可能是python的字节码文件。 三、逆向反编译 将010editor得到…

9、组合模式(结构性模式)

组合模式又叫部分整体模式&#xff0c;它创建了对象组的树形结构&#xff0c;将对象组合成树状结构&#xff0c;以一致的方式处理叶子对象以及组合对象&#xff0c;不以层次高低定义类&#xff0c;都是结点类 一、传统组合模式 举例&#xff0c;大学、学院、系&#xff0c;它们…

优秀的前端框架vue,原理剖析与实战技巧总结【干货满满】

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; 所属的专栏&#xff1a;前端零基础教学&#xff0c;实战进阶 景天的主页&#xff1a;景天科技苑 文章目录 Vuevue.js库的基本使用vue.js的M-V-VM思…

flutter入门

本文真对 Flutter 的技术特性&#xff0c;做了一些略全面的入门级的介绍&#xff0c;如果你听说过Flutter&#xff0c;想去了解它&#xff0c;但是又不想去翻厚厚的API&#xff0c;那么本文就是为你准备的。 随着纯客户端到Hybrid技术&#xff0c;到RN&Weex&#xff0c;再…

24计算机考研调剂 | 东北石油大学

东北石油大学智能物探团队招生宣传 考研调剂招生信息 学校:东北石油大学 专业:工学->地质资源与地质工程->矿产普查与勘探 年级:2024 招生人数:2 招生状态:正在招生中 联系方式:********* (为保护个人隐私,联系方式仅限APP查看) 补充内容 团队介绍&#xff1a; …

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的血细胞智能检测与计数(深度学习模型+UI界面代码+训练数据集)

摘要&#xff1a;开发血细胞智能检测与计数系统对于疾病的预防、诊断和治疗具有关键作用。本篇博客详细介绍了如何运用深度学习构建一个血细胞智能检测与计数系统&#xff0c;并提供了完整的实现代码。该系统基于强大的YOLOv8算法&#xff0c;并对比了YOLOv7、YOLOv6、YOLOv5&a…

C++顺序结构实例

1.计算浮点数相除的余数 计算两个双精度浮点数a和b相除的余数,a和b都是双精度浮点数。这里的余数r的定义是: a=k * 吧+r,其中k是整数,0<=r<b。 输入 一行,包括两个双精度浮点数a和b 输出 一行,a➗b的余数 样例输入 73.263 0.9973 样例输出 0.4301 #i…

jdk17下载安装图文教程【超详细】

目录 一、下载JDK17 二、安装JDK17 三、配置环境变量 四、测试Java安装是否成功 一、下载JDK17 访问官网&#xff1a;Java Downloads | Oracle 二、安装JDK17 三、配置环境变量 右键点击我的电脑>属性>高级系统设置>环境变量 在【系统变量】中新建JAVA_HOME&…

ROS2 launch rs_launch.py的说明(设置分辨率、配准、pcl图等)

ROS2 launch rs_launch.py的说明&#xff08;设置分辨率、配准、pcl图等&#xff09; 文章目录 前言正文下载安装方式参数示例指令 前言 本文目的是记录下当前ROS2版本apt install 的 realsense-ros的rs_launch文件中参数有哪些及如何配置。 正文 下载安装方式 # 使用apt i…

记录西门子:SCL设置不同顺序

一台搅拌的设备&#xff0c;需要控制三种料的进料顺序和进料重量&#xff0c;顺序和重量可以随便设定&#xff0c;也可以是几十种料。触摸屏上面有A、B、C三种液体原料&#xff0c;需要设定三种液体原料重量&#xff0c;并设定序号。 假设如下面所示设定&#xff1a;那将先打开…

C#面:System.Array.CopyTo() 和 System.Array.Clon() 的区别

二者都是用于复制数组的方法&#xff0c;但它们有一些区别&#xff1a; System.Array.CopyTo()&#xff1a; 方法签名&#xff1a;void CopyTo(Array array, int index)功能&#xff1a;将当前数组的所有元素复制到另一个数组中。参数&#xff1a; array&#xff1a;目标数组…

AI 技术:改变世界的力量

人工智能&#xff08;AI&#xff09;是当今科技领域最热门的话题之一&#xff0c;它已经成为推动社会进步和经济发展的重要力量。AI 技术的应用范围非常广泛&#xff0c;从智能手机、自动驾驶汽车到医疗保健、金融服务等领域&#xff0c;都可以看到 AI 的身影。 那么&#xff0…

4. 数据库建库建表规范和原理,白话版

文章目录 数据库建库建表规范和原理&#xff0c;白话版1. 数据库的字符集&#xff1a;为何utf8成为首选&#xff1f;2. 为什么要注意数据库的排序规则&#xff1f;3. 怎么建表名&#xff1f;4. 为什么表中会创建id和code&#xff1f;5. 主键id的命名规则6. 关联键的命名规则7. …

【考研数学】打基础用张宇《30讲》还是武忠祥《基础篇》?

基础课不太可能所有的东西全都覆盖&#xff0c;还是先搭起一个知识框架&#xff0c;然后不断的填充和完善。 所以不必太过于在意少一些东西&#xff0c;我们不可能一口吃成胖子&#xff0c;基础知识肯定不会遗漏的&#xff0c;只可能一些技巧不到位。 从自己的情况考虑&#…

【哈希表算法题记录】15. 三数之和,18. 四数之和——双指针法

题目链接 15. 三数之和 思路 这题虽然放在哈希表的分类里面&#xff0c;但是用双指针法会更高效。 之前的双指针我们要么是一头left一尾right&#xff0c;要么是快fast慢slow指针。这里是要计算三个数的和&#xff0c;我们首先对数组进行从小到大的排序&#xff0c;先固定一…

./gradlew assembleRelease

在 Android 项目中使用 Gradle 进行打包&#xff0c;通常会涉及到配置 build.gradle 文件。其中&#xff0c;你需要指明签名配置&#xff08;signing config&#xff09;和构建类型&#xff08;build type&#xff09;。以下是一个基本的配置示例&#xff1a; 首先&#xff0c…

Docker 进阶

1、容器数据卷 什么是容器数据卷&#xff1f; 就是当容器内存在了mysql&#xff0c;在里面书写了数据&#xff0c;如果容器删除了&#xff0c;那么数据也就没有了&#xff0c;通过容器数据卷的技术&#xff0c;可以让容器内的数据持久化到Linux服务器上 操作 #docker run -…