Как настроить более 10 петлевых устройств?

9

Исходя из этого ответа, решение заключается в

modprobe loop max_loop=64

Что позволяет мне использовать 64 устройства обратной связи

mknod -m 660 /dev/loop8 b 7 8

Создавать устройства. Я сделал это для 8, 9, 10 и 8,9 работ, но 10 нет.

Затем я попытался Loopa в loopf и попытался смонтировать 11-е устройство, и я получаю ошибку

Error: Failed to set up a loop device:

Как мне сделать> 10 петлевых устройств?

Жиль "ТАК - перестань быть злым"
источник
Убедитесь, что вы работаете mknod -m 660 /dev/loop10 b 7 10. Это работало нормально для меня. Какой дистрибутив вы используете?
sparticvs
@sparticvs: упс, я использовал 8 как последнее значение для всех переменных. Интересно, почему это позволило мне смонтировать 9-е и 10-е устройства, если я сделал это неправильно. Я использую Ubuntu, я сейчас тестирую. да, это сработало. Я приму, если вы ответите
Вы можете сделать несколько записей файловой системы для одного устройства. Все они обозначают одно и то же устройство. Эта ошибка появляется при вызове losetupили mount -o loopна устройстве, которое уже используется (даже если вы подключаетесь к этому устройству под другим именем).
Жиль "ТАК - перестань быть злым"
Что мне не нравится в этом вопросе, так это то, что он не спрашивает, как определить, было ли max_loop правильно установлено на 64. И нигде я не могу найти информацию о том, как сказать, на что установлен max.
Джерси бин

Ответы:

13

Убедитесь, что вы работаете mknod -m 660 /dev/loop10 b 7 10. Формат, в mknod -m 660 /dev/loop<ID> b 7 <ID>котором идентификатор совпадает.

Обновление [10.07.2014]

Я также нашел хороший пост в блоге, чтобы всегда иметь больше при загрузке. Смотрите https://yeri.be/xen-failed-to-find-an-unused-loop-device

Обновление [25.05.2016]

Я запускаю сервер CentOS и обнаружил, что этот пост также полезен, когда другие методы не работают.

Это делает мой новый любимый метод:

MAKEDEV /dev/loop

Он создает 256 петлевых устройств (это максимум без модификации ядра).

sparticvs
источник
0

Если вы хотите найти свободный номер устройства основного цикла среди ненумерованных имен устройств цикла (например /dev/loop-something), вы можете использовать эту команду, чтобы найти самое большое и добавить 1:

find /dev -type b -print0 | xargs -0L1 bash -c 'stat -c "%t %T" "$1" | awk "/^7 / { print(\$2); }"' '' | sort -nru | head -n1

Райтис Вейнбахс
источник