百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

速览!Linux局域网5种文件传输法,一文解锁实操要点

csdh11 2025-03-24 15:24 16 浏览

在Linux系统的局域网环境中,顺畅传输文件是日常运维与数据交互的基础需求。本文将围绕多种文件传输方式,详细阐述其使用方法。

一、SCP(Secure Copy):基于SSH的安全复制

SCP借助SSH协议,实现不同Linux主机间安全的文件复制。

它的原理是利用SSH通道加密传输数据,保障文件在传输过程中的安全性。

1、从本地复制文件到远程主机

scp local_file user@remote_host:remote_directory
# 示例:将本地当前目录下的test.txt文件复制到远程主机192.168.1.100的/home/user目录下
scp test.txt user@192.168.1.100:/home/user

其中, local_file 是本地文件路径, user 是远程主机用户名, remote_host 为远程主机IP或域名, remote_directory 是远程主机上的目标目录。

2、从远程主机下载文件到本地

scp user@remote_host:remote_file local_directory
# 示例:从远程主机192.168.1.100的/var/log目录下下载syslog文件到本地当前目录
scp user@192.168.1.100:/var/log/syslog .

此命令中, remote_file 是远程主机上的文件路径, local_directory 是本地目标目录。

SCP使用简单,但大文件传输速度欠佳且不支持断点续传。

二、SFTP(Secure File Transfer Protocol):交互式安全传输

SFTP同样基于SSH协议,提供交互式文件传输环境。

它建立在SSH会话之上,继承了SSH的安全特性,如身份验证和数据加密。

1、连接远程服务器

sftp user@remote_host
# 示例:连接到远程主机192.168.1.100,用户名为user
sftp user@192.168.1.100

成功连接后,可用类似FTP的命令操作:

2、上传文件

put local_file
# 示例:上传本地当前目录下的backup.tar.gz文件到远程服务器
put backup.tar.gz

3、下载文件:

get remote_file
# 示例:从远程服务器下载config.txt文件到本地当前目录
get config.txt

SFTP交互性强,支持文件管理操作,但大文件传输效率有待提升。

三、NFS(Network File System):网络文件系统共享

NFS让网络内计算机共享文件系统,像访问本地文件一样访问远程文件。它通过远程过程调用(RPC)机制实现不同主机间的文件访问。

1、服务器端配置(以Ubuntu为例)

安装NFS服务:

sudo apt-get install nfs-kernel-server

编辑 /etc/exports 文件,添加共享目录,如:

/home/shared_directory 192.168.1.0/24(rw,sync,no_subtree_check)

上述配置允许 192.168.1.0/24 网段内主机读写/home/shared_directory 目录,配置完成后重启NFS服务:

sudo systemctl restart nfs-kernel-server

2、客户端挂载

sudo mount -t nfs remote_host:/home/shared_directory /mnt/nfs_share
# 示例:将远程主机192.168.1.100的/home/shared_directory目录挂载到本地/mnt/nfs_share目录
sudo mount -t nfs 192.168.1.100:/home/shared_directory /mnt/nfs_share

这里将远程主机的共享目录挂载到本地 /mnt/nfs_share 目录。NFS使用方便,但安全性需额外配置。

四、Rsync:高效的文件同步工具

Rsync能快速同步文件和目录,仅传输差异部分,支持断点续传。

它通过算法对比源文件和目标文件,确定需要传输的内容。

1、本地到远程同步目录

rsync -avz local_directory user@remote_host:remote_directory
# 示例:将本地的/data目录同步到远程主机192.168.1.100的/home/user/data目录
rsync -avz /data user@192.168.1.100:/home/user/data

2、远程到本地同步目录

rsync -avz user@remote_host:remote_directory local_directory
# 示例:从远程主机192.168.1.100的/backup目录同步到本地当前目录下的backup文件夹
rsync -avz user@192.168.1.100:/backup./backup

选项 -a 表示归档模式,保留文件属性; -v 为详细输出; -z 启用压缩传输 ,极大提升传输效率。

五、SAMBA:跨平台文件共享

SAMBA主要用于Linux与Windows系统间文件共享,也适用于Linux局域网。

它实现了SMB(Server Message Block)协议,使不同操作系统能相互访问共享资源。

1、安装与配置(以CentOS为例)

安装SAMBA:

sudo yum install samba

编辑 /etc/samba/smb.conf 文件,添加共享配置,如:

ini
[shared]
comment = Shared Directory
path = /home/shared
read only = no
guest ok = yes

上述配置创建名为 shared 的共享,路径为 /home/shared ,可读写且允许guest用户访问。配置完成后重启SAMBA服务:

sudo systemctl restart smb

