GNU/Linux >> Tutoriales Linux >  >> Linux

Transferir archivos y carpetas entre computadoras con Croc

Hay montones y montones de maneras de transferir archivos entre dos o más computadoras. Puede usar herramientas para compartir archivos basadas en servidor, aplicaciones para compartir archivos punto a punto, memorias USB, unidades de disco duro externas, SCP, NFS, FTP, HTTP, plataformas de almacenamiento en la nube y muchas más. Ya hemos cubierto algunas herramientas para compartir archivos. Hoy hablaremos sobre otra utilidad llamada Croc . Croc es una utilidad de línea de comandos que le permite transferir archivos y carpetas entre computadoras de manera fácil, rápida y segura.

La transferencia de datos con Croc es más rápida porque actúa como un servidor de retransmisión. entre los sistemas. Crea una capa de comunicación en tiempo real de dúplex completo entre las dos computadoras, por lo que las tareas de "carga" y "descarga" ocurren simultáneamente entre esas computadoras.

Croc proporciona cifrado de extremo a extremo mediante intercambio de claves autenticadas con contraseña (PAKE) biblioteca. Para aquellos que se preguntan, la biblioteca PAKE permite que dos personas generen una clave secreta fuerte usando una clave débil que ambos conocen de antemano. Esta clave secreta se utiliza luego para un mayor cifrado. Dado que la clave es conocida solo por el remitente y el receptor, nadie más puede conocer la clave secreta, incluso si conocen la contraseña original.

Croc puede transferir varios archivos a la vez entre computadoras. Si la transferencia de datos se interrumpe por algún motivo, puede reanudar la copia de archivos desde donde se dejó la última vez.

Dado que Croc usa retransmisión, no necesita un servidor central ni un reenvío de puertos. Es una aplicación multiplataforma, por lo que puede transferir los datos entre las plataformas Linux, Mac y Windows.

En pocas palabras, Croc hace lo siguiente:

  • transfiere datos entre dos ordenadores utilizando un relé,
  • proporciona cifrado de extremo a extremo utilizando la biblioteca PAKE,
  • transfiere múltiples archivos de una vez,
  • Reanuda la copia de archivos interrumpida,
  • No se necesita reenvío de puerto del servidor central necesario ,
  • ipv6-primero con respaldo ipv4,
  • requiere Cero dependencias,
  • plataforma cruzada,
  • gratis y de código abierto.

Croc está escrito en GO lenguaje de programación y disponible gratuitamente bajo licencia MIT.

Instalar Croc en Linux

Croc se puede instalar en cualquier distribución de Linux y Unix que admita Bash usando el siguiente comando:

$ curl https://getcroc.schollz.com | bash

Este comando instalará Croc en /usr/local/bin/ localización.

Si no desea inyectar algo directamente en su SHELL , puede descargar los binarios precompilados desde la página de lanzamientos e instálelos usando el administrador de paquetes de su distribución.

Por ejemplo, instalé el archivo deb de Croc en mi sistema Ubuntu usando los siguientes comandos:

$ sudo apt install gdebi
$ sudo gdebi croc_8.3.2_Linux-64bit.deb

Croc está disponible en la [Comunidad], por lo que puede instalarlo en Arch Linux y sus variantes usando pacman como a continuación:

$ pacman -S croc

En NixOS, ejecuta:

$ nix-env -i croc

Croc también está disponible como snap .

$ snap install croc

También puede compilar Croc desde la fuente si tiene instalado Go en su Linux sistema.

$ GO111MODULE=on go get -v github.com/schollz/croc/v8

Transferir archivos y carpetas entre computadoras con Croc

Asegúrese de haber instalado Croc en todos los sistemas.

Para transferir un archivo/carpeta usando Croc, simplemente ejecute:

$ croc send <file-or-folder-path>

Ejemplo:

$ croc send file.txt

Croc generará una frase de código aleatoria como a continuación.

Sending 'file.txt' (116 B)
Code is: slow-tomato-almond
On the other computer run

croc slow-tomato-almond

Aquí, la frase clave es slow-tomato-almond . La frase de código se utiliza para establecer un acuerdo de clave autenticado por contraseña (PAKE) que genera una clave secreta para que el remitente y el destinatario la utilicen para el cifrado de extremo a extremo.

Para recibir el archivo anterior en la otra computadora, el destinatario debe ingresar la última línea en el resultado anterior:

$ croc slow-tomato-almond

Presiona "y" y presiona enter para recibir el archivo.

Accept 'file.txt' (116 B)? (y/n) y

