在CentOS上为FTP服务器设置磁盘配额,可以通过以下步骤实现:
首先,确保你的CentOS系统已经安装了quota和xfsprogs(如果你使用的是XFS文件系统)。如果没有安装,可以使用以下命令进行安装:
sudo yum install quota xfsprogs
编辑/etc/fstab文件,为需要启用配额的文件系统添加usrquota和grpquota选项。例如,如果你的FTP数据存储在/home/ftp目录下,并且该目录挂载在/dev/sda1上,可以这样修改:
/dev/sda1 /home/ftp xfs defaults,usrquota,grpquota 0 2
保存并退出编辑器后,重新挂载文件系统以应用更改:
sudo mount -o remount /home/ftp
使用quotacheck命令初始化配额数据库:
sudo quotacheck -cum /home/ftp
-c:创建配额数据库文件。-u:为每个用户生成配额记录。-m:为每个组生成配额记录。启动配额服务并设置为开机自启:
sudo systemctl start quotaon
sudo systemctl enable quotaon
使用edquota命令为用户设置配额。例如,为用户ftpuser设置软限制为100MB,硬限制为120MB:
sudo edquota -u ftpuser
在打开的编辑器中,设置以下内容:
Disk quotas for user ftpuser (uid 1001):
  Filesystem blocks soft hard inodes soft hard
/dev/sda1       10485760 10485760 12582912    0    0
blocks:磁盘块数,1MB = 1024 * 1024 blocks。inodes:inode数,根据需要设置。保存并退出编辑器。
如果你需要为组设置配额,可以使用edquota命令:
sudo edquota -g ftpgroup
在打开的编辑器中,设置以下内容:
Disk quotas for group ftpgroup (gid 1002):
  Filesystem blocks soft hard inodes soft hard
/dev/sda1       20971520 20971520 25165824    0    0
保存并退出编辑器。
使用quotaon命令重新启用配额,并使用quota命令查看用户的配额使用情况:
sudo quotaon -v /home/ftp
quota -u ftpuser
你应该能够看到用户的磁盘使用情况和配额限制。
通过以上步骤,你就可以在CentOS上为FTP服务器设置磁盘配额了。