Eu tenho o Ubuntu 16.04 host com o convidado do Ubuntu 17.10 no KVM (Virtual Machine Manager 1.3.2). Essa VM tem um HDD virtual bruto (/ dev / vdb) com capacidade de 10 GB.
Eu uso o dmsetup
util para criar 2 extensões de 5 GB cada deste disco:
dmsetup create disk0_extent0 --table '0 10485760 linear /dev/vdb 0'
dmsetup create disk0_extent1 --table '0 10485760 linear /dev/vdb 10485760
Como resultado, ocorre um erro:
device-mapper: create ioctl on disk0_extent0 failed: Device or resource busy
Command failed
No entanto, disk0_extent0
não pôde ser visto por lsblk
antes ou depois da operação. Além disso, tento excluir e excluir meta explicitamente:
dmsetup remove -f --retry /dev/mapper/disk0_extent0
(que me diz muitas vezes No storage object named disk0_extent0
)
dmsetup clear /dev/mapper/disk0_extent0
dmsetup wipe_table /dev/mapper/disk0_extent0
Mesmo que tudo pareça que não temos dispositivo ( lsblk
ainda não mostra isso), dmsetup
vê isso de maneira diferente:
# dmsetup info /dev/mapper/disk0_extent0
Name: disk0_extent0
State: ACTIVE
Read Ahead: 256
Tables present: LIVE
Open count: 1
Event number: 0
Major, minor: 253, 0
Number of targets: 1
A minha pergunta é: como limpar completamente o meta sobre o meu disco dmsetup e criar um novo com o seu nome? A virtualização desempenha algum papel?
UPD: embora eu não saiba onde ler seu significado, aqui está a saída detalhada:
# dmsetup remove -v -v -f /dev/mapper/disk0_extent0
dm version [ opencount flush ] [16384] (*1)
dm table disk0_extent0 [ opencount flush ] [16384] (*1)
dm reload disk0_extent0 [ opencount flush ] [16384] (*1)
Udev cookie 0xd4d34de (semid 2359297) created
Udev cookie 0xd4d34de (semid 2359297) incremented to 1
Udev cookie 0xd4d34de (semid 2359297) incremented to 2
Udev cookie 0xd4d34de (semid 2359297) assigned to RESUME task(5) with flags DISABLE_LIBRARY_FALLBACK (0x20)
dm resume disk0_extent0 [ opencount noflush skiplockfs ] [16384] (*1)
disk0_extent0: Stacking NODE_ADD (253,0) 0:6 0660 [trust_udev]
Udev cookie 0xd4d34de (semid 2359297) decremented to 1
Udev cookie 0xd4d34de (semid 2359297) waiting for zero
Udev cookie 0xd4d34de (semid 2359297) destroyed
disk0_extent0: Skipping NODE_ADD (253,0) 0:6 0660 [trust_udev]
Udev cookie 0xd4dea65 (semid 2392065) created
Udev cookie 0xd4dea65 (semid 2392065) incremented to 1
Udev cookie 0xd4dea65 (semid 2392065) incremented to 2
Udev cookie 0xd4dea65 (semid 2392065) assigned to REMOVE task(2) with flags DISABLE_LIBRARY_FALLBACK (0x20)
dm remove disk0_extent0 [ opencount noflush skiplockfs ] [16384] (*1)
device-mapper: remove ioctl on disk0_extent0 failed: Device or resource busy
Udev cookie 0xd4dea65 (semid 2392065) decremented to 1
Udev cookie 0xd4dea65 (semid 2392065) decremented to 0
Udev cookie 0xd4dea65 (semid 2392065) waiting for zero
Udev cookie 0xd4dea65 (semid 2392065) destroyed
Command failed
<backtrace>
Tags kvm ubuntu block-device