Uma solução que não requer privilégios de root é criar um arquivo com o tamanho da partição, chamar mkfs
nesse arquivo e depois copiar o arquivo no lugar.
truncate -s 64512k part1.vfat
/sbin/mkfs.vfat part1.vfat
dd if=part1.vfat of=mountedImage.img bs=1k skip=2048
Como alternativa, com privilégios de root, você pode configurar um dispositivo de loop que dá acesso à imagem como um dispositivo . Como você deseja acessar apenas parte da imagem, é necessário indicar isso explicitamente.
sudo losetup -o 2048k --sizelimit 64512k đev/loop0 mountedImage.img
sudo mkfs.vfat /dev/loop0
sudo losetup -d /dev/loop0
Para trabalhar com ferramentas mais confortáveis, você precisa de privilégios de root e reinicialização. O módulo de loop pode fornecer acesso a partições, mas isso é desativado por padrão. Para ativar esse acesso, edite /etc/default/grub
e altere a linha GRUB_CMDLINE_LINUX=""
para
GRUB_CMDLINE_LINUX="loop.max_part=15"
Se já existissem outras opções, deixe-as, claro; eles precisam ser separados por espaços e toda a cadeia de opções deve estar entre aspas duplas, por exemplo, GRUB_CMDLINE_LINUX="option=value anotheroption loop.max_part=15"
.
Agora, depois de particionar a imagem do disco, execute
sudo losetup /dev/loop0 mountedImage.img
sudo mkfs.vfat /dev/loop0p1
Execute losetup -d /dev/loop0
quando terminar de trabalhar com essa imagem.