【存储设备专栏 2.3 -- 环回设备和块设备区别与联系】

==> 请阅读 【嵌入式及芯片开发学必备专栏】<==


文章目录

环回设备和块设备区

在 Linux 系统中,存储设备常通过设备文件表示,如 /dev/loop 和 /dev/sda。这些设备文件代表不同类型的设备,各自在系统中扮演特定的角色。下面是对环回设备和块设备(如 sda)的详细介绍,以及它们之间的区别。

环回设备(Loop Device)

定义
  • 环回设备 (/dev/loop*) 是一种特殊的块设备,它将一个普通文件当作块设备来使用。通过环回设备,可以将文件系统映像文件挂载到系统中,仿佛它们是物理磁盘。
用途
  • 挂载 ISO 映像:常用于挂载 ISO 文件等映像文件,以访问其内容。
  • 测试文件系统:可以在不需要物理设备的情况下测试文件系统设置。
  • 容器化应用:有时用于某些容器化应用中,作为虚拟磁盘使用。
示例

假设有一个名为 image.iso 的 ISO 文件,可以通过以下命令将其挂载:

bash 复制代码
sudo losetup /dev/loop0 image.iso
sudo mount /dev/loop0 /mnt

在这个例子中,/dev/loop0 是被用来访问 image.iso 的环回设备,挂载至 /mnt 目录。

块设备(Block Device)

定义
  • 块设备 (/dev/sda, /dev/sdb, 等) 是指直接连接到系统的硬件设备,比如硬盘、SSD、USB 闪存驱动器等。sda 通常代表第一个 SCSI/SATA 磁盘设备。
用途
  • 存储数据:直接用于存储用户数据、操作系统文件等。
  • 启动系统:包含操作系统的启动分区。
  • 分区管理:可以被分成多个分区,每个分区可以格式化为不同的文件系统。
示例

查看一个硬盘设备的分区信息可以使用:

bash 复制代码
sudo fdisk -l /dev/sda

如果要挂载一个 sda 设备的分区,比如 sda1,可以使用:

bash 复制代码
sudo mount /dev/sda1 /mnt

区别

  1. 类型 :
    • 环回设备:虚拟设备,用于将文件当作块设备。
    • 块设备:实际硬件设备,直接与系统物理连接。
  2. 用途 :
    • 环回设备:用于挂载文件系统映像。
    • 块设备:用于实际的数据存储和分区管理。
  3. 表现形式 :
    • 环回设备 :通常以 /dev/loop* 形式出现。
    • 块设备 :通常以 /dev/sd* 形式出现。

总结

环回设备和块设备在 Linux 系统中各自有独特的用途和优点。环回设备灵活且易于使用,适合处理文件系统映像和虚拟化场景;而块设备在数据存储和管理中扮演关键角色,直接与系统硬件交互。了解它们的差异和使用场景对于系统管理和存储管理非常重要。

相关推荐
无奈笑天下3 小时前
银河麒麟上nproc命令教程详解
linux·运维·服务器
Rabitebla7 小时前
【Linux】进程控制(十二) 自定义 Shell(二):内建命令与进程工作目录管理
linux·c++·笔记·学习·bash
火云代理7 小时前
更换网络后为什么会退出登录?分清 IP、Cookie 与会话的关系
服务器·网络·网络协议·tcp/ip·php·ip
威嵌神州7 小时前
嵌入式排故实录:高并发下串口数据“超时丢包”的根因剖析与架构优化
运维·服务器·嵌入式硬件·缓存
Decay__8 小时前
SQLServer 索引与 SQL 优化 —— 聚集索引、非聚集索引、覆盖索引、碎片维护与执行计划
运维·数据库·sql·mysql·架构
java_logo9 小时前
Docker 部署 DeepSeek Harness(moelin):轻松搭建带登录的本地 AI Agent 平台
运维·docker·容器·ai agent·deepseek·harness·轩辕镜像
火云代理11 小时前
同一个网站,有的网络能打开、有的打不开?认识 IPv4 与 IPv6 的访问差异
服务器·网络·网络协议·tcp/ip·测试工具·php·状态模式
坤坤子吖11 小时前
Linux网络编程:TCP 粘包与半包问题,如何正确处理 TCP 流式数据?
linux·服务器·网络·笔记·网络协议·学习
AI_Gump11 小时前
Harness篇|DeepSeek Harness 上手机:五条安卓移植路线与 App 内 Linux 拆解
android·linux·人工智能·智能手机·deepseek
星恒随风13 小时前
MySQL 从零入门(六):复合查询详解——多表查询、自连接、子查询与 UNION
linux·服务器·数据库·mysql