当前位置: 首页 > article >正文

学习ubuntu 24.10系统目录架构

Ubuntu系统的目录架构是一种标准化的文件系统布局,它按照特定的目录结构组织文件和目录,使得系统管理和维护更加简便。以下是Ubuntu系统目录的用途简单介绍:

1、 /bin:全名是 "binary",二进制

1-1、 用途:存放目录包含二进制可执行文件,包含系统中最基本的可执行命令,如ls、cp和mv等。这些命令对所有用户可用,是系统运行所必需。

1-2、Ubuntu24.10版本中,/bin目录是一个符号链接,指向/usr/bin目录,以节省磁盘空间。

1-3、/bin目录通常包含在环境变量PATH中。

1-4、user/bin 、/sbin 和 /bin 都是存放二进制文件,放置功能有区别,user/bin包含/sbin 和 /bin ,/sbin主要是系统管理员使用的系统维护和管理任务所用.

2、/boot:  引导加载程序目录

2-1、用途:存放启动相关的文件(内核映像文件、启动加载程序以及相关的配置文件)。系统启动时,这些文件首先被加载。

2-2、关键文件:       

  • 内核映像文件:通常是名为vmlinuz的文件(不同版本或发行版可能有不同的命名规则),它是Linux操作系统的核心部分,负责管理系统资源、提供硬件抽象等。
  • 启动加载程序:如GRUB(GRand Unified Bootloader)或LILO(Linux Loader),这些程序在系统启动时运行,负责加载内核并传递给内核必要的启动参数。
  • 初始内存盘(initrd/initramfs):这是一个临时的根文件系统映像,包含启动过程中所需的驱动程序和模块,以便在系统完全加载前提供基本的硬件支持。

2-3、/boot目录通常是可写入的,因为系统更新时可能需要替换或添加新的内核映像文件。在某些情况下,为了安全或性能考虑,/boot目录单独独立的分区。因为错误的操作可能导致系统无法启动。

3、/cdrom: 被用作挂载光盘的专用目录,现在由/media代替。

3-1、传统的Linux系统中,/cdrom目录通常被用作挂载光盘的专用目录。这意味着当系统检测到有光盘插入时,管理员或系统可以自动(或通过命令)将光盘文件系统挂载到/cdrom目录下,从而使用户能够像访问硬盘上的文件一样访问光盘上的文件。现在由/media目录代替,移动盘只要插入直接挂在/media上,拔出则退出/media挂载。而如果不是本ubuntu系统区分的盘,为其他系统分区的盘,只有点击选择的磁盘才会载入/media。

4、/dev :全名是 "device",代表计算机的所有硬件设备

4-1、用途:/dev目录是设备文件目录,它包含了系统中所有设备文件。这些设备文件并不是真实的硬件设备,而是特殊的文件,它们提供了一种访问和操作硬件设备的方式。通过读写这些设备文件,用户和应用程序可以间接地与硬件设备进行交互。

4-2、关键内容

        4-2-1、设备文件:在/dev目录下,每个设备文件都代表了一个特定的硬件设备或设备接口。例如,/dev/sda可能代表第一个SCSI硬盘,/dev/tty1可能代表第一个虚拟控制台终端。

        4-2-2、设备类型:设备文件根据其所代表的硬件设备类型被组织在不同的子目录或具有特定的命名规则下。例如,硬盘设备通常位于/dev目录的根级别,而串口设备可能以/dev/tty为前缀。

4-3、动态性:随着系统硬件的添加或移除,/dev目录中的设备文件也会相应地增加或减少。现代Linux系统(包括Ubuntu)通常使用udev这样的动态设备管理系统来管理/dev目录中的设备文件。

4-4、访问权限:设备文件的访问权限通常被严格控制,以确保只有具有适当权限的用户或应用程序才能访问和操作硬件设备。

4-5、系统启动:在系统启动过程中,/dev目录中的设备文件对于初始化硬件设备、加载必要的驱动程序至关重要。

4-6、应用程序运行:许多应用程序在运行过程中需要访问特定的硬件设备,它们通过读写/dev目录中的设备文件来实现这一目的。

5、/etc: 全名是etcetera 是一个极其重要的系统目录,用于存放系统的全局配置文件

5-1、用途:/etc目录是Linux系统中用于存放配置文件的目录。这些配置文件以文本形式存储,可以被系统管理员和具有相应权限的用户修改,以调整系统的行为和设置。通过修改这些文件,用户可以定制和优化系统的运行环境。

5-2、用户与组信息:       

  1. /etc/passwd:存储了系统上所有用户的基本信息,如用户名、用户ID(UID)、用户主目录、默认的shell等。
  2. /etc/group:存储了系统上所有用户组的基本信息,如组名、组ID(GID)、用户组成员等。
  3. /etc/shadow(在某些系统上):存储了用户的加密密码和其他安全相关的信息。这个文件通常只有root用户可读,以增强系统的安全性

5-3、网络配置:

  1. /etc/resolv.conf:用于指定本机的DNS服务器地址,以便系统能够解析域名到IP地址。
  2. /etc/hosts:用于存储主机名和IP地址的映射关系,当系统需要进行网络通信时,会用到这个文件来解析主机名。

5-4、系统启动与服务

  1. /etc/fstab:定义了系统启动时要挂载的文件系统和相应的选项。通过编辑这个文件,可以实现系统在启动时自动挂载所需的文件系统。
  2. /etc/init.d(在某些系统上)或/etc/systemd/system/(在使用systemd的系统上):包含了一组用于管理系统的脚本或服务单元文件,可以用来启动、停止和重启服务。

5-5、安全与服务配置

  1. /etc/cron.d/etc/crontab:定时任务的配置文件,用于设置系统定时执行的任务。

5-6、软件包管理

  1. /etc/apt/sources.list:存储了包管理器(如APT或YUM)的软件源配置文件,用于指定软件包的下载源

5-7、全局性


http://www.kler.cn/a/323741.html

相关文章:

  • [GXYCTF2019]BabyUpload--详细解析
  • 【Redis】Redis的一些应用场景及使用策略
  • More effective C++:杂项
  • 【Linux网络编程】简单的UDP网络程序
  • STM32芯片EXIT外部中断的配置与原理
  • Ubuntu24.04上安装和配置MariaDB
  • 【Qt】前后端交互---DataCenter类
  • 牛顿迭代法求解x 的平方根
  • 架构师:消息队列的技术指南
  • Unity 网格的细节级别 (LOD) 学习
  • Python Web架构:微服务与服务网格的实践
  • C. Cards Partition 【Codeforces Round 975 (Div. 2)】
  • 强化-极限
  • Netty入门
  • 机器学习(4):机器学习项目步骤(一)——定义问题
  • Pytorch实现Transformer
  • 激光slam学习笔记4--slam_in_autonomous_driving编译碰到问题汇总
  • 基于Python+flask+MySQL+HTML的全国范围水质分析预测系统,可视化用echarts,预测算法随机森林
  • [Redis][Zset]详细讲解
  • FastAPI前置知识及快速入门
  • Python入门:类的异步资源管理与回收( __del__ 方法中如何调用异步函数)
  • CMake构建学习笔记18-cpp-httplib库的构建
  • 【目标检测】隐翅虫数据集386张VOC+YOLO
  • 【web阅读记录】web相关概念及知识整理
  • 【机器学习】——支持向量机
  • uni-app 封装websocket 心跳检测,开箱即用