У меня есть самописная файловая система FUSE, которую я монтирую на сервере NFS в точке монтирования /export/example/mount. Затем я экспортирую родительский каталог FUSE через NFS. /etc/exportsСодержит параметры nohide,crossmnt,subtree_check,ro,no_root_squashи обеспечивает свободный доступ к каждому:
/export/example *(nohide,crossmnt,subtree_check,ro,no_root_squash)
Я могу смонтировать этот экспорт на моем клиенте NFS и получить к нему доступ. Как только я получаю доступ к FUSE в NFS, мой клиент зависает, пока я не umountNFS (и мне нужно использовать опцию -fдля этого).
Я попытался смонтировать FUSE как мой рабочий пользователь и как root. Результаты одинаковы.
Сервер работает под управлением Ubuntu 12.04, клиент - SuSE 9.3. FUSE написан на Python и работает локально без каких-либо проблем. Сбой экспорта только через NFS. У меня нет никаких ограничений безопасности, поскольку все это в частной сети только с доверенными пользователями.
У кого-нибудь есть идея, что может стать причиной моей проблемы или (еще лучше), как решить проблему?
Я думал о замене NFS на SSHFS, чтобы обойти эту проблему, но это не работает, поскольку клиентская система слишком старая для поддержки SSHFS (так как она основана на FUSE, а FUSE не поддерживается).
crossmnt? И позволяет ли сторона предохранителя (s3fs) использоваться другими пользователями (для этого тоже есть опция монтирования). Не забывайте, что fuse является пользовательским пространством (предназначенным для использования одним пользователем), в то время как nfs является многопользовательским.
allow_otherопцию sshfs mount?