У меня есть хостер домена, который обеспечивает доступ через SSH.
Мои платформы:
- Gentoo 2.6.36-r5
- Windows (XP / Vista / 7)
Я работаю на своей Windows, я использую Gentoo, чтобы сделать все то, что Windows не может сделать.
Поэтому я использую sshfs для монтирования удаленного публичного каталога для моего домена в /mnt/mydomain.com. Аутентификация осуществляется с помощью ключей, поэтому ленивый мне не нужно вводить мой пароль время от времени.
Поскольку я пишу код в Windows и не хочу постоянно загружать / скачивать измененные файлы, я хочу получить доступ к этому /mnt/mydomain.com через общий ресурс samba.
Итак, я поделился / mnt в samba, все монтирования, кроме mydomain.com, перечислены в моем проводнике Windows.
Мои теории:
- sshfs не устанавливает точку монтирования uid / gid на то, что ожидает samba
- Samba не знает, что он должен включать uid / gid, который был установлен /mnt/mydomain.com .
- Все выше сказанное неправильно, и я не знаю.
Вот конфиги и вывод с консоли, нужно что-нибудь еще, просто дайте мне знать. Также нет ошибок или предупреждений о том, что я обращаю внимание на отношение к этой проблеме, но я могу ошибаться.
gentoo ~ # ls -lah /mnt
total 20K
drwxr-xr-x 9 root root 4.0K Mar 26 16:15 .
drwxr-xr-x 18 root root 4.0K Mar 26 2011 ..
-rw-r--r-- 1 root root 0 Feb 1 16:12 .keep
drwxr-xr-x 1 root root 0 Mar 18 12:09 buffer
drwxr-s--x 1 68591 68591 4.0K Feb 16 15:43 mydomain.com
drwx------ 2 root root 4.0K Feb 1 16:12 cdrom
drwx------ 2 root root 4.0K Feb 1 16:12 floppy
drwxr-xr-x 1 root root 0 Sep 1 2009 services
drwxr-xr-x 1 root root 0 Feb 10 15:08 www
/etc/samba/smb.conf
[mnt]
comment = Mount points
writable = yes
writeable = yes
browseable = yes
browsable = yes
path = /mnt
/ И т.д. / Fstab
sshfs#myusername@mywebhotel.com:/home/to/pub/dir/ /mnt/mydomain.com/ fuse comment=sshfs,noauto,users,exec,uid=0,gid=0,allow_other,reconnect,follow_symlinks,transform_symlinks,idmap=none,SSHOPT=HostBasedAuthentication 0 0
Для удобства чтения:
- myusername@mywebhotel.com
- / Главная / к / паб / реж /
- /mnt/mydomain.com/
параметры:
- комментарий = SSHFS
- NOAUTO
- пользователи
- Exec
- UID = 0
- GID = 0
- allow_other
- переподключение
- follow_symlinks
- transform_symlinks
- не IDMAP = нет
- SSHOPT = HostbasedAuthentication
Помогите!
HostbasedAuthentication
не рекомендуется использовать (PubkeyAuthentication
предпочтительнее для пользователей)SSHFS version 2.8
fuse: unknown option 'SSHOPT=HostBasedAuthentication'
Ответы:
sshfs
является файловой системой на основе FUSE, и уровень FUSE не позволяет другим пользователям получать доступ к его монтированию по умолчанию в целях безопасности. У вас естьallow_other
в настройках, но он будет игнорироваться, пока вы не измените,/etc/fuse.conf
чтобы включитьuser_allow_other
.источник
-o allow_other -o uid=<UID> -o gid=<GID>
). Кажется, нет необходимости перезапускатьsmbd
(но я не уверен, так как яsmbd
все равно перезапустил ).Почему вы не монтируете sshfs напрямую из Windows?
Есть несколько бесплатных решений для этого (см. Здесь и здесь для получения дополнительной информации).
источник
Так как ваши обычные smb-ресурсы работают, я не теряю слов о конфигурации Samba, потому что вы можете монтировать shre sshfs точно так же, как вы делитесь обычными папками. Но монтирование общего ресурса SSH через sshfs является особенным по сравнению только с доступом к локальной машине.
Для монтирования вашего общего ресурса через fstab вы можете поместить эту строку в / etc / fstab и смонтировать общий ресурс по запросу. Это удобнее, чем использовать команду командной строки.
Общая строка etc / fstab:
noauto: вам нужно смонтировать его с помощью
mount /MOUNT/POINT
всей другой информации, извлекаемой из этой строки в / etc / fstabusers: позволяет обычным пользователям монтировать эту запись монтирования
Переподключение : переподключение / перемонтирование сети после ожидания и т. д.
uid = / gid =: сопоставляет удаленный uid / gid с этим локальным uid / gid
Пример:
Все, что вам нужно знать о монтировании sshfs [ https://wiki.archlinux.org/index.php/Sshfs]
источник