我有一个用 Python 2 编码的管理 USB 密钥的服务(格式化、挂载/卸载、读/写、检查空间)。该服务调用系统来管理设备(挂载/卸载、mkfs、状态)并监视/proc/mounts
以检查挂载状态。
有一些测试可以检查服务行为,但如果没有真正的 USB 密钥,我无法测试服务,但这对 Jenkins 从属服务器来说是一个问题。
我尝试安装循环设备,但这项技术需要修改服务来管理这个特定的设备。
- 您是否知道一些创建充当 USB 密钥的虚拟设备的技术?
- 您知道如何测试这种服务吗?
答案1
阅读有关的文章Linux-USB Gadget API框架,我找到了一种使用循环设备挂载设备的方法,就像它是 USB 密钥一样(这里):
创建虚拟驱动器:
fallocate -l 128M /tmp/virtual_drive.img
将其附加为循环设备:
sudo losetup -o512 /tmp/virtual_drive.img /dev/loop0
然后该虚拟设备将按原样被服务使用。