使用 tar + ssh 在 Linux 服务器间传输文件

2025-05-27 17:14

Linux 服务器之间传输文件主要有 scp rsync sftp tar + ssh。其中 sftp tar + ssh 较为常用。

  • sftp 可以使用 ftp 客户端,有图形化界面,交互比较方便。但大量小文件传输时,比较消耗时间。

  • tar + ssh 使用打包、压缩加 SSH,兼顾安全和速度。使用命令行操作。

传输命令

# 将当前目录的文件及文件夹传输至远程服务器,并设置文件的用户和用户组。使用 dd bs=1M 控制传输的数据块,加快传输速度(ssh 默认通常为 8 KB 或 64 KB)。
tar -cz --file - --owner 33 --group 33 . | dd bs=1M | ssh -p 2222 ujcms@192.168.1.100 "tar -xzf - -C /data/"
# 只传输将当前目录的某些文件及文件
tar -cz --file - --owner 33 --group 33 <file1> <dir1> <file2> <dir2> | dd bs=1M | ssh -p 2222 ujcms@192.168.1.100 "tar -xzf - -C /data/"

查看目录大小

在传输过程中,没有反馈信息,可以在接收文件的服务器查看目录大小,掌握文件传输情况:

# 实时统计当前目录大小,速度稍慢
du -sh
# 按磁盘分区统计,速度快。加 . 代表只统计当前所在分区
df -h .
下一篇: 没有了
0791-85271700
QQ咨询:1779755751
QQ交流群:626599871
微信咨询
微信扫码咨询
微信交流群
微信交流群
Powered by UJCMS © 2010-2025 All Rights Reserved
QQ咨询
电话
微信
微信扫码咨询