null

SSHFS-win неочевидная ошибка прав доступа

В предыдущей статье, я рассказал, как настроить подключение сетевой шары по SFTP в Windows с авторизацией по ключам с помощью sshfs-win

В определенных конфигурациях использования 

  • как со стороны клиента
    запуск из под приложения, использование различных учётных записей с разным и непереопределяемым переменным окружением)
  • так и со стороны хранилища
    (распределение прав на sftp сервере, права по умолчанию в конфигурации...)

возможно возникновение ошибок при копировании или создании новых файлов на подключенном хранилище. С учётом того, что со стороны сервера и значение при подключении по умолчанию ОБЫЧНО корректны, задача неочевидна в своём решении.

Даже если конфигурация сервера всё кажется правильно, присмотритесь к опции sshfs-win 

-o create_file_umask

а в случае ошибок создании директорий/папок

-o create_dir_umask

Неочевидность в том, что по умолчанию эти опции разрешают всё. Но есть ньюансы

В случае если Вы читаете эту заметку, а значит, скорей всего, столкнулись с проблемой, для начала переопределите в строчке подключения (подробнее смотрите в моей предыдущей заметкезначения этих опций, добавив, например

-o create_file_umask=0000

Значение прав которые Вы можете выставить в триаде:

0 allows rwX
1 allows rw-
2 allows r-X
3 allows r--
4 allows -wX
5 allows -w-
6 allows --X
7 allows ---

 

Причина в том, как я указывал выше, что не из всего окружения будет использоваться данная опция со значениями по умолчанию. Например в определенных конфигурациях Вы не получите доступа из Windows Explorer, и решение - добавить в строчку подключения необходимую опцию с переопределением прав со стороны клиента.

Также возможная причина с потерей и uid gid пользователя (зависит от конфигурации). В этом случае добавьте в строчку подключения со стороны клиента.

-o uid=-1,gid=-1

Эти же опции позволит ещё и более тонко порезать права со стороны подключения от клиента.