标签:活性 gui 期望 根据 user ati may any logic
本文内容针对 Linux 系统。
如果需要限制很多不同的用户使用的存储空间,你需要的可能不是限制文件夹大小的方法,而是 LVM 。
参考资料:
http://www.tldp.org/HOWTO/LVM-HOWTO/ https://linux.die.net/man/8/lvm https://en.wikipedia.org/wiki/Logical_volume_management
所谓 LV, 是一种逻辑上的卷,相对应的是 PV (物理卷)。 由于是逻辑卷,卷的创建、删除和大小调整都有很大的灵活性。由于创建时可以指定卷的大小,自然就实现了限制文件总的大小的目的。
quota 的作用:
Quota allows you to specify limits on two aspects of disk storage: the number of inodes a user or a group of users may possess; and the number of disk blocks that may be allocated to a user or a group of users.
Quota 是限制某个用户或者某个用户组在某个文件系统下的使用量。
http://tldp.org/HOWTO/Quota.html https://linux.die.net/man/8/quotacheck
所以,通过Quota 来限制某个文件(夹)的大小,也是一种的间接的方法,用起来可能有点繁琐。如果一个文件系统是多个用户共享的,而你其实不希望限制这个用户在这个文件系统的使用量,只是想限制某个文件夹的使用量,你就需要新建一个用户或者用户组,给他们设定相应的quota, 专门用于限制这个文件夹。
loop 设备 (https://en.wikipedia.org/wiki/Loop_device) 是一种伪设备,通过 loop 设备,可以向访问 块设备一样来访问一个文件。 linux 下,默认可以使用的 loop 设备有 8个 (/dev/loop0 -> /dev/loop7) , 如果想使用更多的 loop 设备,可以修改系统配置,然后重启。
由于 loop 设备的底层存储设备实际是一个文件,所以,这个设备的大小自然就被该文件的大小限制了。具体步骤如下:
dd if=/dev/zero bs=10M count=500 of=./img-file.dat # 创建1个5G 的文件作为 loop 设备挂接的磁盘 losetup /dev/loop0 ./img-file.dat # 将 loop0 和 该文件关联 mkfs.xfs /dev/loop0 # 格式化 loop0, 文件系统自定,此处使用 xfs mount -t xfs -o rw,各种选项... /dev/loop0 /path/to/your/dir # 挂载 loop0 到你期望的目录路径 # 卸载 loop 设备 umount /path/to/your/dir # umount loop0 losetup -d /dev/loop0 # 卸载 loop0 挂接的磁盘 根据自己的需要决定是否删除之前和 loop0 关联的文件.
xfs_quota 是 xfs 文件系统内置的 quota 功能,对于 xfs 文件系统,这个方法绝对是控制文件夹大小的不二之选。 官网描述: http://xfs.org/docs/xfsdocs-xml-dev/XFS_User_Guide/tmp/en-US/html/xfs-quotas.html
xfs_quota 的优点在于,这个功能是 xfs 文件系统的内置功能,quota操作 和 文件读写具有同等地位,所以不仅可靠、准确,而且基本没有性能开销。
一个 xfs 文件系统的 quota 功能,必选在 mount 时指定。一个已经 mount 的 xfs 设备,是无法通过 mount -o remount 来修改 quote 配置的。
mount -t xfs -o rw,relatime,attr2,inode64,pquota /dev/your-dev /dir/path # 指定 pquota, 表示启用 project quota 功能 # 创建项目 echo 10:/dir/of/proj1 >> /etc/projects # 注意 project id 不能为0, id 为0 的project 不会受到任何容量限制 echo proj1:10 >> /etc/projid xfs_quota -x # 打开 xfs_quota 的交互式 shell xfs_quota> path Filesystem Pathname [000] / ... 001 /... /... 002 ... xfs_quota> path 002 # 选中需要 设置quota 的文件系统 xfs_quota> project -s proj1 # 建立项目 Setting up project proj1 (path ...)... xfs_quota> limit -p bhard=2g proj1 # 设置容量限制 xfs_quota> report # 查看设置结果
标签:活性 gui 期望 根据 user ati may any logic
原文地址:https://www.cnblogs.com/a-distant-bright-star/p/10738114.html