我正在构build一个给用户一定量的磁盘空间的系统。 我这样做的方式是:
我不想使用Linux配额系统,因为我不希望用户是本地系统用户。
上面的工作很好,但是由于用户没有使用所有的津贴,所以浪费了空间,但是整个津贴已经被分配了。
有一个命令,可以做同样的事情,但不是一次分配整个文件? 所以我可以制作一个20GB的文件,挂载的时候会报告20GB的空间,但是只能实际上把写到的内容拿出来呢?
您可以使用dd的seek参数来创build一个稀疏文件 :
dd if=/dev/zero of=filesystem.img bs=1k seek=1024M count=1
会创build一个文件,可以达到1G的大小,但只会占用必要的空间。
看看稀疏文件 。
dd if=/dev/zero of=file.img bs=1 count=0 seek=1024M
创build一个1024Mb的稀疏文件,可以格式化并安装为文件系统。 关于稀疏文件的更多信息在这里使用。
在CentOS中,你可以使用如下的qemu工具;
qemu-img create -f raw the_filename 5G