2、在Linux客户端访问SAMBA共享(以Ubuntu为例)

sudo mount -t cifs //remote_host/shared /mnt/samba_share -o username=user,password=pass
# 示例:将远程主机192.168.1.100的shared共享挂载到本地/mnt/samba_share目录,用户名为user,密码为pass
sudo mount -t cifs //192.168.1.100/shared /mnt/samba_share -o username=user,password=pass

Linux局域网文件传输方式多样,每种都有独特优势与适用场景。

掌握这些实操,能灵活应对各类文件传输需求,提升工作效率。

相关推荐

NUS邵林团队发布DexSinGrasp基于强化学习实现物体分离与抓取统一

本文的作者均来自新加坡国立大学LinSLab。本文的共同第一作者为新加坡国立大学实习生许立昕和博士生刘子轩,主要研究方向为机器人学习和灵巧操纵,其余作者分别为硕士生桂哲玮、实习生郭京翔、江泽宇以及...

「PLC进阶」如何通过编写SCL语言程序实现物料分拣?

01、前言SCL作为IEC61131-3编程语言的一种,由于其高级语言的特性,特别适合复杂运算、复杂数学函数应用的场合。本文以FactoryIO软件中的物料分拣案例作为硬件基础,介绍如何通过SCL来实...

zk源码—5.请求的处理过程一(http1.1请求方法)

大纲1.服务器的请求处理链...

自己动手从0开始实现一个分布式 RPC 框架

前言为什么要自己写一个RPC框架,我觉得从个人成长上说,如果一个程序员能清楚的了解RPC框架所具备的要素,掌握RPC框架中涉及的服务注册发现、负载均衡、序列化协议、RPC通信协议、Socket通信、异...

MLSys’25 | 极低内存消耗:用SGD的内存成本实现AdamW的优化性能

AIxiv专栏是机器之心发布学术、技术内容的栏目。过去数年,机器之心AIxiv专栏接收报道了2000多篇内容,覆盖全球各大高校与企业的顶级实验室,有效促进了学术交流与传播。如果您有优秀的工作想要分享,...

线程池误用导致系统假死(线程池会自动销毁吗)

背景介绍在项目中,为了提高系统性能使用了RxJava实现异步方案,其中异步线程池是自建的。但是当QPS稍微增大之后却发现系统假死、无响应和返回,调用方出现大量超时现象。但是通过监控发现,系统线程数正常...

大型乘用车工厂布局规划(六大乘用车基地)

乘用车工厂的布局规划直接影响生产效率、物流成本、安全性和未来扩展能力。合理的布局应确保生产流程顺畅、物流高效、资源优化,并符合现代化智能制造和绿色工厂的要求。以下是详细的工厂布局规划要点:1.工厂布...

西门子 S7-200 SMART PLC 连接Factory IO的方法

有很多同学不清楚如何西门子200smart如何连接FactoryIO,本教程为您提供了如何使用西门子S7-200SMARTPLC连接FactoryIO的说明。设置PC和PLC之间的...

西门子博图高级仿真软件的应用(西门子博途软件仿真)

1.博图高级仿真软件(S7-PLCSIMAdvancedV2.0)S7-PLCSIMAdvancedV2.0包含大量仿真功能,通过创建虚拟控制器对S7-1500和ET200SP控制器进行仿真...

PLC编程必踩的6大坑——请对号入座,评论区见

一、缺乏整体规划:面条式代码问题实例:某快递分拣线项目初期未做流程图设计,工程师直接开始编写传送带控制程序。后期增加质检模块时发现I/O地址冲突,电机启停逻辑与传感器信号出现3处死循环,导致项目延期2...

统信UOS无需开发者模式安装软件包
统信UOS无需开发者模式安装软件包

原文链接:统信UOS无需开发者模式安装软件包...

2025-05-05 14:55 csdh11

100个Java工具类之76:数据指纹DigestUtils

为了提高数据安全性,保证数据的完整性和真实性,DigestUtils应运而生。正确恰当地使用DigestUtils的加密算法,可以实现数据的脱敏,防止数据泄露或篡改。...

麒麟KYLINIOS软件仓库搭建02-软件仓库添加新的软件包

#秋日生活打卡季#原文链接:...

Java常用工具类技术文档(java中工具类的作用)

一、概述Java工具类(UtilityClasses)是封装了通用功能的静态方法集合,能够简化代码、提高开发效率。本文整理Java原生及常用第三方库(如ApacheCommons、GoogleG...

软路由的用法(自动追剧配置)(软路由教学)

本内容来源于@什么值得买APP,观点仅代表作者本人|作者:值友98958248861环境和需求...