Receiving (<-192.168.225.37:9009)
file.txt 100% |████████████████████| (116/116 B, 32.966 kB/s) [0s:0s] ✔️

Salida de muestra:

Establecer frase de código personalizado

Como ya mencioné, Croc generará un código aleatorio cada vez que envíe un archivo o carpeta. También puede enviar archivos/carpetas con un código personalizado de su elección usando --code opción.

$ croc send --code download-this file.txt

Aquí, "download-this" es la frase clave.

Salida de muestra:

Sending 'file.txt' (116 B)
Code is: download-this
On the other computer run

croc download-this

El destinatario puede recibir el archivo usando el siguiente comando:

$ croc download-this

Enviar texto

Al igual que los archivos y las carpetas, también podemos compartir el texto. Esto puede ser útil cuando desea compartir un mensaje o URL.

Para enviar texto usando Croc, ejecuta:

$ croc send --text "Welcome to OSTechNix"

Salida de muestra:

Sending 'text' (20 B)
Code is: natural-roof-clock
On the other computer run

croc natural-roof-clock

Sending (->[fe80::a00:27ff:fe10:7cc1%wlp9s0]:39916)

El destinatario recibirá el texto con el siguiente comando:

$ croc natural-roof-clock
Accept 'text' (20 B)? (y/n) y

Receiving (<-[fe80::d710:cf4:bb49:8b20%enp0s8]:9009)
Welcome to OSTechNix

Usar tuberías

Puede canalizar la salida del archivo a croc como se muestra a continuación.

$ cat file.txt | croc send

Salida de muestra:

Sending 'stdin' (116 B)
Code is: dexter-cowboy-soprano
On the other computer run

croc dexter-cowboy-soprano

Croc usará automáticamente los datos de la entrada estándar y enviará y asignará un nombre de archivo como "croc-stdin-728899651".

En el extremo receptor, el usuario puede recibir el archivo usando cualquiera de los siguientes comandos:

$ croc dexter-cowboy-soprano

O, use:

$ croc --yes dexter-cowboy-soprano > out

Toma, --yes no pedirá ninguna confirmación y aceptará automáticamente todas las indicaciones.

Establecer carpeta de salida

De forma predeterminada, Croc descargará los datos en el directorio de trabajo actual. Puede hacer que use una ubicación de descarga diferente usando --out bandera.

$ croc send file.txt

Salida de muestra:

Sending 'file.txt' (116 B)
Code is: program-public-mystery
On the other computer run

croc program-public-mystery

En el extremo receptor, ejecute:

$ croc --out ~/Downloads

Introduzca la frase clave cuando se le solicite.

Obtener ayuda

Para obtener ayuda, ejecute:

$ croc --help
NAME:
   croc - easily and securely transfer stuff from one computer to another

USAGE:
   Send a file:
      croc send file.txt

   Send a file with a custom code:
      croc send --code secret-passphrase file.txt

VERSION:
   v8.3.2-7d155ad

COMMANDS:
   send     send a file (see options with croc send -h)
   relay    start your own relay (optional)
   help, h  Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --remember      save these settings to reuse next time (default: false)
   --debug         toggle debug mode (default: false)
   --yes           automatically agree to all prompts (default: false)
   --stdout        redirect file to stdout (default: false)
   --no-compress   disable compression (default: false)
   --ask           make sure sender and recipient are prompted (default: false)
   --relay value   address of the relay (default: "142.93.177.120:9009") [$CROC_RELAY]
   --relay6 value  ipv6 address of the relay (default: "[2604:a880:800:c1::14c:1]:9009") [$CROC_RELAY6]
   --out value     specify an output folder to receive the file (default: ".")
   --pass value    password for the relay (default: "pass123") [$CROC_PASS]
   --help, -h      show help (default: false)
   --version, -v   print the version (default: false)

Linux
  1. Cómo transferir archivos entre dos computadoras usando los comandos nc y pv

  2. Transfiera archivos y carpetas de forma segura entre computadoras usando Croc

  3. Compara archivos y carpetas gráficamente en Linux con Meld

  4. Cómo configurar el servidor SAMBA y transferir archivos entre Linux y Windows

  5. Cómo transferir archivos entre servidores en Linux usando SCP y FTP

Comparte archivos entre escritorios Linux con Warpinator

Transfiera archivos entre computadoras y dispositivos móviles escaneando códigos QR

Cómo transferir archivos entre Dropbox y Google Drive con Rclone en Linux

Linux busca cadenas en carpetas y archivos con ack

4 formas de transferir archivos entre sistemas remotos y locales a través de SSH

Cómo transferir archivos fácilmente entre escritorios Linux con Warp