Я пишу make-файл, который в какой-то момент создает файлы изображений.  Я использую losetup -f в файле, чтобы найти устройство свободного цикла при построении каждого изображения.  Поскольку изображения не зависят друг от друга, я бы хотел иметь возможность make -j параллельно.  К сожалению, когда я это делаю, losetup -f возвращает одно и то же устройство всем изображениям, поскольку команда выполняется почти в одно и то же время для каждого изображения.  Кто-нибудь знает, как я могу обойти это?
1 ответ
0
Я столкнулся с той же проблемой, что и вы, и обнаружил следующий отчет об ошибках в трекере ошибок хрома, в котором также описано, как его исправить: https://code.google.com/p/chromium/issues/detail?id=201150.
По сути, достаточно не просто напечатать следующее бесплатное устройство, но и использовать его и просто напечатать имя, чтобы впоследствии его можно было удалить.
Из losetup(8):
-f, --find
    find the first  unused  loop  device.  If  a  file  argument  is present,
    use this device. Otherwise, print its name
--show
    print device name if the -f  option  and  a  file  argument  are present.
Это означает, что losetup -f --show /foo/bar будет печатать, например, /dev/loop1 , а также связывать цикл устройства с файлом /foo/bar .
