为什么我的系统在启动后立即出现 3 个循环设备?

为什么我的系统在启动后立即出现 3 个循环设备?

我将在登录 Linux Mint 19.2 Cinnamon 后立即列出系统上可用的所有驱动器来开始这个问题:

# fdisk -l

Disk /dev/loop0: 89,1 MiB, 93454336 bytes, 182528 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


Disk /dev/loop1: 89,1 MiB, 93429760 bytes, 182480 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


Disk /dev/loop2: 202,9 MiB, 212713472 bytes, 415456 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


Disk /dev/nvme0n1: 477 GiB, 512110190592 bytes, 1000215216 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
Disklabel type: gpt
Disk identifier: 989573D5-37E7-437A-B680-9410F7234A94

Device          Start        End    Sectors   Size Type
/dev/nvme0n1p1   2048     194559     192512    94M EFI System
/dev/nvme0n1p2 194560 1000214527 1000019968 476,9G Linux filesystem


Disk /dev/sda: 232,9 GiB, 250059350016 bytes, 488397168 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
Disklabel type: gpt
Disk identifier: B05FAE90-8E4B-4CCC-AC77-D35D4B260C8A

Device         Start       End   Sectors   Size Type
/dev/sda1       2048   1026047   1024000   500M EFI System
/dev/sda2    1026048   1288191    262144   128M Microsoft reserved
/dev/sda3    1288192 459608774 458320583 218,6G Microsoft basic data
/dev/sda4  459610112 461398015   1787904   873M Windows recovery environment
/dev/sda5  461398016 485992447  24594432  11,7G Windows recovery environment
/dev/sda6  485992448 488396799   2404352   1,2G Windows recovery environment

在这里,我可能应该补充一点,我什至不知道循环设备是什么。我只是每天安装很多磁盘,制作它们的映像,使用它们等等。截至目前,我已经注意到那些循环设备 0、1、2,但它们很可能已经存在很长时间了,也许我只是由于工作压力而没有注意到它们。


列出它们并不能揭示它们的起源时间,可能就像我今天看到的日期一样:

# ll /dev/loop[012]

brw-rw---- 1 root disk 7, 0 Nov 13  2019 /dev/loop0
brw-rw---- 1 root disk 7, 1 Nov 13  2019 /dev/loop1
brw-rw---- 1 root disk 7, 2 Nov 13  2019 /dev/loop2

为什么即使我重新启动它们仍然在我的系统上?这不奇怪吗?

这是我的/etc/fstab

UUID=f1fc7345-be7a-4c6b-9559-fc6e2d445bfa    /               ext4     errors=remount-ro                0    1
UUID=4966-E925                               /boot/efi       vfat     umask=0077                       0    1
none                                         /ramdisk        tmpfs    size=1G,mode=0777                0    0
UUID=01D480EF7EDA45C0                        /mnt/windows    ntfs     nosuid,nodev,nofail,noexec,rw    0    0

如何获取有关这 3 个环路设备的更多信息?

fdisk现在尝试过:

# fdisk /dev/loop0

Welcome to fdisk (util-linux 2.31.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

The old squashfs signature will be removed by a write command.

Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0xc54bc258.

Command (m for help): v
Remaining 182527 unallocated 512-byte sectors.

Command (m for help): p

Disk /dev/loop0: 89,1 MiB, 93454336 bytes, 182528 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
Disklabel type: dos
Disk identifier: 0xc54bc258

我已经重新生成了我的initramfs图像,没有任何变化,它们在重新启动后仍然存在。


在实际尝试删除它们之前,我宁愿更多地了解它们。


评论问答:

为什么你不像关心/dev/tty*设备那样关心各种设备loop

嗯,这是一个棘手的问题,因为我不知道这些tty设备的确切用途是什么。所以,我猜无知是福,有点说话。

为什么要/dev/loop*专门删除这些设备呢?

我说我想更多地了解它们,调查它们包含什么,根据fdisk输出,更正,它们不包含任何分区表。更重要的是,这些loop设备并不存在于我直接使用的任何其他 Linux 上。


看来,它与 Snap 守护进程有一些关系。

# losetup -a

/dev/loop1: [66306]:6161256 (/var/lib/snapd/snaps/core_8039.snap)
/dev/loop2: [66306]:6160663 (/var/lib/snapd/snaps/core_7917.snap)
/dev/loop0: [66306]:6160545 (/var/lib/snapd/snaps/vlc_1049.snap)

# losetup -l
NAME       SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE                           DIO LOG-SEC
/dev/loop1         0      0         1  1 /var/lib/snapd/snaps/core_8039.snap   0     512
/dev/loop2         0      0         1  1 /var/lib/snapd/snaps/core_7917.snap   0     512
/dev/loop0         0      0         1  1 /var/lib/snapd/snaps/vlc_1049.snap    0     512

答案1

设备的存在/dev/loop*并不一定表明任何事情;有些系统会预先填充它们,有些则不会。但是,如果它们出现在fdisk -l的输出中,则意味着它们已被设置为在文件或另一个块设备上提供循环设备。

您可以通过运行来查看设置了哪些循环设备以及它们“循环”的内容

losetup -l

作为根。在您的情况下,这些设备用于访问 Snap 卷;

snap list

将列出系统上正在运行的 Snap(显然是 VLC 和核心 Snap)。看Ubuntu Snap 教程进行简单介绍。

相关内容