知用网
柔彩主题三 · 更轻盈的阅读体验

Linux系统之间迁移文件的几种实用方法

发布时间:2025-12-16 12:01:43 阅读:409 次

在日常使用Linux的过程中,经常需要把文件从一台机器搬到另一台。比如换服务器、备份数据、团队共享项目代码,这些场景都绕不开跨Linux系统传文件。其实方法不少,选对了事半功倍。

用scp命令最直接

scp是基于SSH的安全拷贝工具,几乎所有Linux系统都自带。只要知道目标主机的IP、用户名和密码,就能快速传输。

比如要把本地的config.txt发给远程服务器上的/home/user目录:

scp config.txt user@192.168.1.100:/home/user/

反过来,从远程拉文件回来也一样:

scp user@192.168.1.100:/home/user/data.zip ./

如果文件夹多,加上-r参数递归复制:

scp -r /home/user/project user@192.168.1.100:/backup/

rsync适合大文件或增量同步

要是传的是大文件夹,或者以后还要反复同步,rsync更合适。它能跳过没变的文件,只传差异部分,省时间又省带宽。

基本用法和scp类似:

rsync -avz /home/user/docs/ user@192.168.1.100:/backup/docs/

其中-a保留权限信息,-v显示过程,-z开启压缩。末尾斜杠有讲究:源路径加了斜杠,表示复制里面的内容;不加,就连同目录一起搬过去。

用sftp交互式操作

如果你不习惯命令行一口气输完,sftp提供了一个类似FTP的交互界面,可以登录后一个个操作。

sftp user@192.168.1.100

连接成功后,支持put上传、get下载,还能ls、cd浏览远程目录,适合少量文件手动搬运。

挂载远程目录当本地盘用

有时候不想来回拷,只想“直接访问”对方的文件,可以用SSHFS把远程目录挂载到本地。

先安装sshfs(Ubuntu/Debian下):

sudo apt install sshfs

然后创建一个挂载点并挂上:

mkdir ~/remote-server
sshfs user@192.168.1.100:/home/user ~/remote-server

现在打开~/remote-server,看到的就是远程机器的内容,像操作本地文件一样拖来拖去。用完记得卸载:

fusermount -u ~/remote-server

小贴士

无论用哪种方式,确保两台机器之间的SSH能通。如果频繁连接,可以配SSH密钥登录,免去每次输密码的麻烦。

另外,网络环境差的时候,建议用rsync或加-C参数开启scp的压缩功能,减少传输量。

这些方法各有适用场景,平时根据文件大小、频率和操作习惯选一个顺手的就行。