温馨提示×

怎样迁移ubuntu ftpserver文件

小樊
43
2026-09-02 12:12:24
栏目: 智能运维

在 Ubuntu 上“迁移 FTP Server 文件”通常有三种常见场景,下面分别说明,你可对号入座


一、迁移 FTP 用户数据(文件本身)

适用于:换服务器 / 重装系统 / 迁移目录

1. 找到 FTP 根目录

常见 FTP 服务器:

  • vsftpd/home/ftpuser/srv/ftp
  • proftpd / pure-ftpd:看配置文件中 DefaultRoot-u 参数

查看 vsftpd 配置:

grep -E "local_root|anon_root|user_sub_token" /etc/vsftpd.conf

2. 打包原文件

tar czvf ftpdata.tar.gz /home/ftpuser

3. 传输到新服务器

scp ftpdata.tar.gz user@newserver:/tmp/

4. 新服务器解压

tar xzvf /tmp/ftpdata.tar.gz -C /

⚠️ 注意权限:

chown -R ftpuser:ftpuser /home/ftpuser

二、迁移 FTP 账号与配置

适用于:保留用户、密码、权限

vsftpd(系统用户)

  • 用户是系统用户 → 直接迁移 /etc/passwd/etc/shadow(不推荐手动)
  • 更安全方式:
# 旧服务器
getent shadow ftpuser

新服务器重建用户并设密

vsftpd(虚拟用户)

迁移:

/etc/vsftpd/vsftpd_user.db
/etc/pam.d/vsftpd
/etc/vsftpd.conf

pure-ftpd

/etc/pure-ftpd/
/var/run/pure-ftpd/

三、整服务器迁移 FTP 服务

适用于:换机器

步骤

  1. 旧服务器:
apt list --installed | grep ftp
  1. 新服务器安装同版本 FTP 服务
  2. 拷贝:
  • 配置文件
  • 用户数据
  • 数据库(如有)
  1. 启动并测试:
systemctl restart vsftpd

四、推荐使用更稳妥方式(可选)

如果是大量文件迁移,建议:

  • rsync(保留权限/时间)
rsync -avz /home/ftpuser/ user@newserver:/home/ftpuser/
  • 或先停 FTP 再迁移,避免写入冲突

五、常见坑

❌ 权限不对 → 无法登录
❌ SELinux/AppArmor 限制
❌ 被动模式端口未开放
❌ 虚拟用户数据库未同步


如果你能告诉我:

  • 用的 哪种 FTP(vsftpd / proftpd / pure-ftpd)
  • 同机迁移 / 换服务器 / docker

我可以直接给你精确命令

0