我有一个Pi可以在OSX上使用ssh和Screen Sharing无头运行,而在raspbian上可以是紧密视频服务器。

我可以使用ssh或Screen Sharing(即VNC)将Mac上的文件从Mac复制到Pi上吗?需要使用Samba或类似产品吗?

评论

请参阅scp和/或sftp。如果您的ssh已经有效,则它们应该可用。还有一个sshfs,它允许挂载la NFS共享。

在SSH上的SCP对我来说很好。我自己使用Cyber​​duck进行文件传输,因为我可以像在finder中一样拖放。

我使用sftp(使用FileZilla)将文件保存到那里,因此现在关闭查询。 (我会将此标记为接受)。

请注意,在Pi上,ssh加密速度可能较慢。几年前,我发现河豚成为CPU的明智之选。

NFS是另一种选择,它在Unix世界中像本机一样是最有意义的。

#1 楼


自从我发布此答案以来的6年中,许多事情发生了变化。
macOS Samba支持得到了改善,Apple现在将Samba作为默认的文件共享方式(并且afp不适用于更新的Apple文件系统)
Debian Buster现在使用netatalk 3-进行了重大更改,并且需要更多配置才能执行任何有用的操作。
nfs在最近的Raspbian中的支持要好得多,但仍然存在来自macOS的写许可权的问题。 />

我使用ftp,Samba,afp和nfs的所有文件;
主要使用ftp(Filezilla)进行与Pi之间的常规文件传输
Samba浏览Pi Home和共享文件系统,并循环挂载我的备份映像以进行备份/还原。



我使用ftp解决了我的问题(如上所述),但是最近发现了另一种方法,其他Mac用户可能会觉得有用。

sudo apt-get install netatalk


在Pi上安装appletalk协议。
这使您可以使用接着(在Mac上的终端提示下)连接到Pi

open afp://10.1.1.10  (replace this with your Raspberry Pi IP address)


然后,您可以使用Finder(或任何其他FileManager,例如QuollEyeTree),以使用在Mac上使用的相同技术将文件传输到Pi或从Pi传输文件。

注意:此编辑是由另一个用户进行的,并且不需要AFAIK如果出现错误,则无法使用open afp命令获取指向控制台的文件描述符,并再次使用sudo进行尝试,并确保在Mac上配置了远程登录。

评论


@Paul Fort:当您最初添加它时,“ open afp command”是什么? “ afp”应该是“ ftp”吗?

– Peter Mortensen
2014年7月27日12:10



@PeterMortensen您是否尝试过(或检查了Mac帮助)?

–地铁
2014年7月27日13:41

这太棒了。爱它!感谢您的提示,不知道这样做的能力。

– gdgr
2015年12月9日23:39

#2 楼

如果您可以使用ssh,那么scp(SSH副本)也可能会正常工作。

我还是会安装samba,因为到处都有太多的winboxen,接下来您可能需要的是从Windows访问。

评论


