На список использования блоков lsblk
, Я нашел 14 блоков взгляда перечисленными от цикла 0 для цикличного выполнения 13.
me@alpha:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 87.9M 1 loop /snap/core/5662
loop1 7:1 0 140.7M 1 loop /snap/gnome-3-26-1604/74
loop2 7:2 0 3.7M 1 loop /snap/gnome-system-monitor/57
loop3 7:3 0 140.9M 1 loop /snap/gnome-3-26-1604/70
loop4 7:4 0 34.6M 1 loop /snap/gtk-common-themes/818
loop5 7:5 0 42.1M 1 loop /snap/gtk-common-themes/701
loop6 7:6 0 89.5M 1 loop /snap/core/6130
loop7 7:7 0 2.3M 1 loop /snap/gnome-calculator/238
loop8 7:8 0 130.2M 1 loop /snap/gnome-3-28-1804/4
loop9 7:9 0 14.5M 1 loop /snap/gnome-logs/45
loop10 7:10 0 13M 1 loop /snap/gnome-characters/124
loop11 7:11 0 53.7M 1 loop /snap/core18/536
loop12 7:12 0 13M 1 loop /snap/gnome-characters/139
loop13 7:13 0 2.3M 1 loop /snap/gnome-calculator/260
sda 8:0 0 113G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
└─sda2 8:2 0 112.5G 0 part /
Однако, когда я перечисляю использование ls /dev
и найдите использование блоков grep 'loop'
, Я нашел 15 блоков перечисленными с дополнительным loop14
показанный.
me@alpha:~$ ls /dev | grep 'loop'
loop0
loop1
loop10
loop11
loop12
loop13
loop14
loop2
loop3
loop4
loop5
loop6
loop7
loop8
loop9
loop-control
Почему loop14
не перечислен от lsblk
?
lsblk
циклические устройства списков с отступающим файлом. В Вашем случае циклические устройства 0-13 имеют отступающие файлы и обнаруживаются.
losetup --find
, используемый для нахождения следующего доступного циклического устройства, автоматически создает новое циклическое устройство, если все существующие циклические устройства используются (если выполнено как корень). Таким образом, некоторый процесс, возможно, работал losetup --find
как корень для поиска доступного циклического устройства, и вероятно не использовал его.
Пример:
У меня есть семь циклических устройств, все поддержанные:
$ sudo losetup --list --all
NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE
/dev/loop1 0 0 1 1 /var/lib/snapd/snaps/core_5897.snap
/dev/loop6 0 0 0 0 /tmp/foo
/dev/loop4 0 0 0 0 /tmp/foo
/dev/loop2 0 0 1 1 /var/lib/snapd/snaps/core_6130.snap
/dev/loop0 0 0 1 1 /var/lib/snapd/snaps/vuze-vs_3.snap
/dev/loop7 0 0 0 0 /tmp/foo
/dev/loop5 0 0 0 0 /tmp/foo
/dev/loop3 0 0 1 1 /var/lib/snapd/snaps/core_6034.snap
$ ls /dev/loop*
/dev/loop0 /dev/loop2 /dev/loop4 /dev/loop6 /dev/loop-control
/dev/loop1 /dev/loop3 /dev/loop5 /dev/loop7
Я спрашиваю losetup
для следующего доступного циклического устройства как корень:
$ sudo losetup --find
/dev/loop8
И losetup
создал это для меня:
$ ls /dev/loop*
/dev/loop0 /dev/loop2 /dev/loop4 /dev/loop6 /dev/loop8
/dev/loop1 /dev/loop3 /dev/loop5 /dev/loop7 /dev/loop-control
Но это не находится в lsblk
:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop1 7:1 0 88.2M 1 loop /snap/core/5897
loop6 7:6 0 1M 0 loop
loop4 7:4 0 1M 0 loop
sr0 11:0 1 1024M 0 rom
loop2 7:2 0 89.5M 1 loop /snap/core/6130
loop0 7:0 0 280.2M 1 loop /snap/vuze-vs/3
loop7 7:7 0 1M 0 loop
sda 8:0 0 41G 0 disk
└─sda1 8:1 0 41G 0 part /
loop5 7:5 0 1M 0 loop
loop3 7:3 0 89.5M 1 loop /snap/core/6034
Поскольку это не поддерживается ничем применимым как блочное устройство.