ubuntu

如何设置Ubuntu FTP服务器的磁盘配额

小樊
39
2025-04-20 11:26:46
栏目: 云计算

在Ubuntu上设置FTP服务器的磁盘配额,可以确保用户不会超出其分配的存储空间。以下是详细步骤:

1. 安装必要的软件包

首先,确保你已经安装了FTP服务器软件和磁盘配额工具。

sudo apt update
sudo apt install vsftpd quota

2. 配置FTP服务器

编辑VSFTPD配置文件以启用配额支持。

sudo nano /etc/vsftpd.conf

找到并修改以下行:

# 启用配额
quota_enable=YES
# 指定配额文件的位置
quota_file=/var/spool/vsftpd/quota.user
# 指定配额日志文件的位置
quota_logfile=/var/log/vsftpd/quota.log

保存并退出编辑器。

3. 启用配额支持

编辑/etc/fstab文件以启用配额支持。

sudo nano /etc/fstab

找到你的FTP用户的主目录所在的文件系统行,并在选项中添加usrquota,grpquota。例如:

/dev/sda1 /home ext4 defaults,usrquota,grpquota 0 2

保存并退出编辑器。

4. 重新挂载文件系统

重新挂载文件系统以应用配额设置。

sudo mount -o remount /home

5. 初始化配额数据库

初始化配额数据库。

sudo quotacheck -cum /home

6. 启动配额服务

启动配额服务并设置为开机自启。

sudo quotaon -vug /home
sudo systemctl enable quotaon

7. 配置用户配额

为特定用户设置配额。例如,为用户ftpuser设置100MB的软限制和120MB的硬限制。

sudo edquota -u ftpuser

在打开的编辑器中,设置以下内容:

Disk quotas for user ftpuser (uid 1000):
  Filesystem blocks soft hard inodes soft hard
/dev/sda1  10485760 10485760 12582912 0 0

保存并退出编辑器。

8. 验证配额设置

验证配额设置是否生效。

sudo quota -u ftpuser

你应该会看到类似以下的输出:

Disk quotas for user ftpuser (uid 1000):
  Filesystem blocks soft hard inodes soft hard
/dev/sda1  10485760 10485760 12582912 0 0

9. 重启FTP服务器

最后,重启VSFTPD服务以应用所有更改。

sudo systemctl restart vsftpd

现在,你的Ubuntu FTP服务器已经配置了磁盘配额,用户将无法超出其分配的存储空间。

0
看了该问题的人还看了