Jakiś czas temu byłem zmuszony do przenoszenia plików z mojego komputera testowego, który wtedy miał Ubuntu 11.10, w kierunku głównego, w którym używał Ubuntu LTS 10.04, aby móc wprowadzić pewne zmiany w partycjach pierwszej. Po eksperymentowaniu z wieloma metodami, z których niektóre nie działały, a inne, ale bardzo powoli, udało mi się znaleźć rozwiązanie, które przekonało mnie do bycia proste, niezawodne, a to pozwala osiągnąć naprawdę ogromne prędkości.
W przypadku tej metody będziemy musieli skorzystać z małego, bezpłatnego i bezpłatnego narzędzia o nazwie Obsada UDP. Można to znaleźć w oficjalnych repozytoriach większości dystrybucji (z wyjątkiem tych z Arch Linux, ale można go pobrać z AUR), więc po prostu instalujemy go stamtąd. Aby z niego skorzystać, musimy go zainstalować zarówno na komputerze, na którym będzie musiał wysłać pliki (Serwer) i gdzie je otrzymasz (klient).
UDP Cast nie ma interfejsu graficznego (i nie sprawdzałem, czy taki istnieje oprogramowanie podaj go), aby był używany z konsoli, ale jego użycie jest dość proste więc nawet jeśli nie podoba ci się wiersz poleceń, prawdopodobnie nie będziesz miał problemu z jego używaniem.
Startowy
Najpierw musimy upewnić się, że oba komputery są podłączone do sieci lokalnej. Następnie otwieramy konsolę na serwerze i wchodzimy do katalogu zawierającego plik lub folder, który mamy zamiar wysłać. Następnie robimy to samo na komputerze klienckim, uzyskując dostęp do katalogu, w którym zostaną zapisane pliki do odebrania (domyślnie są one zapisane w folderze użytkownika). W obu przypadkach polecenie do użycia będzie podobne do tego:
cd /directorio/cualquiera
Stąd polecenia różnią się w zależności od tego, czy zamierzamy wysłać pojedynczy plik, czy cały katalog.
Wysyłaj pojedyncze pliki
Aby wysłać pojedynczy plik, napiszemy to w konsoli serwera:
udp-sender -f archivo.zip
Gdzie file.zip Zastąpimy go nazwą pliku do wysłania wraz z jego rozszerzeniem, którym w tym przypadku byłby skompresowany plik ZIP.
Później z komputera klienckiego piszemy to:
udp-receiver -f archivo.zip
Zastępując oczywiście nazwę jeszcze raz. Kiedy to zrobimy, zobaczymy, że konsola odpowie komunikatem Naciśnij dowolny klawisz, aby rozpocząć odbieranie danych!; jak by to było przetłumaczone Naciśnij dowolny klawisz, aby rozpocząć odbieranie danych. Naciskamy dowolny klawisz, a plik zacznie się przesyłać.
Prześlij katalogi
Aby wysłać kompletne katalogi, musimy użyć tego polecenia:
tar cf - directorio | udp-sender
Gdzie katalog Zastąpimy go nazwą katalogu, który zamierzamy wysłać. Następnie na komputerze klienckim kopiujemy i wklejamy to polecenie w postaci (tutaj nie trzeba niczego wymieniać):
udp-receiver | tar xf -
Następnie pojawi się ten sam komunikat co w poprzednim przypadku i wciskamy dowolny klawisz, aby rozpocząć transfer.
Wnioski
Jak powiedziałem na początku wpisu, UDP Cast umożliwia przesyłanie plików z niesamowitą prędkościąPonieważ maksymalnie wykorzystuje potencjał transferowy, jaki jest w stanie rozwinąć sieć lokalna. O ile udało mi się to sprawdzić, najwyższe prędkości osiąga się, gdy oba komputery są podłączone do sieci kablem Ethernet, a dla przykładu przedstawiam następujące ujęcia:
W tym przypadku przesyłam folder o nazwie ISOS (który, jak możesz wywnioskować, zawiera pliki .iso dystrybucji, które pobieram do przetestowania), który znajdował się w katalogu Pliki do pobrania z mojego laptopa z Arch Linux, w kierunku katalogu Pliki do pobrania z komputera mojej matki, którego używa Debian.
Przy ponad 25 Mb / s oczywiście transfer zakończył się w bardzo krótkim czasie, więc już możesz to zweryfikować ta metoda jest idealna, gdy chcesz przesłać duże pliki lub foldery.
Na koniec należy zauważyć, że UDP Cast jest bardzo potężne narzędzie i oferuje funkcje, które wykraczają daleko poza przedstawione tutaj. Jeśli chcesz dowiedzieć się więcej o tym ciekawym narzędziu, radzę odwiedzić jego oficjalna strona.
I mówię z mojej ignorancji, czy nie byłoby łatwiej i wygodniej z sambą?
Próbowałem Samby i nie było to w pobliżu tych prędkości. Pamiętam, że zostawiłem go włączonego na całą noc i następnego ranka nie był nawet w połowie gotowy.
Dokładny.
Dobry post!
Użyłem go do transferu 3.5 GB, zrobiłem to z prędkością 82.24 Mb / s skończyłem w około 7 minut. Niesamowite!
Dzięki za udostępnienie oprogramowania
łatwy transfer z kimkolwiek po prostu za pomocą przeglądarki
http://jetbytes.com
więcej informacji:
http://www.visualbeta.es/9010/aplicaciones-web/jetbytes-transferir-archivos-de-manera-sencilla-incluso-a-traves-de-un-firewall/
Ten nie wiedział, będę musiał to udowodnić. 🙂
Ciekawa aplikacja, która jest przydatna, gdy jakaś popularna usługa jest blokowana przez jakiś fw. Konieczne byłoby poznanie jego portów. Ale wydaje mi się łatwiej z NFS.
Z NFS, najwyższa prędkość, jaką osiągnąłem, to około 4 Mb / s. Jak widać, osiąga około 6 razy więcej.
To może być to, czego potrzebuję. Muszę przenieść kilka GiB z laptopa na komputer stacjonarny, aby w pełni sformatować laptopa.
Spróbujmy.
PS: Czy program kompresuje to, co jest wysyłane u źródła i dekompresuje w miejscu docelowym?
Sam program nie kompresuje ani nie dekompresuje. To, co zrobił, to łańcuch poleceń.
tar cf - directorio | udp-sender
W ten sposób najpierw kompresuje katalog przy użyciu „tar”, a następnie wysyła go.
Dokładnie. 😉
Świetnie, dziękuję bardzo, już to testuję, najpierw z małymi ilościami i mało ważnymi rzeczami i działa doskonale!
Ze smołą, którą po prostu spakujesz, nie kompresuje się.
Aby skompresować, możesz użyć -z dla tar.gz lub -j dla tar.bz2 lub nawet -J dla tar.xz… Ostatnie dwa kompresują lepiej niż gzip
Ok, narzędzie jest dobrą opcją, ale uważam, że sshfs jest bardziej wydajne i bezpieczne.
sshfs jest ostatnią opcją, której powinieneś używać do wymiany plików i ograniczaj się do jej używania tylko wtedy, gdy operacje, które musisz wykonać, zasługują na zaszyfrowanie, ponieważ obciążenie, z jakim przeciąża maszynę, na której działa, jest DEMENTIALNE.
Otrzymujesz tę samą funkcję używając NFSv4 i jeśli chcesz, możesz połączyć ją z AutoFS, aby montować współdzielone zasoby tylko wtedy, gdy masz dostęp do wspomnianego zasobu.
Cóż, to narzędzie jest interesujące nie ze względu na osiągniętą prędkość transferu (80 Mbps / s), ale ze względu na swoją prostotę ...
Odnośnie szybkości transferu nie zauważyłem nic niezwykłego ... Biorąc pod uwagę, że maksymalna prędkość przesyłu w sieci 100 Mbps / s to dokładnie 100 Mbps / s, co odpowiadałoby około 12 Mb / s. Widzę normalne, że prędkości transmisji rzędu 85 lub 90 Mb / s są osiągane z udpcast, tak jak w przypadku Samby. Chociaż zależy to od używanego przez nas systemu operacyjnego (i jakości sieci fizycznej), na przykład w Debianie Lenny z Sambą nie osiągnął 5 lub 6 Mb / s, natomiast w SystemRescuecd osiągnął 8 lub 9 Mb / s.
Wkład jest dobry, ale do tego jest mityczny „scp”, który byłby bezpiecznym „cp” (tak, kopia) przy użyciu ssh.
Biorąc pod uwagę nazwę takiego oprogramowania, wyobrażam sobie, że używa protokołu UDP. Chociaż moja wiedza o sieciach nie jest super zaawansowana, jest zorientowana na brak połączenia (odpowiednik TCP) i sprawia, że myślę, że może powodować uszkodzenie plików, jeśli niektóre pakiety zostaną utracone z przyczyn X. To tak, jakby lepiej to zbadać.
Polecam scp, jest znacznie prostszy i jest wstępnie zainstalowany w każdej dystrybucji.
Oczywiście UDP jest znacznie szybszy niż TCP, ponieważ nie sprawdza danych, dlatego otrzymujesz takie szybkości transferu.
Aby sprawdzić, czy plik dotarł poprawnie, możesz wykonać sumę md5 lub inny skrót ...
Problem polegałby na tym, że jeśli wystąpiłby błąd w przesyłaniu, dane muszą zostać ponownie wysłane. W przypadku ważnych plików (takich jak kopie zapasowe) lepiej jest użyć innej metody przez TCP.
Podobnie jest nadal interesująco.
i…. nfs, jak rozumiem, jest rodzimym mechanizmem przesyłania plików w sieci między maszynami GNU / Linux
u mnie nie zadziałało, w każdym razie dzięki, ...
ale dociera do mnie dopiero przy 9.03 Mb / s: „c
Dla mnie to nie działa, dziwne, pozostaje tylko odbieranie i ta biedna rzecz z plikiem pdf
Linux ma wiele zalet i usług jako serwer, bardzo często spotyka się serwery w firmach z tym systemem operacyjnym, ze względu na koszty, stabilność i korzyści, jakie ma wolne oprogramowanie w porównaniu z niektórymi płatnymi systemami, które mają wady w tej dziedzinie technologii .
Innym dobrze znanym sposobem prostego udostępniania plików jest moduł serwera WWW Pythona, w folderze, w którym chcemy udostępnić, piszemy: $ python -m SimpleHTTPServer 8080, na maszynie, która ma odbierać pliki po prostu otwieramy przeglądarkę i umieszczamy ip + port, np: 192.168.0.3:8080 i vuala !!
Niedawno użyłem do tego zadania Dropy.
Nie znałem tej metody
Kurwa, udało mi się tą metodą 52Mb na sekundę, przenosząc z Raspberry Pi model BD:
Dziękuję bardzo, bardzo mi się podobało.
Czy wiesz, jak mogę tutaj publikować zdjęcia?
Powinienem napisać post, w którym będzie wskazywał jak instaluje się updcats w unixie, co za dobry post
Spełniło się! Nie chciałem konfigurować serwera NFS na coś szybkiego i brudnego. Pamiętaj, aby otworzyć porty, jeśli jesteś za zaporą.
Doskonały! Dziękuję Ci! Kopiowałem przez sambę i przerażało mnie to przy 20 KB/s