[英]Why does directory vanish when I do SSHFS? How to setup SSHFS share on Max OSX 10.9?
[英]Why can't I setup an SSHFS share? “OSXFUSE file system is not available” error
我正在尝试从本地计算机设置SSHFS共享到远程计算机,但它无法正常工作。 我收到错误OSXFUSE文件系统不可用(见下文)。 怎么解决这个?
仅供参考,我的本地机器是运行OSX 10.9.3的MacBook Pro笔记本电脑。 远程机器实际上是运行CentOS的同一硬件上的VirtualBox。
% brew install sshfs # <---- SSHFS is installed
Warning: sshfs-2.5.0 already installed
% brew install osxfuse # <---- OSX Fuse is installed
Warning: osxfuse-2.6.4 already installed
% ssh remote_user@XXX.XXX.XXX.XXX # <---- See, SSH works!!
Last login: Wed Jun 18 18:36:11 2014 from XXX.XXX.XXX.XXX
[remote_user@XXX.XXX.XXX.XXX ~]% exit
% sudo mkdir /mnt
% sudo mkdir /mnt/Share
% sudo sshfs -o IdentityFile=~/.ssh/id_rsa.pub remote_user@XXX.XXX.XXX.XXX:/ /mnt/Share
the OSXFUSE file system is not available (-1)
the OSXFUSE file system is not available (1)
我试过这里描述的解决方案 但它对我不起作用:
% sudo kextunload -b com.github.osxfuse.filesystems.osxfusefs
(kernel) Kext com.github.osxfuse.filesystems.osxfusefs not found for unload request.
Failed to unload com.github.osxfuse.filesystems.osxfusefs - (libkern/kext) not found.
如果您运行brew info osxfuse
并按照信中的说明操作,我相信它会起作用。
根据您的描述,您刚刚尝试卸载(可能的)以前的内核扩展,但没有完成实际安装新扩展的最后一个重要步骤。
这是brew信息osxfuse告诉我的:
If upgrading from a previous version of osxfuse, the previous kernel extension
will need to be unloaded before installing the new version. First, check that
no FUSE-based file systems are running:
mount -t osxfusefs
Unmount all FUSE file systems and then unload the kernel extension:
sudo kextunload -b com.github.osxfuse.filesystems.osxfusefs
The new osxfuse file system bundle needs to be installed by the root user:
sudo /bin/cp -RfX /usr/local/opt/osxfuse/Library/Filesystems/osxfusefs.fs /Library/Filesystems
sudo chmod +s /Library/Filesystems/osxfusefs.fs/Support/load_osxfusefs
加载由常规osxfuse
Homebrew包安装的KEXT似乎存在问题。 您可以使用brew cask
从他们自己的DMG安装官方FUSE for OS X build:
brew rm osxfuse
brew install caskroom/cask/brew-cask
brew cask install osxfuse
SSHFS本身也可以作为Cask包使用,虽然在我的系统上混合来自Cask的osxfuse
和普通的sshfs
二进制瓶工作得很好。
这种方法的缺点是brew upgrade
或brew outdated
将无法再更新OS X的FUSE,因为brew cask
现在不支持版本。
我观察到OSXFUSE有点棘手,虽然我不确切知道为什么,并且brew
试图避免更改系统,因此使用它来管理内核扩展并不是一个好主意。 我建议使用来自http://osxfuse.github.io/的 OSXFUSE和SSHFS的打包安装程序,而不是使用brew
。
打开“系统偏好设置”,选择“FUSE”,然后更新到最新版本。 这对我有用。
使用brew
安装SSHFS时的问题是osxfusefs
未签名:控制台输出com.apple.kextd: ERROR: invalid signature for com.github.osxfuse.filesystems.osxfusefs, will not load
。 另见https://github.com/osxfuse/osxfuse/issues/122 。
来自http://osxfuse.github.io/的 OSXFUSE的二进制文件(正如Old Pro的回答所示)没有这个问题,因此安装这个二进制代码就解决了它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.