我想将我的 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/macMount
并ls
确认一切正常。
答案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
如果您想将此命令嵌入脚本中,这可能很实用。