Was ist bei zwei Linux-Boxen in einem LAN der einfachste Weg, Dateien zwischen ihnen zu übertragen?
Was ist bei zwei Linux-Boxen in einem LAN der einfachste Weg, Dateien zwischen ihnen zu übertragen?
Antworten:
Ich benutze scp
.
scp source desthost:/path/to/dest/.
um vom lokalen Rechner auf den entfernten Rechner zu kopieren, oder
scp srchost:/path/to/file/file .
Kopieren von einem Remote-Computer auf den lokalen Computer.
Wenn der Benutzername auf dem Remotecomputer nicht identisch ist,
scp user@srchost:/path/to/file/file .
scp
oder rsync
für mich.
nfs könnte nützlich sein.
Das Network File System (NFS) ermöglicht einem Clientknoten den transparenten Dateizugriff über das Netzwerk. Durch die Verwendung von NFS verarbeitet ein Clientknoten Dateien, die sich auf einer Vielzahl von Servern und Serverarchitekturen sowie auf einer Vielzahl von Betriebssystemen befinden. Dateizugriffsaufrufe auf dem Client (z. B. Leseanforderungen) werden in NFS-Protokollanforderungen konvertiert und über das Netzwerk an das Serversystem gesendet.
Möglicherweise benötigen Sie Hilfe von Ihrem Unix-Administrator, um es zum ersten Mal einzurichten, aber es ist sehr nützlich.
Für einmalige Dateiübertragungen verwende ich normalerweise SFTP oder eine vorhandene Samba-Freigabe.
Ich empfehle, dass Sie rsync oder unisono (für die 2-Wege-Synchronisation) verwenden, um die Synchronisation aufrechtzuerhalten.
Bearbeiten: scp
wäre dann besser sftp
, da es auf allen SSH-fähigen Hosts funktionieren würde
Für Backups verwende ich oft rsync. Wenn ich ein Backup auf einem Remote-Computer durchführen möchte, füge ich eine Zeile in / etc / fstab ein, damit der Remote-Computer weiterhin von NFS oder CFIS (Samba) gemountet wird.
192.168.0.101:/ /mnt/backup nfs rsize=8192,wsize=8192,timeo=14,intr 0 0
Dann habe ich eine Zeile in meiner Crontab mit rsync.
rsync -av /home/user/sourcedir/ /mnt/backup/destinationdir > /home/user/backup.log
Netcat ist einfach, aber nicht alle Versionen schließen zuverlässig Verbindung.
Hier ist ein Thread über die Verwendung von socat
:
socat zuverlässige Dateiübertragung über TCP
Etwas zusammenfassen:
Server Sendedatei:
server$ socat -u FILE:test.dat TCP-LISTEN:9876,reuseaddr client$ socat -u TCP:127.0.0.1:9876 OPEN:out.dat,creat
Server-Empfangsdatei:
server$ socat -u TCP-LISTEN:9876,reuseaddr OPEN:out.txt,creat && cat out.txt client$ socat -u FILE:test.txt TCP:127.0.0.1:9876
Vorgeschlagene Verbesserungen :
OPEN:out.txt,creat,trunc
löscht alle Bytes in,out.txt
bevor darauf geschrieben wird. Diese Option ahmt nach, was Sie von erwarten würdencp
, und ist wahrscheinlich das, was Sie wollen.OPEN:out.txt,creat,excl
weigert sich zu schreiben,out.txt
wenn es bereits existiert. Verwenden Sie diese Option für zusätzliche Sicherheit.OPEN:out.txt,creat,append
fügt Daten anout.txt
.
Giver ist eine einfache Desktop-Anwendung zur Dateifreigabe. Andere Personen, die Giver in Ihrem Netzwerk ausführen, werden automatisch erkannt, und Sie können Dateien an sie senden, indem Sie die Dateien einfach auf ihr Foto oder Symbol ziehen, das in Giver angezeigt wird.
In Ubuntu:
sudo apt-get install giver
Sie können auch das Programm Giver verwenden . Damit können Sie Dateien mit 2 Klicks über LAN oder per "Drag'n'Drop" zum Empfänger übertragen. Empfänger (die ebenfalls ausgeführt werden müssen giver
) werden über Zeroconf ermittelt, sodass Sie nicht einmal ihre IP-Adresse kennen müssen. Hier ist ein Video darüber, wie Giver funktioniert .
Wenn Sie auf dem empfangenden Host kein Konto (Passwort) haben, können Sie woos (Web Offer One Stream) verwenden:
woos file-or-directory ...