如何轻松上传本地文件到远程服务器

在Linux系统中上传文件有多种方法,具体取决于使用场景(本地/远程)、技术偏好(命令行/图形界面)及目标服务器类型,以下是详细指南:


命令行工具(高效且强大)

SCP(基于SSH的安全传输)

适用场景:本地与远程服务器间加密传输
步骤

# 上传整个目录(加 -r 参数)
scp -r /本地/目录/ 用户名@远程IP:/远程/目录/

示例

scp ~/documents/report.txt user@192.168.1.10:/home/user/uploads/

SFTP(交互式安全传输)

适用场景:需交互式操作远程文件
步骤

sftp 用户名@远程IP        # 连接服务器
put /本地/文件路径        # 上传单个文件
put -r /本地/目录         # 上传目录
exit                     # 退出

Rsync(增量同步)

适用场景:大文件或需增量备份
命令

rsync -avz /本地/目录/ 用户名@远程IP:/远程/目录/

参数说明

  • -a:归档模式(保留权限)
  • -v:显示进度
  • -z:压缩传输

图形界面工具(适合桌面用户)

文件管理器(GNOME/KDE等)

  • 操作步骤
    1. 打开文件管理器(如Nautilus、Dolphin)
    2. 地址栏输入:
      • FTP:ftp://用户名@服务器IP
      • SFTP:sftp://用户名@服务器IP
    3. 输入密码后,拖放文件到目标目录

FileZilla(跨平台FTP客户端)

步骤

  1. 安装:sudo apt install filezilla(Debian/Ubuntu)
  2. 打开后输入:
    • 主机:sftp://服务器IP(推荐SFTP协议)
    • 用户名/密码
  3. 左侧选本地文件,右侧拖入远程目录

网络工具(HTTP/FTP场景)

cURL(HTTP/FTP上传)

适用场景:API接口或FTP服务器
示例命令

# 通过FTP上传
curl -T 本地文件.txt ftp://服务器IP/路径/ --user 用户名:密码
# 通过HTTP POST上传
curl -F "file=@本地文件.jpg" http://网站.com/upload

FTP命令(基础FTP客户端)

步骤

ftp 服务器IP          # 连接
> 输入用户名/密码
> put 本地文件.txt    # 上传文件
> mput *.png         # 批量上传
> bye                # 退出

云存储工具

AWS S3

aws s3 cp 本地文件 s3://桶名/路径/

Rclone(支持30+云服务)

rclone copy /本地/文件 远程配置名:桶名/路径

安全注意事项

  1. 优先加密协议
    • SCP/SFTP 替代 FTP(明文传输风险)。
  2. 密钥认证
    • 使用SSH密钥登录:scp -i ~/.ssh/密钥.pem 文件 用户@IP:/路径
  3. 权限管理
    • 检查远程目录权限:chmod 700 目录(仅所有者可写)

方法选择建议

场景 推荐工具
快速传小文件 SCP
大文件/增量备份 Rsync
交互式操作 SFTP/FileZilla
网页API上传 cURL
云存储 AWS CLI/Rclone

引用说明

  • OpenSSH文档:man scp, man sftp
  • Rsync官方指南:https://rsync.samba.org/documentation.html
  • cURL用例:https://curl.se/docs/manpage.html
  • 安全实践参考:NIST SP 800-123(服务器安全配置)

版权声明:本文基于Linux开源工具文档及行业最佳实践整理,转载请注明原始技术来源。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/4440.html

(0)
酷番叔酷番叔
上一篇 2025年6月14日 05:58
下一篇 2025年6月14日 06:30

相关推荐

  • 你知道吗?90%的人不知道的真相?

    前提条件安装GCC编译器Linux默认不包含C编译器,需安装GCC(GNU Compiler Collection):sudo apt update && sudo apt install gcc # Debian/Ubuntusudo yum install gcc # CentOS/RHEL……

    1天前
    300
  • 如何定位Python编译安装路径?

    在Linux系统中卸载Python需要谨慎操作,尤其是系统自带的Python版本(通常为python3.x或python2.7),错误卸载可能导致系统组件崩溃,因为许多核心工具(如apt、yum、gnome等)依赖Python环境,以下为安全卸载指南,强烈建议仅卸载用户手动安装的版本,并避免触碰系统默认Pyth……

    2025年7月12日
    1100
  • fallocate失败如何用dd创建swap?

    在Linux系统中,虚拟内存通过交换空间(Swap Space)实现,当物理内存(RAM)不足时,系统会将部分闲置数据转移到交换区,避免进程崩溃,以下是增加虚拟内存的详细步骤:检查现有交换空间free -h # 查看内存和交换空间使用情况swapon –show # 显示已激活的交换分区/文件创建交换文件(推……

    2025年6月16日
    1300
  • Linux如何彻底卸载JDK?

    在 Linux 系统中卸载 JDK(Java Development Kit)需要根据安装方式选择对应方法,以下是针对不同安装场景的详细步骤,操作前请务必备份重要数据,并确保拥有管理员权限(使用 sudo),卸载前的准备工作确认已安装的 JDK 版本终端执行以下命令查看已安装的 Java 环境:java -ve……

    2025年6月28日
    1700
  • 如何安全下载Linux内核源代码?

    使用包管理器下载(推荐)此方法通过系统自带的包管理工具获取内核源码,自动处理依赖和版本匹配,适合大多数用户,步骤:更新软件包列表确保本地仓库信息最新:sudo apt update # Debian/Ubuntusudo dnf update # Fedora/CentOS Streamsudo yum upd……

    5天前
    700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信