我有一个程序在写入某个文件时磁盘空间不足时可能会死掉,我不确定是否是这种情况。
我想运行它看看,但我的测试服务器不会很快用完空间。有什么办法可以 mock 这种行为吗?看起来没有任何方法可以在 Ubuntu 中设置文件夹/文件大小限制,并且设置用户配额将是一个过程(由于获得权限)
是否有测试这种情况的通用方法?
我正在运行 Ubuntu 12.04
最佳答案
创建一个你想要大小的文件(这里是 10MB)
dd if=/dev/zero of=/home/qdii/test bs=1024 count=10000
用这个文件做一个环回设备
losetup -f/home/qdii/test
在您想要的文件系统中格式化该设备
mkfs.ext4/dev/loopXXX
将它挂载到任何你想要的地方(
/mnt/test
应该存在)sudo mount/dev/loopXXX/mnt/test
将您的程序复制到该分区并进行测试
cp/path/my/program/mnt/test && cd/mnt/test && ./program
用创建的循环设备losetup
替换/dev/loopXXX
,用losetup -a
查找。
完成后,不要忘记:
- 使用
sudo umount/mnt/test
卸载。 - 在使用后清理循环设备,使用
losetup -D/dev/loopXXX
- 删除文件。
关于linux - 在 Linux 中测试磁盘空间不足,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16044204/