Transferir arxius de manera fàcil i ràpida entre ordinadors Linux

Transferir arxius entre ordinadors Linux

Fa un temps em vaig veure en la necessitat de transferir arxius des del meu ordinador de proves, que en aquells dies tenia Ubuntu 11.10, Cap a la principal, en la qual feia servir Ubuntu 10.04 LTS, Per poder fer alguns canvis en les particions de la primera. Després d'experimentar amb molts mètodes, alguns que no funcionaven i altres que sí que ho feien però molt lentament, vaig aconseguir trobar una solució que em va convèncer per ser senzilla, infal·lible i que permet arribar a velocitats realment tremendes.

Per a aquest mètode haurem de recórrer a una utilitat petita, gratuïta i lliure anomenada UDP Cast. Aquesta es troba en els repositoris oficials de la majoria de les distribucions (excepte en els de Arch Linux, Però es pot descarregar des AUR) Per la qual cosa simplement la instal·lem des d'aquí. Per poder utilitzar-la haurem de tenir-la instal·lada tant a l'ordinador que hi haurà d'enviar els arxius (servidor) Com en la que els rebrà (client ).

UDP Cast no compta amb interfície gràfica (i no he investigat si hi ha algun eSCADA que la proporcioni) de manera que s'utilitza la consola, però el seu ús és bastant senzill així que fins i tot si no us agrada la línia d'ordres segurament no tindràs problemes per utilitzar-la.

començant

Primerament haurem d'assegurar que les dues ordinadors estan connectades a la xarxa local. Després vam obrir una consola a l'ordinador servidor i vam entrar a directori que conté el fitxer o carpeta que anem a enviar. Després fem el mateix a l'ordinador client, accesando a directori on es guardaran els arxius que van a rebre (per defecte es guarden a la carpeta d'usuari). En tots dos casos la comanda a utilitzar serà semblant a aquest:

cd /directorio/cualquiera

A partir d'aquí les ordres varien depenent de si anem a enviar un arxiu individual o un directori complet.

Enviar arxius individuals

Per enviar un fitxer individual escriurem això a la consola de l'ordinador servidor:

udp-sender -f archivo.zip

on fitxer.zip el substituirem pel nom de l'arxiu a enviar juntament amb la seva extensió, que en aquest cas seria un arxiu comprimit en ZIP.

Posteriorment, des de l'ordinador client escrivim això:

udp-receiver -f archivo.zip

Substituint, per descomptat, el nom un cop més. A l'fer això veurem que la consola ens respondrà amb el missatge Press any key to start receiving data!; que traduït seria Prem qualsevol tecla per començar a rebre les dades. Pressionem la tecla que sigui i l'arxiu començarà a transferir.

Enviar directoris

Per enviar directoris complets hem de fer ús d'aquesta comanda:

tar cf - directorio | udp-sender

on directori el substituirem pel nom de directori que enviarem. Després, a l'ordinador client copiem i peguem aquesta comanda tal qual (aquí no cal substituir res):

udp-receiver | tar xf -

Llavors apareixerà el mateix missatge que en el cas anterior i pressionem una tecla qualsevol per començar la transferència.

Conclusions

Com vaig dir a l'inici de l'entrada, UDP Cast permet fer transferències d'arxius a una velocitat realment enorme, Ja que aprofita a el màxim tot el potencial de transferència que és capaç de desenvolupar la xarxa local. Fins on he pogut comprovar, les majors velocitats s'aconsegueixen quan ambdues ordinadors es troben connectades a la xarxa mitjançant cable Ethernet, I per a mostra els presento les següents captures:

UDP Cast enviant

En aquest cas estic transferint una carpeta anomenada ISOS (Que, com es pot deduir, conté els arxius .iso de les distros vau descarregar per provar) que es trobava en el directori Descàrregues de meu portàtil amb Arch Linux, Cap al directori Descàrregues de PC de la meva mare que fa servir Debian.

UDP Cast rebent

A més de 25 Mbps òbviament la transferència va acabar en molt poc temps, de manera que ja hauran pogut comprovar que aquest mètode és ideal per quan es necessita transferir arxius o carpetes de grans dimensions.

