企业项目管理、ORK、研发管理与敏捷开发工具平台

网站首页 > 精选文章 正文

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

wudianyun 2025-03-28 22:16:36 精选文章 13 ℃

在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局域网文件传输方式多样,每种都有独特优势与适用场景。

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

Tags:

最近发表
标签列表