简单的文件传输


Answers:


22

我用scp

scp source desthost:/path/to/dest/.

从本地计算机复制到远程计算机,或

scp srchost:/path/to/file/file .

从远程计算机复制到本地计算机。

如果用户名在远程计算机上不相同,

scp user@srchost:/path/to/file/file .

3
我要添加的是,您可以将-r选项与scp一起使用以递归方式复制整个目录scp -r源desthost:/ path / to / dest /
Steve Burdine 2010年

1
@Steve_好点。此外,-C会在文件传输过程中对其进行压缩,这有助于缓解速度较慢的链接。
KeithB

是我scp还是rsync我。
乔什(Josh K)2010年

6

我通常通过FUSE和sshfs通过ssh挂载目录。

安装:

$ sshfs name@server:/path/to/dir /path/to/mount/point

卸载:

$ fusermount -u /path/to/mount/point

5

我使用netcat(如果我不需要安全性)

nc -l -p 1234 < send_file   # 'server'
nc x.y.z.t 1234 > receive_file  # 'client'

2
我特别喜欢这个组合:tar -c files and folders/ |pv -cN in|lzop|pv -cN out|nc x.y.z.t 1234
jpc 2011年

5

nfs可能有用。

网络文件系统(NFS)允许客户端节点通过网络执行透明文件访问。通过使用NFS,客户端节点可以对驻留在各种服务器和服务器体系结构以及各种操作系统上的文件进行操作。客户端上的文件访问调用(例如读取请求)将转换为NFS协议请求,并通过网络发送到服务器系统。

您可能需要Unix管理员的帮助来进行首次设置,但它非常有用。


对于快速从nni到* nix到* nix的传输,没有什么比NFS更接近的了。一个好的管理员可以在不到5分钟的时间内启动两个盒子并进行传输,它对系统的其余部分几乎是透明的,并且众所周知且稳定。不需要每次都敲出命令行来传输内容的内容即可+1。
艾利·佩恩

2

对于一次性文件传输,我通常使用SFTP或现有的samba共享。

为了保持同步,建议您尝试rsyncunison(用于2路同步)

编辑: scp会更好sftp,因为它将在所有启用了SSH的主机上运行


2

为了进行备份,我经常使用rsync。如果要备份到远程计算机,我将在/ etc / fstab中放置一行以使远程计算机通过NFS或CFIS(Samba)挂载。

192.168.0.101:/ /mnt/backup nfs rsize=8192,wsize=8192,timeo=14,intr 0 0

然后在我的crontab中使用rsync在一行中。

rsync -av /home/user/sourcedir/ /mnt/backup/destinationdir > /home/user/backup.log

1

netcat很简单,但并非所有版本都能可靠地关闭连接。

这是有关使用的线程socatsocat通过TCP进行可靠的文件传输

把它们加起来:

建议

服务器发送文件:

server$ socat -u FILE:test.dat TCP-LISTEN:9876,reuseaddr
client$ socat -u TCP:127.0.0.1:9876 OPEN:out.dat,creat

服务器接收文件:

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

拟议的增强功能

  • OPEN:out.txt,creat,truncout.txt在写入之前删除所有字节。此选项模仿了您对的期望cp,并且可能正是您想要的。
  • OPEN:out.txt,creat,exclout.txt如果已经存在,将拒绝写入。使用此选项可提高安全性。
  • OPEN:out.txt,creat,append会将数据附加到out.txt

1

Giver是一个简单的文件共享桌面应用程序。系统会自动发现其他在网络上运行Giver的人,您只需将文件拖到Giver中显示的照片或图标上,就可以向他们发送文件。

在Ubuntu中:

sudo apt-get install giver

0

您也可以使用Giver程序。使用它,您可以通过单击两次或通过“拖放”文件到收件人来通过LAN传输文件。收件人(也必须运行giver)是通过Zeroconf发现的,因此您甚至不必知道其IP。这是关于Giver工作原理视频


2
作为过去在Giver上工作的人,我可以说它是一个简洁的应用程序,但是它完全没有维护,并且有很多错误,尤其是在传输大文件时。不要对此抱有太大期望。
桑迪

@Sandy是的,我知道错误。就我而言,1.4G文件已成功传输。无论如何,使用Giver看起来仍然比NFS / rsync / nc /更容易。
Andrei Dziahel 2010年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.