modprobe nbd 在 Debian 10.2 中未释放连接

modprobe nbd 在 Debian 10.2 中未释放连接

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进程正在运行。 nbd 设备仍然可以在 /proc/partitions 中看到。

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在断开连接之前执行。

答案1

使用 LVM 时,vgchange -a n nbdvg在断开连接之前执行:

这是正确的顺序:

modprobe nbd
qemu-nbd --connect /dev/nbd0 -f qcow2 /tmp/image.qcow2
# -----
vgchange -a n nbvg
qemu-nbd -d /dev/nbd0
modprobe -r nbd

相关内容