web-dev-qa-db-ja.com

SSHFS共有をセットアップできないのはなぜですか? 「OSXFUSEファイルシステムは利用できません」エラー

ローカルマシンからリモートマシンに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 [email protected]                   # <---- See, SSH works!!
Last login: Wed Jun 18 18:36:11 2014 from XXX.XXX.XXX.XXX
[[email protected] ~]% exit

% Sudo mkdir /mnt
% Sudo mkdir /mnt/Share    
% Sudo sshfs -o IdentityFile=~/.ssh/id_rsa.pub [email protected]:/ /mnt/Share
the OSXFUSE file system is not available (-1)
the OSXFUSE file system is not available (1)

私は記述された解決策を試しました here 。しかし、それは私にとってはうまくいきませんでした:

% 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.
24
Saqib Ali

brew info osxfuseを実行し、手紙の指示に従っていただければ、うまくいくと思います。

あなたが述べたことから、あなたは(可能性のある)以前のカーネル拡張をアンロードしようとしましたが、実際に新しい拡張をインストールするための最後の重要なステップを完了しませんでした。

これは醸造情報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
11
Ede

通常のosxfuse HomebrewパッケージによってインストールされたKEXTの読み込みに問題があるようです。 brew caskを使用して、独自のDMGからOS Xビルド用の公式Fuseをインストールできます。

brew rm osxfuse
brew install caskroom/cask/brew-cask
brew cask install osxfuse

SSHFS自体はCaskパッケージとしても利用できますが、私のシステムでは、Caskのosxfuseとプレーンなsshfsバイナリボトルを混在させるとうまく機能します。

このアプローチの欠点は、brew upgradeが現時点ではバージョンに対応していないため、brew outdatedまたはbrew caskがFuse for OS Xを更新できなくなることです。

7
Pavel

OSXFUSEは少し注意が必要ですが、正確な理由はわかりません。brewはシステムの変更を避けようとするため、カーネル拡張の管理に使用することはお勧めできません。 brewを使用する代わりに、 http://osxfuse.github.io/ からOSXFUSEおよびSSHFSのパッケージインストーラーを使用することをお勧めします。

5
Old Pro

システム環境設定を開き、「ヒューズ」を選択して、最新バージョンに更新します。それは私のために働いたものです。

2
rodvlopes

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の回答で示唆されているように)この問題がないため、これをインストールすると解決しました。

1
ttq