迁移 Debian 上的 FTP 服务器文件,通常包含用户数据(FTP 目录文件)、FTP 服务配置、以及(如有)用户账户与权限。下面按常见场景给你一套清晰做法。
Debian 常见 FTP 服务:
先确认:
dpkg -l | grep -E "vsftpd|proftpd|pure-ftpd"
常见位置:
/srv/ftp/home/ftp/var/www/ftp/home/username查看配置确认:
# vsftpd
cat /etc/vsftpd.conf | grep -E "local_root|anon_root|chroot"
# proftpd
cat /etc/proftpd/proftpd.conf | grep -i "DefaultRoot"
tar czpf ftpdata.tar.gz /srv/ftp
scp ftpdata.tar.gz user@new-server:/tmp/
tar xzpf /tmp/ftpdata.tar.gz -C /
⚠️ 注意保持权限:
chown -R ftpuser:ftpgroup /srv/ftp
原服务器:
/etc/vsftpd.conf
/etc/vsftpd/
复制并覆盖到新服务器:
scp /etc/vsftpd.conf new-server:/etc/
新服务器:
systemctl restart vsftpd
迁移:
# 原服务器
getent passwd ftpuser >> /etc/passwd
getent shadow ftpuser >> /etc/shadow
getent group ftpgroup >> /etc/group
或整体迁移(更安全):
tar czpf ftpusers.tar.gz /etc/passwd /etc/shadow /etc/group
⚠️ 注意 UID/GID 一致性,否则权限会乱。
迁移:
/etc/pam.d/vsftpd/etc/vsftpd/virtual_users.db)ufw allow 20,21/tcp
ufw allow 40000:50000/tcp # 被动模式
pasv_min_port=40000
pasv_max_port=50000
ftp localhost
# 或
lftp ftp://user@localhost
检查:
如果你告诉我:
我可以给你精确命令版迁移方案。