Você não pode montar um disco ou partição sem ter um sistema de arquivos. Como o arquivo disk
contém todos os zeros, não existe nenhum sistema de arquivos.
Primeiro, para criar um dispositivo de loop nessa chamada de arquivo
sudo losetup -f disk
que criará um dispositivo de loop para o arquivo 'disk'. Com sudo losetup
, você obterá uma lista de dispositivos de loop; Observe o que está conectado com o seu disco. Eu assumo /dev/loop0
a partir de agora.
Próximo para criar um sistema de arquivos válido, você precisa chamar
sudo mkfs -t [type] /dev/loop0
em que [tipo] significa o tipo de sistema de arquivos, por exemplo ext4. Para mais opções, consulte man mkfs
.
Agora você pode montar:
sudo mount /dev/loop0 /media/LFS
que deve então ser acessível como sistema de arquivos normal.
Para desconectar, você precisa desmontar ( sudo umount /media/LFS
) e desanexar o dispositivo de loop ( sudo losetup -d /dev/loop0
). A partir daí, você pode montar o sistema de arquivos conforme tentou em sua pergunta (a montagem com o -o loop criará o dispositivo de loop para você).
E não, você não precisa ter o dispositivo particionado. E é claro que você pode montar um sistema de arquivos em uma pasta não vazia - mas você não poderá acessar o conteúdo anterior desta pasta antes de desmontar novamente.
Editar
Se você quiser que o arquivo de imagem funcione como discos particionados e seja reconhecido pelo kernel, você pode seguir a resposta dada em como formatar ... . Resumindo:
Particione a imagem: # fdisk disk
, que executará o fdisk normalmente e você poderá criar partições.
Criar sistemas de arquivos: Como o mkfs não funciona com whole disks
se eles são particionados (pode usar o disco bruto como um sistema de arquivos como mencionado acima), é melhor usar o dispositivo de loop com partprobe
ou kpartx
para informar o núcleo. A maneira mais simples é executar # sudo losetup -f -P disk
, o que criará dispositivos de partição como, por exemplo, /dev/loop0p1
, /dev/loop0p2
etc. Estes podem então ser usados por mkfs
.
Usar gparted
: Como o gparted chama as ferramentas padrão como parted
e mkfs
, os pontos acima também são verdadeiros. Você pode chamar # sudo gparted disk
e depois particionar o disco, mas não pode formatar essas partições, pois mkfs
pede imagens distintas como disk1
, disk2
etc. Então você deve usar o dispositivo de loop com gparted também:
# sudo losetup --show -f -P disk
/dev/loop0
# sudo gparted /dev/loop0
(Eu usei --show
aqui, então losetup
mostrará qual dispositivo é criado).
Agora você pode trabalhar com o gparted como de costume. As partições, quando criadas / formatadas, estarão disponíveis para outros aplicativos como gerenciadores de arquivos (talvez você tenha que emitir sudo partprobe /dev/loop0
para o kernel reconhecer as partições).
Eu não consegui obter o dispositivo de loop mostrado em gparted
quando chamado sem passar diretamente o nome do dispositivo de loop, mesmo depois de emitir partprobe
ou kpartx
, por exemplo ao iniciar a partir do menu do sistema. Apenas mostra dispositivos / dev / sdx. Talvez alguém consiga resolver esse problema.