在Ubuntu上设置FTP服务器的磁盘配额,可以限制用户使用的磁盘空间。以下是详细的步骤:
首先,确保你已经安装了FTP服务器软件包,例如vsftpd。
sudo apt update
sudo apt install vsftpd
Ubuntu默认情况下不启用磁盘配额,你需要手动启用它。
/etc/fstab编辑/etc/fstab文件,添加usrquota和grpquota选项到文件系统挂载选项中。
sudo nano /etc/fstab
找到你的根文件系统(通常是/),并在挂载选项中添加usrquota,grpquota。例如:
UUID=your-uuid / ext4 defaults,usrquota,grpquota 0 1
保存并退出编辑器。
重新挂载文件系统以应用更改。
sudo mount -o remount /
安装quota包来管理磁盘配额。
sudo apt install quota
启动并启用配额服务。
sudo systemctl start quotaon
sudo systemctl enable quotaon
编辑/etc/fstab文件,确保在挂载选项中包含quota。
sudo nano /etc/fstab
找到你的根文件系统(通常是/),并在挂载选项中添加quota。例如:
UUID=your-uuid / ext4 defaults,usrquota,grpquota,quota 0 1
保存并退出编辑器。
创建配额文件。
sudo quotacheck -cum /
启用配额。
sudo quotaon -vug /
你可以使用edquota命令来设置用户的磁盘配额。
sudo edquota -u username
这将打开一个编辑器,允许你设置用户的软限制和硬限制。
你可以使用quota命令来查看用户的配额使用情况。
quota -u username
确保你的FTP服务器配置文件(例如/etc/vsftpd.conf)中没有禁用配额。
sudo nano /etc/vsftpd.conf
确保以下行没有被注释掉:
quota_enable=YES
quota_file=/var/spool/vsftpd/quota.user
quota_max_files=1000
quota_max_size=100M
保存并退出编辑器。
重启FTP服务器以应用更改。
sudo systemctl restart vsftpd
现在,你的FTP服务器应该已经配置了磁盘配额,并且用户将受到限制。