文件传输利器Croc

概述

一般而言,Linux系统是没有用户界面的,所有操作都是在命令行里。

然后在安装搭建集群,如分布式的Hadoop集群时,经常需要在多个Server之间传输文件。两个server之间的文件传输,一般会想到FTP或SSH两种方式。使用FTP需要搭建FTP服务。使用SSH需学习SCP指令。

这里介绍一款传送过程既快速又安全,用Go语言写的工具Croc,GitHub

其优势如下:

  • 用Relay方式让任意两台电脑传送档案
  • 点对点加密(使用 PAKE)
  • 支持跨系统平台传送文件
  • 一次可以传送多个文件或整个目录
  • 支持断点续传
  • 不需要自行搭建服务器或使用 port-forwarding 相关技术
  • 优先使用IPv6,而IPv4 当作备用
  • 可使用 Socks5 proxy

使用

在一个传送端Server执行croc send file.txt命令行:

$ croc send ~/Downloads/data.csv  
Sending 'data.csv' (6.9 kB)  
Code is: cabinet-rodeo-mayday  
On the other computer run
croc cabinet-rodeo-mayday

自动产生一个 secret code,在另一台Server执行命令行:

$ croc cabinet-rodeo-mayday  
Accept 'data.csv' (6.9 kB)? (y/n) y  

支持自定义secret code:croc send --code appleboy ~/Downloads/data.csv

Relay Server

由于此工具是通过 relay server 方式来进行传送,所以指令会预设连到官方所搭建的服务器

// DEFAULT_RELAY is the default relay used (can be set using --relay)  
var (  
    DEFAULT_RELAY      = "croc.schollz.com"
    DEFAULT_RELAY6     = "croc6.schollz.com"
    DEFAULT_PORT       = "9009"
    DEFAULT_PASSPHRASE = "pass123"
)

部署一个Relay Server?执行命令:croc relay,会在当前主机多个端口启动TCP server。可指定单一Port:croc relay --ports 3001,在传送文件时也要换掉Relay Server:

$ croc --relay 127.0.0.1:3001 send ~/Downloads/data.csv  
Sending 'data.csv' (6.9 kB)  
Code is: saddle-origin-horizon  
On the other computer run
croc --relay 127.0.0.1:3001 saddle-origin-horizon

加上--relay 127.0.0.1:3001即可。

问题

securing channel. room not ready

从Linux服务器传输文件到Windows:
在这里插入图片描述
在这里插入图片描述
然后在Windows执行命令,报错:
在这里插入图片描述
怀疑是被公司的文件传输安全校验拦截住。

参考

posted @   johnny233  阅读(150)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示