做配额的方法:
1,是用磁盘配额,但是虚拟用户好像没有好办法。只能应用于本地用户。与Vsftpd设置无关
2,文件夹限制大小,是占用的。这和Vsftpd没有关系
所以可以先把用户禁锢在自己工作目录里面,然后结合第2个方法
Linux下如何限制单个文件夹大小
需要root权限
创建一个指定大小的磁盘镜像文件:
dd if=/dev/zero of=/root/augusite/disk.img bs=2M count=10
这样就创建了一个大小为20M的磁盘镜像。
挂载为设备
losetup /dev/loop0 /root/augusite/disk.img
格式化设备
mkfs -t ext4 /dev/loop0
挂载为文件夹
mkdir /var/ftproot/mike
mount -t ext4 /dev/loop0 /var/ftproot/mike
这样/mnt/disk1这个文件夹只能使用20M的空间。
此时,/var/ftproot/mike最大的使用空间为20M
卸载方法:
先卸载文件夹
umount /var/ftproot/mike
卸载设备
losetup -d /dev/loop0
如果不再使用可以直接删除镜像文件
rm -f /root/augusite/disk.img
注意事项
如果loop0不可用可挂载到loop1/loop2/loop3等等。