在 CentOS 上迁移 FTP 服务器(ftpserver),通常目标是从一台 CentOS 服务器把 FTP 服务、用户、数据和配置迁移到另一台 CentOS 服务器。下面以 vsftpd(最常见的 FTP 服务) 为例说明完整迁移步骤。
在源服务器执行:
rpm -qa | grep vsftpd
# 或
systemctl status vsftpd
如果是 vsftpd,按下面步骤;如果是 proftpd / pure-ftpd,思路类似。
cp -a /etc/vsftpd /etc/vsftpd.bak
tar czf vsftpd-conf.tar.gz /etc/vsftpd
scp vsftpd-conf.tar.gz root@目标IP:/root/
常见目录:
/var/ftp/home/ftpuservsftpd.conf 中 local_root)打包数据:
tar czf ftpdata.tar.gz /var/ftp
scp ftpdata.tar.gz root@目标IP:/root/
如果 FTP 使用系统用户:
getent passwd | grep ftp
迁移用户:
/etc/passwd、/etc/shadow、/etc/group 中相关行useradd 重建并同步密码⚠ 密码不能直接复制,建议重置或导出 shadow(不推荐)
如果使用 pam + db_load 虚拟用户:
/etc/vsftpd/vsftpd_virtual_users.db
/etc/pam.d/vsftpd
一起打包迁移即可。
yum install -y vsftpd
tar xzf vsftpd-conf.tar.gz -C /
tar xzf ftpdata.tar.gz -C /
chown -R ftpuser:ftpuser /var/ftp
systemctl enable vsftpd
systemctl start vsftpd
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload
setsebool -P ftp_home_dir on
restorecon -Rv /var/ftp
ftp localhost
# 或
ftp 目标IP
/etc/vsftpd/*.pem/home如果你能告诉我:
我可以给你更精确的迁移命令。