腾讯云Linux跨区跨服务器拷贝文件

2023-10-27 16:54:40 浏览数 (2)

现在才知道腾讯云不同区域间的服务器不能通过内网连接,云硬盘也不支持跨区挂载。我之前续费的20多年的云硬盘,因为和新买的服务器不是一个地区的不能直接挂载,所以只能拷贝资料销毁了。

这就遇到了一个问题,我的几个网站和备份文件怎么拷贝过来呢?问了一下腾讯云客服,说是可以使用“云联网”产品,实现多个云服务器见的内网联接。看了一眼带宽价格,劝退了。

好吧,那就采用最朴素的烹饪方式好了。

Linux 服务器跨区传输文件:

一些常见的工具和方法:

SCP(Secure Copy):

SCP 是基于 SSH(Secure Shell)的文件传输工具,它可以用于在不同服务器之间安全地复制文件。使用以下命令:

代码语言:javascript复制
scp /path/to/local/file user@remote-ip:/path/to/remote/directory

让后输入服务器的登陆密码,开始拷贝。

其中,/path/to/local/file 是本地文件的路径,user 是远程服务器的用户名,remote-ip 是远程服务器的 IP 地址,/path/to/remote/directory 是远程服务器上目标目录的路径。

这里是指把本地的 /path/to/local/file 文件拷贝到另一台服务器的 /path/to/remote/directory 目录。如果要从远程服务器拷贝文件到当前登陆服务器,可以执行如下命令:

代码语言:javascript复制
scp user@remote-ip:/path/to/remote/file /path/to/local/directory

注意:如果执行命令没有反应,可能是远程服务器的 SSH 端口没有开放,默认是 22 端口,如果你有修改 SSH 端口号,检查防火墙设置,放开对应的端口号。然后执行下面的命令,指定端口号连接:

代码语言:javascript复制
scp -P 22 user@remote-ip:/path/to/remote/file /path/to/local/directory

也可以添加 -v 参数,输出详细的调试信息:

代码语言:javascript复制
scp -v user@remote-ip:/path/to/remote/file /path/to/local/directory

以上命令是拷贝文件的,如果你要拷贝一个文件夹(整个目录),可以使用 -r 参数,递归复制:

代码语言:javascript复制
scp -r user@remote-ip:/path/to/remote/directory /path/to/local/directory
rsync:

rsync 是一个强大的文件同步工具,可以通过 SSH 进行安全的传输。使用以下命令:

代码语言:javascript复制
rsync -avz -e "ssh -i /path/to/private/key.pem" /path/to/local/file user@remote-ip:/path/to/remote/directory

这里,/path/to/private/key.pem 是本地私钥文件的路径。你可以通过 SSH 密钥来进行身份验证。

Sftp(Secure File Transfer Protocol):

SFTP 是通过 SSH 进行安全文件传输的协议。你可以使用 SFTP 客户端工具(例如 WinSCP、FileZilla)连接到远程服务器,然后直接进行文件传输。

云对象存储服务:

如果你的文件需要在不同区域之间传输,也可以考虑使用腾讯云的对象存储服务(例如 COS)。将文件上传到对象存储服务,然后在不同服务器之间使用 COS 提供的 API 进行文件传输。

无论选择哪种方式,都需要确保服务器之间有网络通信,并且相关端口没有被防火墙阻塞。同时,使用 SSH 相关的方法需要确保 SSH 密钥的正确配置。

未经允许不得转载:Web前端开发资源网 » 腾讯云Linux跨区跨服务器拷贝文件

0 人点赞