linux 系统配额管理功能,Linux磁盘配额的设置与检测(1)

本文帮助您了解 Linux 系统管理任务相关知识。对 Linux Professional Institute Certification 级别 1(LPIC-1)考试的资料准备有所帮助。下面我们就开始学习如何管理用户的磁盘配额。

概述

在本文中,了解如何管理用户的磁盘配额。学习:设置一个文件系统的磁盘配额

设置配额限制

检查配额

生成配额报告

除非有特殊说明,本文中的例子都使用 2.6.34 内核的 Fedora 13。您在其他系统上的结果可能有所不同。

本文帮助您准备 Linux Professional Institute's Junior Level Administration(LPIC-1)考试 101 中主题 104 下的目标 104.4。该目标的权值为 1。

先决条件

为了最有效地利用本系列中的文章,您应该具有基本的 Linux 知识,并需要准备一个 Linux 系统,用于练习本文介绍的命令。有时候不同版本的程序输出格式不同,因此您所得到的结果未必总是与这里所示的清单和图相同。

配额简介

配额允许您控制用户或者组织的磁盘使用。它能防止个体用户和组织使用文件系统中超过自己所允许的部分,或者造成系统完全拥堵。XFS 文件系统也支持项目配额,它限制了一个项目所能使用的空间大小,无论哪个用户在项目的目录树中创建文件。

配额必须由 root 用户或者有 root 权限的用户启用和管理。它们往往用于多用户系统,不常用于单一用户的工作站。

有 3 种不同的配额支持:

1、vfsold,或者版本 1 配额

2、vfsv0,或者版本 2 配额

3、xfs,XFS 文件系统上的配额

本文包括非 XFS 文件系统上的版本 2 配额和 XFS 文件系统上的 xfs 配额。请注意,LPI 101 考试以版本 2 配额为重点。

配额需要 2.4 内核之后引入的内核支持。2.6 内核也有您所需的支持。

XFS 配额往往是日志化的。内核 2.6.11 及以上版本支持日志化版本 2 配额。

测试设置

首先要说明本文使用的测试分区设置,这样您就能更好地理解部分例子。如果您已经理解了文件所有权和权限,也已经安装了配额包,那么您可以直接跳到 配额的启用 部分。参考 学习 Linux,101:LPIC-1 路线图,获得该系列提供更多命令详细信息的其他文章链接,本文此处只提供简单说明。

测试分区和用户

我们使用 110GB ext4 分区(/dev/sda7)和 40GB XFS 分区(/dev/sda8)来演示。它们分别安装在 /quotatest/ext4 和 /quotatest/xfs。

清单 1. 设置分区[root@echidna ~]# mkfs -t ext4 /dev/sda7mke2fs 1.41.10 (10-Feb-2009)Filesystem label=OS type: LinuxBlock size=4096 (log=2)Fragment size=4096 (log=2)Stride=0 blocks, Stripe width=0 blocks7159808 inodes, 28637862 blocks1431893 blocks (5.00%) reserved for the super userFirst data block=0Maximum filesystem blocks=4294967296874 block groups32768 blocks per group, 32768 fragments per group8192 inodes per groupSuperblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872Writing inode tables: doneCreating journal (32768 blocks): doneWriting superblocks and filesystem accounting information: doneThis filesystem will be automatically checked every 28 mounts or180 days, whichever comes first. Use tune2fs -c or -i to override.[root@echidna ~]# mkfs -t xfs /dev/sda8meta-data=/dev/sda8 isize=256 agcount=4, agsize=2622108 blks = sectsz=512 attr=2data = bsize=4096 blocks=10488429, imaxpct=25 = sunit=0 swidth=0 blksnaming =version 2 bsize=4096 ascii-ci=0log =internal log bsize=4096 blocks=5121, version=2 = sectsz=512 sunit=0 blks, lazy-count=1realtime =none extsz=4096 blocks=0, rtextents=0[root@echidna ~]# mkdir -p /quotatest/ext4[root@echidna ~]# mkdir -p /quotatest/xfs[root@echidna ~]# mount /dev/sda7 /quotatest/ext4[root@echidna ~]# mount /dev/sda8 /quotatest/xfs

在这个例子中,我们希望普通用户能够在新的文件系统中创建文件。这样创建,文件系统归 root 所有,一般用户不能在系统上创建文件或者目录。我们变更所有权,这样新的文件系统就由拥有名为 development 的专用组的用户 development 所有。我们变更权限,这样在 development 组中的用户就能够创建文件和目录。 清单 2 显示了我们如何设置所有权和权限。

清单 2. 变更测试分区的所有权和权限[root@echidna ~]# # Show default ownership and permissions[root@echidna ~]# ls -l /quotatest/total 4drwxr-xr-x. 3 root root 4096 Nov 18 22:43 ext4drwxr-xr-x. 2 root root 6 Nov 18 22:43 xfs[root@echidna ~]# # Change user and group ownership to development[root@echidna ~]# chown development:development /quotatest/*[root@echidna ~]# # Allow group members to create files and directories[root@echidna ~]# chmod g+w /quotatest/*[root@echidna ~]# ls -l /quotatest/total 4drwxrwxr-x. 3 development development 4096 Nov 18 22:43 ext4drwxrwxr-x. 2 development development 6 Nov 18 22:43 xfs[root@echidna ~]# # Set default group of new files and directories[root@echidna ~]# # to development[root@echidna ~]# chmod g+s /quotatest/ext4/[root@echidna ~]# ls -l /quotatest/total 4drwxrwsr-x. 3 development development 4096 Nov 19 11:39 ext4drwxrwxr-x. 2 development development 6 Nov 18 22:43 xfs

我们利用 3 位用户,ian、gretchen 和 tom,他们每人都拥有和用户名一样的专用组,同时也是 development 组的成员。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值