如何将 OSX 中的共享文件夹挂载到 Ubuntu 14.04

如何将 OSX 中的共享文件夹挂载到 Ubuntu 14.04

我想将我的 Mac 上的共享目录挂载到我的 Ubuntu 服务器上的文件夹中,以便我可以使用某种自动化方式将备份文件复制到 Mac。

在我开始整个自动化过程之前,我希望能够手动挂载目录。

哦,我谷歌搜索了这么多!我找到了多个版本的 mount 命令。最接近有效的一个(即它要求我输入密码,并且不反对回答)是这个:

sudo mount -o user=**** //192.168.1.4/server_backups /files/mountpoint

它产生了以下错误:

mount error(95): Operation not supported

我走的路对吗?我尝试了该命令的各种版本。要么它在身份验证时失败,要么我收到上述错误。

任何帮助或建议都将不胜感激,

谢谢,

西蒙。

答案1

如何使用 SSHFS 挂载 SSH 位置。

步骤1:

  • “在您的 Mac 上,如果尚未打开,请打开共享偏好设置,然后选择远程登录。选择远程登录还会启用安全 FTP (sftp) 服务。”

第2步:

  • 从 Ubuntu 安装 SSHFS sudo apt-get install sshfs
  • 创建一个挂载点。#mkdir /mnt/macMount
  • 挂载 SSH 文件夹#sshfs [email protected]:/ /mnt/macMount/
  • 然后检查它是否正常工作,cd /mnt/macMountls确认一切正常。

答案2

如果你想自动备份到 Mac,共享文件夹并不是一个好方法

而是在 Mac 上启用 SSH 并通过它传输备份。

进入“系统偏好设置”。在“Internet 和网络”下有一个“共享”图标。运行它。在出现的列表中,选中“远程登录”。

既然您想使用自动化,那么这将会非常有用。

以下是如何将文件夹从 Ubuntu 计算机复制到 Mac 的示例

rsync -azvr /path/to/source/folder MAC:/path/to/where/you/want/to/saveit/

其中 MAC 是你的 Mac 的 IP 地址,rsync 的优点在于,如果你重新运行此命令,它只会将更改的文件从源目录复制到你的 Mac,从而节省时间和带宽。

z 标记会增加压缩。如果你复制大量已压缩的文件(如电影、图片或 mp3),则使用它不会提高速度

如果你仍然想要某种驱动器映射,那么你就可以从 GUI 浏览计算机。也可以在 sshfs 的帮助下通过 ssh 完成

在你的 Ubuntu 电脑上安装 sshfs。然后将你的用户添加到 fuse 组,最后挂载远程服务器

从终端:

sudo apt-get install sshfs # install sshfs
mkdir macfolder 
sshfs username@MAC:/ macfolder

将会挂载你的 mac 根文件系统到 macfolder 文件夹下

答案3

且不论这是否是最好的方法,经过大量的努力和谷歌搜索,这个方法最终对我有用,可以从 Ubuntu 14.04 连接到 OS X 10.9.5 共享:

sudo mount -t cifs //192.168.0.101/ShareName /media/localsharedir -o noauto,user,credentials=/home/myself/.smb-credentials,noperm,uid=myself,gid=myself,sec=ntlmssp,nounix

我把它留在这里,是为了那些在安装 OS X 提供的共享时遇到困难的人。

我不确定是否所有-o选项都是必需的;从我所读的内容来看,只有这些选项sec=ntlmssp,nounix是必需的,但对我来说,这些选项单独使用不起作用。

我必须创建/media/localsharedir并设置所有权给我自己。

我的.smb-credentials文件仅包含:

username=my_os_x_username
password=my_os_x_password

没有指定工作组/域。

祝你好运。

答案4

Dale Anderson 的回答对我有用Ubuntu 16.04連接至macOS 10.12.6(Sierra)

我已经寻找了很长时间的方法来做到这一点,但没有成功。我认为这是不可能的,也许是因为 macOS 已经更新以某种方式排除了 Linux,或者这需要手动破解 macOS(我已经看到一些提到这一点的答案)。

事实证明,这并不是一件简单的事情,但也并非不可能,戴尔找到了答案。

需要补充的是,您不需要 Mac 的 IP 地址,也不必将 macOS 用户名和密码存储在本地文本文件中,我认为这是有风险的。您可以使用此命令,其中包含 Mac 的机器名称和 macOS 用户名,它会提示您输入用户的密码:

sudo mount -t cifs //MacBook-CT.local/Projects mnt/projectsmac -o noauto,user,username=christopher,noperm,uid=ct,gid=ct,sec=ntlmssp,nounix

请注意,我使用位于我自己的主目录内的挂载目录,因此这mnt/projectsmac不是拼写错误(我的主目录下的目录projectsmac中有一个目录)。mnt

“christopher” 是 macOS 用户名,“ct” 是 Ubuntu 用户名。

此外,Mac 的机器名称也是问题的潜在来源。我的 Mac 名称实际上是“MacBook_CT”,但我无法在 Linux 命令中使用它。要找出您必须在网络上使用的名称,请打开 Mac 上的“共享”偏好设置。

您甚至可以更进一步,将 Mac 用户的密码直接输入到 mount 命令中:

sudo mount -t cifs //MacBook-CT.local/Projects mnt/projectsmac -o noauto,user,username=christopher,password="12345678",noperm,uid=ct,gid=ct,sec=ntlmssp,nounix

如果您想将此命令嵌入脚本中,这可能很实用。

相关内容