我在Mac上尝试了scp,但是虽然它似乎可以正常工作,但没有文件出现(我使用了“ sudo scp -v world2 //pi@10.1.1.10:”和其他变体)。我已经使用scp(在Pi上)来传输rsa密钥。 sftp似乎是最简单的选择。

–地铁
13年8月12日在0:44

scp通常不需要sudo,没有它应该可以正常工作。

– lenik
13年8月12日在2:07

从Mac到RPi的scp可以按预期工作,并且在RPi上不需要任何其他软件。 netatalk也可以很好地工作,但是当然会增加偶尔使用的软件和开销。

– bobstro
2015年10月1日,12:05

#3 楼

您是否尝试使用带有scp标志的-r?因为没有它,它将不会执行递归复制。

如果您要复制文件或文件夹world2,这就是我要这样做的方法:

$ scp -rv world2 pi@10.1.1.10:/path/to/copy/of/world2/


评论


优秀的指挥。快捷方便。非常感谢你。

– GutierrezDev
16年6月25日在23:28

如果在〜/ .ssh / config中定义主机,则可以使scp的使用更加容易(请参阅nerderati.com/2011/03/17/…)—如果将主机配置为rpi,则可以使用诸如scp之类的东西-r world2 rpi:/ path / to / copy / of / world2 /。以防万一它不明显,它也可以以其他方式工作,例如:scp rpi:.bashrc somedir。如果路径不是绝对路径,则它将相对于$ HOME。

–ccpizza
17年11月11日14:16



#4 楼

如果您有很多文件,则还可以考虑使用rsync。您可以使用-P标志(对于--partial --progress),该标志在您预期可能会有长时中断的长时间传输时非常方便-这样,将保留部分传输的文件(在正常情况下,它们会被删除),这样,当您恢复传输时,将不需要很长时间即可完成传输。

因此,您可以执行以下操作:

rsync -avP world2/ pi@10.1.1.10:world2


(假设world2是目录,此命令会将world2的内容复制到远程计算机上的/world2目录)

#5 楼

我找到的最简单的方法是使用Cyber​​duck。


打开新连接
从下拉菜单中选择SFTP
服务器:放置Pi的IP地址
用户名:应为“ pi”
密码:默认情况下应为“ raspberry”,除非您对其进行了更改

取消选择匿名登录并进行连接。

#6 楼

如果是较长期的解决方案,另一个选择是在两台计算机上安装Syncthing或Bittorrent Sync。它使多台计算机上的目录保持同步,并可以处理大型文件和目录。作为文件服务器,备份和传输文件非常方便。

我刚刚从btsync切换到Syncthing。 Syncthing提供了更多选项和控制权(而btsync具有专有代码)。

apt.syncthing.net上的Debian / Ubuntu软件包对我来说很好用,我以此教程为指南

#7 楼

在您的Pi上设置SMB共享,​​
http://raspberrywebserver.com/serveradmin/share-your-raspberry-pis-files-and-folders-across-a-network.html

然后,在Mac上,转到finder>转到>连接到服务器(cmd + k)>并输入pi smb://192.Ras.Pi的地址,然后可以导航文件夹结构,复制/粘贴文件等。

评论


为什么还要为一个2岁的问题发布答案并接受答案呢?这甚至不是一个好的答案,因为SMB是b。协议。如果您使用Mac,请尝试答案。

–地铁
2015年9月30日23:38在

为什么要烦恼地将无益的评论发布到一个完美的答案上,这与提供的其他所有解决方案都不一样?有多种方法可以将文件从一个位置移动到另一个位置,这种方法不需要在Mac上安装任何其他软件,也不需要大量使用终端。为什么将其发布在N岁的线程上? A)解决方案仍然不错,B)问题仍然相关-我今天早上做了一个google搜索,这是第一个结果C)该解决方案与提供的其他解决方案不同。

– jrubins
2015年10月1日,下午4:20

我曾在最初的问题中提到过“或者我是否需要使用Samba或类似的东西”,并且(隐式)将其排除在外。

–地铁
2015年10月1日在5:12



“或者我需要使用Samba或类似语言”不是排他性语言。因此,对于给您一个完美的答案(在大多数情况下,因为Samba已安装在许多RPi发行版上),我感到很抱歉,它比提供的任何其他答案都容易得多。我真的不明白为什么您会觉得需要对我的答案进行辩论并否决它。仅仅因为您在Stack Exchange上享有5000声誉,并不意味着您就不是一个傻瓜。

– jrubins
2015年10月1日,16:19

#8 楼

只需使用FileZilla,然后从“文件菜单”上的站点管理器中设置一个新站点。然后选择SFTP并输入Rasp用户名和密码,一切就好了。

#9 楼

在Mac上安装MacFusion将允许您通过SSH来安装Pi,类似于在Mac上安装USB记忆棒的方式。然后,您可以根据需要使用查找器将文件复制到Pi上的任何文件夹。