Назад | Перейти на главную страницу

Почему я получаю сообщение «Операция запрещена» при попытке смонтировать том с помощью sshfs и MacFUSE?

Я установил MacFUSE (из http://code.google.com/p/macfuse/downloads/list), перезапустился, а затем загрузил sshfs-static-leopard.gz и переместил sshfs-static-leopard в / usr / sbin / sshfs (и выполнил для него chmod 755).

Я настроил машину Ubuntu на работе (с именем хоста "daryls"), поэтому могу использовать ssh без пароля. Но когда я пытаюсь sshfs daryls:/ /Volumes/daryls -oauto_cache,reconnect,volname=daryls, Я получил:

warning: ssh nodelay workaround disabled
mount_fusefs: failed to mount /Volumes/daryls@/dev/fuse0: Operation not permitted

Какая операция не разрешена?

Я использую Mac OS X 10.6.7? Может быть, sshfs-static-leopard.gz не работает со Snow Leopard? А может, работает только в 32-битном режиме? Как узнать, загружаю ли я Mac OS X в 64-битном режиме?

Обновить: В пятницу я попробовал это на виртуальной машине Ubuntu 11.04 (работающей в VMware Fusion 3.1.3). Я почти уверен, что просто сделал регулярный mkdir /Volumes/ubuntu (без sudo), за которым следует sshfs ubuntu:/ /Volumes/ubuntu -oauto_cache,reconnect,volname=ubuntu и это сработало.

Но сегодня я получаю то же самое mount_fusefs: failed to mount /Volumes/ubuntu@/dev/fuse0: Operation not permitted ошибка.

Я попытался создать каталог / Volumes / ubuntu с помощью sudo, но это не имело значения. Затем я попытался бежать sudo sshfs ubuntu:/ /Volumes/ubuntu -oauto_cache,reconnect,volname=ubuntu и получил:

warning: ssh nodelay workaround disabled
remote host has disconnected

Но ssh ubuntu работает.

Понятия не имею, почему это работало, а теперь нет. На всякий случай попробую перезагрузить MacBook Air.

Обновление №2: После перезапуска я запустил:

$ cd /Volumes/
$ mkdir ubuntu
$ sshfs ubuntu:/ /Volumes/ubuntu -oauto_cache,reconnect,volname=ubuntu
warning: ssh nodelay workaround disabled

Это сработало.

Так что у меня до сих пор нет ответа на свой вопрос. Но у меня может быть обходной путь.

Кстати: он говорит «Нет» напротив «64-но ядро ​​и расширения» в разделе «Обзор системного программного обеспечения» в System Profiler (который я открыл после Разнорабочий5направления).

Обновление № 3: Получив ошибку «Операция запрещена», я перезапустил ее и снова получил. (Другими словами, перезапуск не является надежным решением.)

Обновление №4: Это сработало, а затем я совершил ошибку, перезапустив свою виртуальную машину Ubuntu, не отключая том sshfs. Теперь я снова получаю сообщение об ошибке «Операция запрещена». (Возможно, каталог / Volumes оставлен в каком-то заблокированном состоянии.)

Я читаю Разнорабочий5комментарий ниже, а затем прочтите http://hints.macworld.com/article.php?story=20031017061722471 и справочную страницу для chflags. Затем я сделал:

$ ls -lOd /Volumes/
drwxrwxrwt@ 5 root  admin  hidden 170 Jul 15 13:22 /Volumes/
$ ls -lOd /Volumes/ubuntu/
drwxr-xr-x+ 2 root  admin  - 68 Jul 15 13:08 /Volumes/ubuntu/

(Согласно странице руководства chflags, параметр ls для просмотра флагов - -O, а не -o. Это подтверждается на странице руководства ls.)

Как видите, он не показывает никаких флагов. (Хотя мне интересно, что означают "@" и "+". Я читал http://lists.apple.com/archives/Macos-x-server/2008/Jan/msg00138.html и играл с xattr, но ничего не узнал.)

От отчаяния я попробовал sudo chflags nouchg /Volumes и sudo chflags nouchg /Volumes/ubuntu но по-прежнему возникает ошибка «Операция запрещена».

Обновление № 5: Прошло некоторое время с тех пор, как я изначально разместил это, но IIRC все это произошло из-за моих проблем, пытающихся обойти MacFusion не работает с MacFUSE и SSHFS (при попытке использовать SSHFS для монтирования тома, запущенного на виртуальной машине Ubuntu). Я недавно узнал бой FUSE для OS X. Я его установил, переустановил SSHFS, и теперь MacFusion работает безупречно.

Возможно, ваша учетная запись не может монтировать тома в /Volumes каталог напрямую. Вы пробовали монтировать sshfs в каталог в вашем собственном домашнем каталоге?

В противном случае вам может потребоваться административная (sudo) разрешения на запуск sshfs. Попробуйте указать перед этой командой sudo вот так:

sudo sshfs daryls:/ /Volumes/daryls -oauto_cache,reconnect,volname=daryls

В стороне: определить работает ли ваш Mac в 64-битном режиме:

  1. выберите Об этом Mac из меню Apple.
  2. Нажмите Больше информации.
  3. Выбрать Программное обеспечение на панели Содержание.
  4. Найдите «64-битное ядро ​​и расширения: да (или нет)» под Обзор системного программного обеспечения заголовок.

Однажды я смог смонтировать мои тома по sshfs. В следующий раз я не был. В командной строке (терминале) попробовал sudo -i и был встречен с сообщением «Пользователь не находится в файле sudoers». Я перезагрузился и попробовал sudo -i и был успешным, поэтому я снова попробовал смонтировать sshfs, и это сработало. По сути, перезагрузка исправила меня, но у меня нет других подробностей, кроме этого. ОС: Mac 10.11.6 (El Capitan)