教你如何在Linux下轻松搞定跨服务器文件传输,超简单易上手!

在Linux下,跨服务器文件传输可以通过多种方式实现,包括使用SSH(Secure Shell)协议、NFS(Network File System)或Samba等。下面我将介绍如何使用这些方法进行简单的文件传输。

1. SSH

SSH是一种安全的远程登录协议,允许用户通过加密的通道连接到另一台计算机。当你需要从一台服务器传输文件到另一台服务器时,可以使用SSH来建立安全连接。

步骤:

– 安装SSH客户端。对于基于Debian的系统(如Ubuntu),可以使用`apt-get install openssh-client`;对于基于RHEL的系统(如CentOS),可以使用`yum install openssh-client`。

– 配置SSH密钥对。在源服务器上创建SSH密钥对,并将公钥添加到目标服务器的`~/.ssh/authorized_keys`文件中。这样,当使用SSH进行身份验证时,不需要密码即可登录。

– 使用SCP命令传输文件。在终端中输入以下命令,将文件从源服务器复制到目标服务器:

bash

scp [source_file] [target_user@] [target_server]:[destination_path]

例如:

bash

scp /home/user/documents/file.txt user@remote_server:/var/www/html/files/

– 使用SFTP命令传输文件。SFTP是SSH的文件传输协议,提供了与SCP类似的功能,但支持更多高级选项。

bash

sftp [target_user@] [target_server]:[destination_path]

例如:

bash

sftp user@remote_server

cd /var/www/html/files/

put file.txt

exit

2. NFS

NFS(Network File System)是一种网络文件共享协议,允许网络上的计算机访问其他计算机上的文件和目录。

步骤:

– 安装NFS服务。在源服务器上运行`sudo systemctl enable nfs`以启用NFS服务。

– 配置NFS挂载点。在目标服务器上创建一个挂载点,例如`/mnt/nfs`,并设置其权限为`rw`。

– 使用NFS挂载文件。在目标服务器上使用`mount -t nfs [server_ip]:[port] [username]@[server_name]:[path]`命令挂载NFS挂载点。例如:

bash

mount -t nfs 192.168.1.100:/export/home /mnt/nfs

– 访问NFS挂载点。在目标服务器上使用`cd /mnt/nfs`进入NFS挂载点,然后使用`ls`或`cat`命令查看文件。

3. Samba

Samba是一个开源的网络服务套件,用于在内共享文件和打印机。它提供了类似于NFS的功能,但更加简单易用。

步骤:

– 安装Samba。在源服务器上运行`sudo apt-get install samba`。

– 配置Samba共享。编辑`/etc/samba/smb.conf`文件,添加或修改共享设置。例如,添加一个共享文件夹:

ini

[share]

comment = My Share

browseable = yes

read only = no

valid users = @mydomain

path = /path/to/share

create mask = 0755

directory mask = 0755

– 测试Samba共享。在目标服务器上运行`testparm`检查配置文件语法是否正确。然后使用`smbclient`命令测试共享:

bash

smbclient -L \\\\192.168.1.100\root -U myusername //mydomain/share

– 使用Samba访问共享。在目标服务器上使用`smb://192.168.1.100/root/share`访问共享文件夹。

以上是三种常见的跨服务器文件传输方法。根据你的具体需求和环境,可以选择最适合的方法进行操作。