CentOS下设置限制文件夹大小

创建有配额的文件夹主要是利用Linux下的loop设备

Linux中有一种特殊的块设备叫loop device,这种loop device设备是通过影射操作系统上的正常的文件而形成的虚拟块设备。也就是说loop设备是一个虚拟设备,是用于把某个文件虚拟成一个磁盘介质设备的.关联之后对loop可以格式化,实际就是对关联文件进行某种操作,能够让这个文件像磁盘一样被mount,并且使用。

也可以理解成,循环设备可以把文件虚拟成块设备(block device),以便模拟整个文件系统,这样用户可以将其看作是硬盘驱动器,光驱或软驱等设备,并挂入当作目录来使用。

以下是创建配额文件夹的具体步骤:

1. 先用dd命令创建一个20M大小的配额文件

dd if=/dev/zero ibs=2M count=10 of=/usr/local/test.img

if=/dev/zero:表示输入文件为/dev/zero,也可以用/dev/null

ibs=2M: IBlockSize表示块大小为2M
of=/usr/local/test.img:输出文件

2. 将test.img文件与loop设备进行关联

losetup /dev/loop0 /usr/local/test.img

3. 在虚拟设备上创建文件系统,实际上是针对test.img的操作,因为已经将它关联给了/dev/loop0

mkfs /dev/loop0

4. 将文件设备挂载到目标文件夹上,就完成了文件夹(/usr/local/test02)的配额功能

mount /dev/loop0 /usr/local/test02

5. 不再使用时需要释放资源

umount /usr/local/test02

losetup -d /dev/loop0

6.把启动程序的命令添加到/etc/rc.d/rc.sysinit 文件中

脚本/etc/rc.d/rc.sysinit,完成系统服务程序启动,如系统环境变量设置、设置系统时钟、加载字体、检查加载文件系统、生成系统启动信息日志文件等

 

我们可以用losetup命令来查看已经在使用的loop block device 的数量。

 
losetup -a |wc -l

喜欢的话订阅一个呗~第一时间收到文章更新哟~

发表评论

电子邮件地址不会被公开。