Finalment, cal assenyalar que UDP Cast és una eina molt potent i amb funcions que van molt més enllà d'entre aquí, Si volen conèixer més sobre aquesta interessant utilitat els aconsello visitar el seu lloc oficial.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   keopety va dir

    i dic jo des de la meva ignorància, no seria més fàcil i còmode amb samba?

    1.    Manuel de la Font va dir

      Vaig provar Samba i ni de lluny arribava aquestes velocitats. Recordo haver-lo deixat funcionant tota la nit i per al matí següent no anava ni a la meitat.

      1.    MSX va dir

        Exacte.
        Bon post!

    2.    Gaspar Marquez va dir

      El vaig fer servir per transferir 3.5 GB, ho va fer a una velocitat de 82.24 Mb / s va acabar en aproximadament 7 minuts. Impressionant!
      Gràcies per compartir el programari

    1.    Manuel de la Font va dir

      Aquest no el coneixia, hauré de provar-ho. 🙂

  2.   el rengo va dir

    Interessant aplicació, per aquí serveixi quan algun servei comú es trobi bloquejat per algun fw. Caldria conèixer els seus ports. Però em sembla més fàcil amb NFS.

    1.    Manuel de la Font va dir

      Amb NFS la major velocitat que he arribat ronda els 4 Mbps. Com veus, aquest aconsegueix al voltant de 6 vegades més.

  3.   Martin va dir

    Potser és el que estic necessitant. He de moure diversos GiB de la portàtil a la PC d'escriptori per formatar completament la portàtil.

    Anem a provar.

    PD: El programa comprimeix el enviat en origen i descomprimeix en destí?

    1.    rogertux va dir

      El programa en si no comprimeix ni descomprimeix. El que ha fet ell és encadenar ordres.
      tar cf - directorio | udp-sender
      D'aquesta manera primer comprimeix directori amb «tar» i després l'envia.

      1.    Manuel de la Font va dir

        Exactament. 😉

      2.    Martin va dir

        Genial, moltes gràcies, ja ho estic provant, primer amb poques quantitats i coses no molt importants i funciona excel·lent!

      3.    correcte va dir

        Amb tar només empaquetas, no comprimeix.

        Per comprimir podries fer servir -z per tar.gz o -j per tar.bz2 o fins i tot -J per tar.xz ... Els dos últims comprimeixen millor que gzip

  4.   sombraliure va dir

    Ok, l'eina és una bona opció, però em sembla mes eficient i segur sshfs.

    1.    MSX va dir

      sshfs és l'última opció que hauries usar per intercanviar arxius i només limitar-te a fer-lo servir si les operacions que debés realitzar mereixen estar encriptades ja que l'overhead amb el qual sobrecàrrega a la màquina en què s'està esjecutando és demencial.

      La mateixa funció la obtenés usant NFSv4 i si vols pots combinar-ho amb autofs perquè et muntanya els recursos compartits solament quan accedeixis a aquest recurs.

  5.   Sants va dir

    Doncs és interessant aquesta utilitat, no per la taxa de transferència aconseguida (80 Mbps / s), sinó pel senzilla ...

    Pel que fa a a l'taxa de transferència no he notat res fora del comú ... Tenint en compte que la velocitat màxima de transferència de en una xarxa de 100 Mbps / s és justament 100 Mbps / s, el que equivaldria a uns 12 Mb / s . Veig normal que s'assoleixin amb udpcast taxes de transferències de l'ordre dels 85 o 90 Mbps / s, a l'igual que s'assoleix amb Samba. Tot i que depèn de el sistema operatiu que utilitzem (i la qualitat de la xarxa física), per exemple en Debian Lenny amb Samba no arribo a 5 o 6 Mb / s en canvi amb SystemRescueCd arribo a 8 o 9 Mb / s.

  6.   Flaqué va dir

    Està bo l'aportació, però per això hi ha el mític 'scp' que vindria a ser un 'cp' (sí, copy) segur usant ssh.

    A més, donat el nom d'aquest programari, imagino que fa servir el protocol UDP. Si bé els meus coneixements de xarxes no són super avançats, el mateix és orientat a la no-connexió (en contrapartida amb TCP), i es em fa que pot generar corrupcions en els arxius si alguns paquets es perdessin per X motiu. N'hi ha per investigar-millor.

    Et recomano scp, és molt més senzill i ve preinstal·lat en qualsevol distro.

    1.    MSX va dir

      Claor, UDP és molt més ràpid que TCP perquè no realitza comprovació de dades, per això s'obtenen aquestes taxes de transferències.
      Per comprovar que l'arxiu va arribar correctament pots fer un md5sum o qualsevol altre hash ...

      1.    Joaquin va dir

        El problema seria que si hi ha un error en la transferència, s'han de tornar a enviar les dades. Per arxius importants (com còpies de seguretat) és millor fer servir un altre mètode per mitjà de TCP.

        Igualment no deixa de ser interessant.

  7.   alx741 va dir

    i .... nfs segons entenc és el mecanisme natiu de transferència d'arxiu en xarxa entre màquines GNU / Linux

  8.   jiko va dir

    no em funciono, gràcies d'igual forma, ...

  9.   lluito va dir

    però ami em arriba sol a 9.03 mbps: 'c

  10.   modem va dir

    No em funciona, rar, només es queda rebent i això q pobre amb un arxiu pdf

  11.   Dario - Servidors hp va dir

    Linux té molts avantatges i serveis com a servidor, és molt comú veure servidors en empreses amb aquest sistema operatiu, pel cost, l'estabilitat i els beneficis que té el programari lliure contra alguns Sistemes pagaments que tenen desavantatges en aquesta àrea de les tecnologies.

  12.   RudaMacho va dir

    Una altra forma molt coneguda per compartir arxius de forma simple és amb el mòdul de servidor web de Python, a la carpeta on aquesta el que volem compartir escrivim: $ python -m SimpleHTTPServer 8080, en la màquina que rebrà els arxius només obrim el navegador i col·loquem la ip + el port, P. ex: 192.168.0.3:8080 i vuala !!

  13.   mama21mama va dir

    fa poc usi dropy per aquesta tasca.

    no coneixia aquest mètode

  14.   Azureus va dir

    Collons, vaig aconseguir 52Mb per segon amb aquest mètode, transferint des d'una raspberry Pi model BD:
    Moltes gràcies, em va encantar.
    Saben com puc penjar fotos aquí?

  15.   Juan David va dir

    Hauria de fer un post on indiqui com s'instal·la updcats en unix, que bon post aquest

  16.   Yossi va dir

    ¡Va complir! No volia configurar un servidor NFS per a alguna cosa ràpid i brut. Recordin obrir els ports si estan després d'un tallafocs.

  17.   Fer B va dir

    Excel·lent! Moltes gràcies! Estava copiant per samba i m'estava tornant boig a 20 KB / s