Por que o tamanho do meu dispositivo de loop é 0?

1

Por que meu dispositivo de loop não tem 600G de tamanho?

$ fallocate --length 600G sysvol
$ sudo losetup --find sysvol
$ sudo losetup --all 
/dev/loop0: [0831]:13 (/.../sysvol)

$ sudo losetup --set-capacity /dev/loop0
$ sudo stat /dev/loop0
  File: ‘/dev/loop0’
  Size: 0               Blocks: 0          IO Block: 4096   block special file
Device: 5h/5d   Inode: 51          Links: 1     Device type: 7,0
    
por Jean Jordaan 07.05.2015 / 06:20

1 resposta

1

stat não é a ferramenta certa para investigar dispositivos de bloco.

Aqui está um exemplo do uso de --set-capacity :

root@maxim:~# blockdev --getsize64 /dev/loop0
0
root@maxim:~# dd if=/dev/zero of=/tmp/aaa.img count=10 bs=1M
10+0 записей получено
10+0 записей отправлено
скопировано 10485760 байт (10 MB), 0,00709284 c, 1,5 GB/c
root@maxim:~# blockdev --getsize64 /dev/loop0
0
root@maxim:~# losetup --find /tmp/aaa.img 
root@maxim:~# losetup -l
NAME       SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE
/dev/loop0         0      0         0  0 /tmp/aaa.img
root@maxim:~#
root@maxim:~# blockdev --getsize64 /dev/loop0
10485760
root@maxim:~# dd if=/dev/zero of=/tmp/aaa.img count=10 bs=1M oflag=append conv=notrunc
10+0 записей получено
10+0 записей отправлено
скопировано 10485760 байт (10 MB), 0,00771261 c, 1,4 GB/c
root@maxim:~# blockdev --getsize64 /dev/loop0
10485760
root@maxim:~# losetup --set-capacity /dev/loop0
root@maxim:~# blockdev --getsize64 /dev/loop0
20971520
root@maxim:~# 
    
por 07.05.2015 / 06:55