为什么我的 Ubuntu Linux 系统中有这么多循环分区?
如果您一直在接触 Linux 操作系统,尤其是 Ubuntu,您可能已经注意到系统中出现了许多循环分区。通常大小较小,例如仅几兆字节,您可能想知道为什么这些分区系统存在,它们的用途是什么,以及是否可以删除它们以回收磁盘空间。
通过“fdisk -l”命令快速浏览一下磁盘信息可能会在显示实际硬盘驱动器数据之前显示一些“/dev/loop”条目。这些循环分区系统是必需的还是可以修改?在回答这个问题之前,让我们先深入研究一下这些循环设备的本质。
在本教程中您将学习:
- 什么是循环设备
- 为什么使用循环设备
- 检查 Ubuntu 中的循环设备
什么是循环设备?
循环设备或循环安装是 Linux 系统中的一个独特功能。它们允许将常规文件绑定到特殊的块设备,从而创建虚拟文件系统。这有助于将一堆文件打包在一起以供操作系统访问。像 snap 这样需要隔离系统操作的程序发现循环设备非常有用。
循环设备本质上允许您将常规文件挂载为文件系统,从而提供在隔离环境中工作的好处,提高安全性,并允许开发人员在单个快照中打包具有所有依赖项的应用程序。
为什么使用循环设备?
循环设备虽然主要模拟虚拟文件系统,但有多种用途:
- 它们可以促进通过文件系统安装操作系统,从而无需对驱动器重新分区。
- 它们提供了一种在安装后配置系统映像的便捷方法。
- 它们提供大量的数据隔离。
- 它们使沙盒应用程序能够包含所有必需的依赖项。
- 高级开发人员可以利用独立的文件系统来独特地增强应用程序的功能。
总的来说,使用循环设备,可能性是无限的。
了解 Ubuntu 中的快照分区和循环分区
Ubuntu 用户之所以会遇到如此多的循环分区,是因为 Canonical 开发的通用包管理系统“snaps”。 Snap 应用程序作为循环设备安装,因此构成了您在系统中看到的各种循环分区。
循环分区可以删除吗?
从技术上讲,您可以删除这些循环设备以节省空间。这可以使用“losetup”实用程序来完成。然而,由于这些分区是快照系统的一部分,删除可能会导致快照应用程序的运行出现问题,因为快照依赖于这些虚拟分区来实现其功能。
检查 Ubuntu 中的循环设备
1. 列出活动环路设备
命令 :
$ sudo losetup -a
/dev/loop1: [65025]:3574327 (/var/lib/snapd/snaps/core_15925.snap)
/dev/loop0: [65025]:3539127 (/var/lib/snapd/snaps/core_15511.snap)
描述:此命令显示所有活动循环设备及其关联的支持文件。输出显示循环设备路径、关联的文件以及任何相关的循环设备属性。
2. 识别备份文件类型
命令 :
$ sudo file /var/lib/snapd/snaps/core_15511.snap
/var/lib/snapd/snaps/core_15511.snap: Squashfs filesystem, little endian, version 4.0, xz compressed, 123973296 bytes, 12906 inodes, blocksize: 131072 bytes, created: Sat May 27 09:09:52 2023
描述:file
命令是一个确定给定文件类型的实用程序。当应用于循环设备的支持文件时,它可以显示该文件是否是 ext4 文件系统、ISO 映像或其他文件。
3. 查看Loop设备的文件系统详细信息
命令 :
$ sudo fdisk -l /dev/loop0
Disk /dev/loop0: 118.23 MiB, 123973632 bytes, 242136 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
描述:fdisk
是一个磁盘分区实用程序。使用 -l
选项,它列出指定设备的分区表。当在循环设备上运行时,它可以提供文件系统类型、扇区数量和循环设备大小等详细信息。
4. 检查已安装的环路设备及其使用情况
命令 :
$ df -h | grep '/dev/loop'
/dev/loop0 119M 119M 0 100% /snap/core/15511
/dev/loop1 106M 106M 0 100% /snap/core/15925
描述:df
命令报告文件系统使用的磁盘空间量。 -h
标志通过使用以 MB、GB 等为单位的大小使输出易于阅读。将输出通过管道传送到 grep '/dev/loop'
对其进行过滤以仅显示循环设备。这可以帮助您快速查看安装了哪些循环设备及其磁盘使用统计信息。
通过使用这些命令,您将能够在 Ubuntu 上更清晰、更精确地检查和管理循环设备。始终记住将占位符替换为适合您的特定上下文的值。
综上所述
了解 Linux 系统架构中循环分区的功能非常重要。对于某些用户来说,它们可能显得多余且占用空间,但它们在某些应用程序(尤其是快照应用程序)的运行方式中发挥着关键作用。虽然可以删除它们,但建议不要在没有完全理解其含义的情况下删除它们。毕竟,这些分区包含对操作系统平稳运行至关重要的关键组件。