Debian 下的 vsftpd(Very Secure FTP Daemon)完全支持传输大文件,包括几 GB 甚至更大的文件,但是否能成功传输,取决于配置、文件系统、客户端和网络环境。下面把关键点说清楚。
✅ 支持
常见 /etc/vsftpd.conf 配置建议:
# 允许上传
write_enable=YES
# 关闭匿名上传
anonymous_enable=NO
# 本地用户登录
local_enable=YES
# 使用被动模式(大文件更稳定)
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
# 防止超时
idle_session_timeout=600
data_connection_timeout=600
# 不限上传/下载速度(可按需)
# anon_max_rate=0
# local_max_rate=0
✅ 默认情况下 vsftpd 没有文件大小限制
如果你上传的目录所在文件系统不支持大文件,就会失败。
| 文件系统 | 支持大文件 |
|---|---|
| ext4 | ✅ |
| xfs | ✅ |
| btrfs | ✅ |
| FAT32 | ❌(单文件最大 4GB) |
✅ Debian 默认 ext4,一般没问题
❌ 如果是 U 盘(FAT32)会失败
确认目标目录所在分区有足够空间:
df -h
有些 FTP 客户端对大文件支持不好,例如:
✅ 推荐客户端:
大文件传输时间长,容易因为:
建议:
| 现象 | 可能原因 |
|---|---|
| 上传到 4GB 失败 | FAT32 文件系统 |
| 上传中断 | 超时 / 被动端口未开 |
| 553 Could not create file | 权限不足 |
| 426 Transfer aborted | 网络 / 防火墙 |
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
idle_session_timeout=600
data_connection_timeout=600
重启服务:
systemctl restart vsftpd
✅ Debian + vsftpd 可以稳定传输大文件
✅ 只要注意:
如果你愿意,可以告诉我:
我可以帮你精确排查。