Eu tenho um arquivo iso chamado ubuntu.iso
.
Eu posso mount
lo com o comando: mount ubuntu.iso /mnt
. Após a montagem, eu posso vê-lo da outout do comando df -h
: /dev/loop0 825M 825M 0 100% /mnt
.
No entanto, se eu executar o comando mount -o loop ubuntu.iso /mnt
, obterá o mesmo resultado.
Como eu sei, o dispositivo de loop nos permite visitar o arquivo iso como um dispositivo, acho que é por isso que adicionamos a opção -o loop
. Mas eu posso visitar meu arquivo iso mesmo se eu apenas executar mount ubuntu.iso /mnt
.
Então, eu não consigo ver a diferença entre mount
e mount -o loop
.
mount
loop-device
Yves
fonte
fonte
mount ubuntu.iso /mnt
ele não configura um dispositivo de loopback somente leitura emount /image.squashfs /mnt
não configura um dispositivo de loopbackDIO
(losetup --direct-io=on
).Respostas:
Ambas as versões usam dispositivos de loop e produzem o mesmo resultado; a versão curta se baseia em "inteligência" adicionada
mount
nos últimos anos.mount -o loop
dizmount
explicitamente para usar um dispositivo de loop; ele deixa o dispositivo de loop propriamente ditomount
, que procurará um dispositivo disponível, configurará e usará. (Você também pode especificar o dispositivo com, por exemplomount -o loop=/dev/loop1
.)A inteligência é que, quando um arquivo for montado, ele
mount
usará automaticamente um dispositivo de loop para montá-lo quando necessário - ou seja , o sistema de arquivos não está especificado oulibblkid
determina que o sistema de arquivos é suportado apenas em dispositivos de bloco (e, portanto, um é necessário um dispositivo de loop para converter o arquivo em um dispositivo de bloco).A seção do dispositivo de loop da
mount
página de manual possui mais detalhes.fonte
util-linux
2.11 foi apoiadomount -o loop
em 2001 e acho que o 2.10 também o teve, pelo menos um ano antes.-o loop
foi adicionado em algum momento entreutil-linux
2,4 e 2,5j; O Debian 1.1 tinha o último e foi lançado em junho de 1996. Portanto, esta opção está disponível em distribuições há mais de vinte anos.mount
será possível alternar para esse mecanismo de forma transparente (pelo menos nos primeiros 15 minutos até Acontece que ele quebrou o shellscript de alguém e todo mundo tem que voltar aos dispositivos de loop) , ao contrário domount -o loop
que ainda pede explicitamente o mecanismo antigo (atual).O
loop
dispositivo é controlado principalmente com olosteup
comando Assim,losetup -a
você fornece uma visão geral sobre os dispositivos de loop usados e os arquivos anexados. Omount
comando pode montar apenas o dispositivo de bloco . O dispositivo de loop pode criar o dispositivo de bloco virtual a partir de um arquivo (dispositivo de caractere).De fato, há uma grande diferença entre esses comandos, porque em sistemas Linux mais antigos
mount
não era possível reconhecer o arquivo como o dispositivo correto a ser montado, mas durante o tempo em que o comando mount foi concluído com muitos recursos, portanto, agora é possível decidir tente chamar o comando losetup e monte o resultado. Mas se você tiver uma imagem de disco inteira não no formato iso, mas, por exemplo, com o MBR no início, o comando mount não poderá reconhecê-la e você terá que encontrar a partição utilizável (por exemplo, com oparted disk_image.raw unit B print
comando) yoursef e montá-la com a opção completa mount comman Como :Nesta sintaxe, o dispositivo de loop não foi especificado e supõe-se que o sistema escolha o primeiro livre (
/dev/loop0
,/dev/loop1
etc). Entre os outros novos recursos do comando mount, você não precisa especificar o tipo de sistema de arquivos do dispositivo de bloco montado (no seu caso-t iso9660
) se o suporte ao sistema de arquivos foi instalado.fonte
Não há diferença entre
mount ubuntu.iso /mnt
emount -o loop ubuntu.iso /mnt
.O primeiro é tratado de forma transparente como se você tivesse usado o segundo.
fonte