- 嵌入式Linux开发技术
- 廖建尚等编著
- 947字
- 2022-05-06 19:03:52
2.2.4 文件传输工具
2.2.4.1 Linux常用传输命令
Linux服务器之间传输文件的方式有4种,具体内容如下:
(1)scp。scp是Secure Copy的简写,用来进行远程文件复制,其优点是简单方便、安全可靠;其缺点是不支持排除特定的目录。在使用scp传输方式时,实际的数据传输采用SSH协议,并且和SSH协议使用相同的认证方式,提供了相同的安全保证。scp的命令格式为:
![](https://epubservercos.yuewen.com/05A69C/23020642901652606/epubprivate/OEBPS/Images/42374_42_1.jpg?sign=1738987838-tIDS5SyeaMxXxO7TaO6wIr1y0akjRPg7-0-17bc3cba7861b5319963aad471516bf0)
例如,把本地的source.txt文件复制到192.168.0.10机器上的“/home/work”目录下,命令如下:
![](https://epubservercos.yuewen.com/05A69C/23020642901652606/epubprivate/OEBPS/Images/42374_42_2.jpg?sign=1738987838-utQ167DIxtJNFaSrJTeqOX5dOF4Gbsj5-0-ef025a5d3ab0e93c87539783f5dcfa42)
(2)rcp。rcp是Remote File Copy的简写,用来进行远程文件复制。在使用rcp传输方式时,目标主机需要事先打开rcp功能,并设置好rcp的权限,把源主机加入可信任主机列表中,否则源主机无法使用rcp将文件远程复制到目标主机。rcp命令格式为:
![](https://epubservercos.yuewen.com/05A69C/23020642901652606/epubprivate/OEBPS/Images/42374_42_3.jpg?sign=1738987838-1E58so3SfyCQPSrfaAeTN76PGk8ku12M-0-7cc88fd4dde1f3e2c5bced4405f3ae28)
命令中的每个文件或目录既可以是远程文件名,也可以是本地文件名。远程文件名的形式是“rname@rhost:path”,其中rname是远程用户名,rhost是远程主机名,path是这个文件的路径。例如,把本地的source.txt文件复制到serv001机器上的“/home/work”目录下,命令如下:
![](https://epubservercos.yuewen.com/05A69C/23020642901652606/epubprivate/OEBPS/Images/42374_42_4.jpg?sign=1738987838-es3oXvHkfuYAgp6UnaqN0Oh9mGJsF4ps-0-19e8327a72b1d06eeae039a050538328)
(3)wget。wget用于从远程主机将文件或文件夹下载到本地,要求远程主机需要支持FTP服务。wget的参数较多,使用时比scp复杂。wget是一个从网络上自动下载文件的传输方式,支持通过HTTP、HTTPS、FTP三种常见的TCP/IP协议,并可以使用HTTP代理。wget命令格式为:
![](https://epubservercos.yuewen.com/05A69C/23020642901652606/epubprivate/OEBPS/Images/42374_42_5.jpg?sign=1738987838-zBE1LmsObbnTnNl3ZtuHuHTaIYjxn6vl-0-54816c5a66384e93a07476bd4f918162)
例如,将文件source.txt从192.168.0.10下载到本地,命令如下:
![](https://epubservercos.yuewen.com/05A69C/23020642901652606/epubprivate/OEBPS/Images/42374_42_6.jpg?sign=1738987838-i6uLowAb8UYzyXqYzE9na3YYQphiLY1E-0-e598914fe91d5070584b6df3dc33a15e)
(4)rsync。rsync的操作类似于scp,支持排除指定的目录、支持限速参数、支持本地复制。rsync命令格式为:
![](https://epubservercos.yuewen.com/05A69C/23020642901652606/epubprivate/OEBPS/Images/42374_42_7.jpg?sign=1738987838-YiOX4SCJ5y91ocFuMnoVHNklfAgy7evW-0-c295824373af282b011399890ac5a84b)
例如,把本地的source.txt文件复制到192.168.0.10上的“/home/work”目录下,命令如下:
![](https://epubservercos.yuewen.com/05A69C/23020642901652606/epubprivate/OEBPS/Images/42374_43_1.jpg?sign=1738987838-YCoyxPZ2KvRMLETXCZifWZt9j0oEkHFr-0-f3f80bf63e633c409daee3a644bfd164)
2.2.4.2 FTP工具
文件传输协议(File Transfer Protocol,FTP)是互联网用来传输文件的协议,是为了能够在互联网上传输文件而制定的文件传输标准,规定了互联网是如何传输文件的。通过FTP协议,可以向FTP服务器上传文件或从FTP服务器下载文件。FTP工具有FLASHFXP、LEAPFTP、CuteFTP。
FTP工具具有下载和上传两个功能,要连上FTP服务器,就需要知道该FTP服务器的账号和密码,利用账号和密码可以连接到该FTP服务器。
2.2.4.3 Samba工具
Samba是在Linux和UNIX操作系统上实现服务器消息块(Server Messages Block,SMB)协议的一个软件。SMB由服务器程序及客户端程序构成,SMB是一种在局域网上共享文件和打印机的一种通信协议,为局域网内的不同主机之间提供了文件及打印机等资源的共享服务。
Samba既可以用于Windows与Linux之间的文件共享,也可以用于Linux与Linux之间的资源共享。由于NFS(网络文件系统)可以很好地完成Linux与Linux之间的数据共享,因而Samba常用于在Linux与Windows之间的数据共享。