Eu tenho um script bash onde monto um ISO para dispositivos de loop:
mount -o loop my.iso /tmp/foo
E acontece que ao mesmo tempo no meu SO (Linux Mint 19) tenho uma imagem ISO montada, usando a opção GUI para esta ação.
Então eu recebo o erro
mount: /tmp/foo: /dev/loop0 ya está montado o el punto de montaje está ocupado.
(...ponto de montagem loop0 ocupado...)
Pergunta:
Posso selecionar qual loop posso montar meu ISO, algo como:
mount - loop3 my.iso /tmp/foo
então não preciso desmontar o ISO anterior?
O erro não é porque você já tem outro dispositivo ISO montado; o
mount -o loop
sempre obterá o primeiro dispositivo de loop não utilizado ou criará um novo.E não é porque a mesma imagem ISO / dispositivo de loop já está montado em outro diretório - o mesmo dispositivo pode ser montado em diferentes pontos de montagem ao mesmo tempo.
O que você provavelmente está tentando fazer é montar o mesmo ISO no mesmo ponto de montagem duas vezes. O
mount(8)
utilitário tentará protegê-lo contra isso verificando se o arquivo de backup já está anexado a um dispositivo de loop e reutilizando esse dispositivo, em vez de anexar o mesmo arquivo a vários dispositivos de loop.Mas se você realmente quiser fazer isso, você pode ignorar a verificação anexando o dispositivo de loop manualmente com
losetup
:Os dois combinados:
Você deve então usar a
-d
opção deumount(8)
explicitamente, ou desanexar o loop manualmente depois, comlosetup -d
:Isso deve ser bastante seguro com sistemas de arquivos somente leitura, como ISOs. Nunca o use com sistemas de arquivos montados no modo de leitura e gravação.