qemu-nbd - QEMU 磁盘网络块设备服务器在 Debian 10.2 上失败
与 Debian 9.12 完美搭配。不再适用于 Debian 10.2。关于我可能做错了什么的任何建议?
modprobe nbd
qemu-nbd --connect /dev/nbd0 -f qcow2 /tmp/image.qcow2
# -----
qemu-nbd -d /dev/nbd0
modprobe -r nbd
最后它给出了以下错误消息:
modprobe: FATAL: Module nbd is in use.
它在 Debian 9.12 中的工作方式。(正确打开和关闭连接,而不留下打开的连接)。
在内存中打开了两个进程:[kworker/u9:0-knbd0-recv]和[knbd0-recv]
这两个进程在执行时应该关闭qemu-nbd -d /dev/nbd0
[编辑] 没有qemu-nbd
进程正在运行。在 /proc/partitions 中仍然可以看到 nbd 设备。
在dmesg
:
113.620404] nbd0: p1 p2 < p5 >
[ 117.767674] EXT4-fs (dm-10): mounted filesystem with ordered data mode. Opts: (null)
[ 156.688684] block nbd0: NBD_DISCONNECT
[ 156.688696] block nbd0: Disconnected due to user request.
[ 156.688697] block nbd0: shutting down sockets
[ 163.869378] blk_update_request: I/O error, dev nbd0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
这是我在 Debian 9.12 服务器中看到的具有相同 qcow2 映像文件的内容:
[181586.110052] block nbd0: NBD_DISCONNECT
[181586.110063] block nbd0: shutting down sockets
[181617.936407] nbd0: p1 p2 < p5 >
[181748.735336] EXT4-fs (dm-14): 6 orphan inodes deleted
[181748.735337] EXT4-fs (dm-14): recovery complete
[181748.755426] EXT4-fs (dm-14): mounted filesystem with ordered data mode. Opts: (null)
[181772.254622] block nbd0: NBD_DISCONNECT
[解决方案] 确保vgchange -a n nbdvg
在断开连接之前执行。
使用 LVM 时,请
vgchange -a n nbdvg
在断开连接之前执行:这是正确的顺序: