Quero fazer alguns experimentos no sistema de arquivos btrfs, mas não quero fazer nenhuma alteração nas partições existentes e quero controle total sobre coisas como o tamanho do dispositivo.
É possível criar um arquivo quevisualcomo um dispositivo de bloco que posso montar e desmontar e que funcionará como um dispositivo de bloco, como ficar sem espaço?
Responder1
O dispositivo de loop é o que você precisa para isso. Execute estes comandos como root:
truncate -s1G 1GB.img # Sparse allocation of a 1GB file
ld=$(losetup --show --find 1GB.img); echo "$ld"
Agora você terá um dispositivo de loop (por exemplo, /dev/loop0
) que pode ser tratado como um dispositivo de bloco.
mkfs -t btrfs "$ld" # Device that was returned from losetup
mkdir -p /mnt/dsk
mount "$ld" /mnt/dsk
Quando terminar, arrume novamente
umount /mnt/dsk
losetup -d "$ld"
rm 1GB.img
Se você deseja criar uma tabela de partição no dispositivo de bloco, certifique-se de sempre incluir o --partscan
sinalizador no losetup
comando. Isto criará os dispositivos associados, por exemplo, /dev/loop0p1
.