Crie um arquivo do tamanho que você gostaria que este disco rígido virtual fosse (o seguinte faz um arquivo 1Mx1024 ou 1GByte):
dd if=/dev/zero of=virtual_hard_drive.bin bs=1M count=1024
Crie um dispositivo de loop no lugar de /dev/sdb
mknod /dev/sdb b 7 500
Não, isso não funcionará se você já tiver um /dev/sdb
.
Você precisará alterar os 500 para outro número no caso extremamente improvável de ter um /dev/loop500
.
Agora, atribua seu arquivo a este dispositivo de loop
losetup /dev/sdb virtual_hard_drive.bin
Então agora você tem um arquivo agindo como um disco rígido, através do mecanismo de dispositivos de loop do Linux. Neste ponto, você deseja formatá-lo com mke2fs /dev/sdb
ou similar e montá-lo da maneira usual.
Para que isso funcione na inicialização, será necessária alguma edição dos scripts de tempo de inicialização, pois os scripts que verificam fstab
não transformarão /dev/sdb
em um dispositivo de loop na inicialização por conta própria.
Se você não precisa realmente de um volume, pode fazer algo como ln -s /dev/sdb /dev/full
para fazer com que /dev/sdb
"aponte para" o full
(ou zero
ou null
ou mesmo dvdrom
) dispositivos virtuais.