Почему я не могу настроить общий ресурс SSHFS? Ошибка «Файловая система OSXFUSE недоступна»

Я пытаюсь настроить общий ресурс SSHFS с моей локальной машины на удаленную машину, но это не работает. Я получаю сообщение об ошибке: файловая система OSXFUSE недоступна (см. ниже). Как это исправить??

К вашему сведению, моя локальная машина — это ноутбук MacBook Pro с OSX 10.9.3. Удаленная машина на самом деле является VirtualBox на том же оборудовании, где работает CentOS.

% 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)

Я попробовал решение, описанное здесь. Но это не сработало для меня:

% 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.

person Saqib Ali    schedule 19.06.2014    source источник
comment
Взгляните на этот билет: github.com/Homebrew/homebrew-cask/issues/27293   -  person Pierz    schedule 21.07.2018


Ответы (5)


Если вы запустите 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
person Ede    schedule 30.08.2014
comment
Мне также пришлось запустить brew link osxfuse, по какой-то причине он не был связан, я не уверен, как я это узнал. - person aleb; 05.11.2014

Возникла проблема с загрузкой KEXT, установленного обычным пакетом osxfuse Homebrew. Вы можете использовать brew cask для установки официальной сборки FUSE для OS X из их собственного DMG:

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

Сам SSHFS также доступен в виде пакета Cask, хотя в моей системе смешивание osxfuse из Cask с простой бинарной бутылкой sshfs работает просто отлично.

Недостатком этого подхода является то, что brew upgrade или brew outdated больше не смогут обновлять FUSE для OS X, поскольку brew cask пока не поддерживает версию.

person Pavel    schedule 23.01.2015
comment
Это спасет мой день. Сноска, однако, мне пришлось запустить brew install caskroom/cask/brew-cask, чтобы она заработала; как описано здесь - person yves amsellem; 02.02.2015

Я заметил, что OSXFUSE немного сложен, хотя я точно не знаю, почему, и brew пытается избежать изменения системы, поэтому использовать его для управления расширениями ядра не очень хорошая идея. Я предлагаю использовать упакованные установщики для OSXFUSE и SSHFS из http://osxfuse.github.io/ вместо использования brew.

person Old Pro    schedule 27.06.2014
comment
… что по сути то же самое, что и использование brew cask, не так ли? Кто-нибудь может это подтвердить? Была такая же ошибка после обновления os x. Прочтите этот ответ, а затем установите его с помощью cask. Работал! - person thorink; 18.10.2014

Откройте Системные настройки, выберите FUSE, затем обновите до последней версии. Это то, что сработало для меня.

person rodvlopes    schedule 28.01.2017

Проблема при установке SSHFS с brew заключается в том, что osxfusefs не подписано: Консоль выводит com.apple.kextd: ERROR: invalid signature for com.github.osxfuse.filesystems.osxfusefs, will not load. См. также https://github.com/osxfuse/osxfuse/issues/122.

Двоичный файл для OSXFUSE из http://osxfuse.github.io/ (как было предложено в ответе Old Pro ) не имеет этой проблемы, и поэтому установка этого вместо этого решила ее для меня.

person ttq    schedule 16.01.2015
comment
работал и на меня. macOS Sierra, osxfuse, установленный через macports, не работал. Установка на основе DMG сделала. - person JL Peyret; 01.03.2018