我正在构建一个为用户提供一定数量磁盘空间的系统.我这样做的方式是:
>使用dd创建文件
>在文件中创建一个ext4文件系统
>挂载文件并告诉用户程序使用mountpoint作为其工作目录
我不想使用linux配额系统,因为我不希望用户成为本地系统用户.
上述工作正常,但由于用户没有使用所有的津贴,但是已经分配了全部津贴,因此浪费了空间.
是否有一个命令可以执行与dd相同但不一次分配整个文件的命令?所以我可以制作一个20gb的文件,当它挂载时会报告20gb的空间,但是它只会实际占用写入的内容?
解决方法
您可以使用dd的seek参数创建
sparse file:
dd if=/dev/zero of=filesystem.img bs=1k seek=1024M count=1
会创建一个文件,其大小可达1G,但只会占用必要的空间.