在项目的实施或者运维工作中,总会遇到服务器之间传输文件,有的人可能使用工具下载到本地然后使用工具上传,适用于数量比较小的数据;有的人可能直接用拷贝的方式来解决问题,当然这样也是可以的,但是有哪些机房可以让大家用设备拷贝的方式来转移数据呢,如果要求严格的公司,肯定不会让直接拷贝的,这样就受限制了吧;最好的是使用服务器之间的数据传递,有点很多,速度快,方便,不用准备外设等等,当然服务器之间传输也是有限制的,下面根据两台服务器之间的关系来选择不同方法。
一、两个ftp是否建立在同一台服务器?如果是,那么进入旧ftp共享的目录下,把东西拷贝到新的ftp共享目录下,拷贝方法有多种,在图形界面下的,可以用鼠标选择后复制和粘贴;在命令行下,可以执行 cp 命令 如,将aa文件夹下的所有东西拷贝到bb文件夹下,那么可以执行 cp /aa/*.* /bb/
二、如果两个ftp是建立在不同的服务器上,但都在一个机房,或者离的很近,那么,你可以用移动硬盘或其他存储设备,将旧ftp共享文件夹下的所有数据,利用移动存储设备拷贝到新的ftp共享文件夹下即可。
三、如果两个ftp是建立在不同的服务器上,但又不在一个地方,离的非常远,不便用移动设备拷贝,那么,你可以用下载旧ftp内容,再上传到新ftp上。如果可以从旧ftp服务器ssh到新ftp服务器,那么使用 scp 命令 ,将旧ftp共享文件夹中的数据,上传到新ftp服务器下即可。
设有两机,均为局域网,两机可相互通信无问题,中间无防火墙。
两机IP分别为:A:192.168.1.240 B:192.168.1.102
假设A,B机的SSH都允许root登录
设要把 A上的 /root/abc.zip 传到 B机并放到/abc目录,可以在A机上用命令
scp /root/abc.zip root@192.168.1.102:/abc/
若 SSH端口不是默认的22,比如,是端口1234 则加-P参数:
scp -P 1234 /root/abc.zip root@192.168.1.102:/abc/
也可以在B机上用命令:
scp root@192.168.1.240:/root/abc.zip /abc/
下面给出一个例子,希望你看得懂:
[root@localhost ~]# pwd
/root
[root@localhost ~]# ls
anaconda-ks.cfg ftpaccount install.log.syslog
backup.tar.gz install.log svn1.4.3
[root@localhost ~]# scp backup.tar.gz root@192.168.1.21:/tmp/
The authenticity of host '192.168.1.21 (192.168.1.21)' can't be established.
RSA key fingerprint is 4d:b4:e1:5b:80:8f:ea:df:0a:eb:dd:30:e7:00:07:90.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.21' (RSA) to the list of known hosts.
root@192.168.1.21's password: << 提示输入192.168.1.21的SSH密码
backup.tar.gz 100% 5120KB 1.3MB/s 00:04
[root@localhost ~]#