sshfs с другим gid на удаленном

Я не знаю, как смонтировать удаленный каталог "remote_dir" на компьютер "remote", имеющий удаленный gid "wgrp". Помощь приветствуется.

  me@local$ sshfs me@remote:/remote_dir remote_as_wgrp ...wanted_options...

Обходной путь — создать нового пользователя «me_wgrp», принадлежащего группе «wgrp». Но концептуально проблема кажется настолько простой, что я уверен, что решение есть.

Контекст:
я могу подключиться с помощью ssh на удаленном компьютере, а затем изменить свой gid:

  me@local$ ssh me@remote
  me@remote$ newgrp wgrp

Теперь я могу создавать файлы в каталогах, которые доступны для записи только группе "wgrp".

я пытался

  sshfs me@remote:/remote_dir remote_as_wgrp -o ssh_command='newgrp wgrp'

но sshfs кажется заблокированным.

Кроме того, если я попытаюсь

  ssh me@remote 'newgrp wgrp'

ssh не выдает подсказку, но принимает команды.


person f10    schedule 27.05.2010    source источник
comment
У меня была аналогичная проблема, и я обнаружил, что папка, которую я пытался редактировать, на самом деле была символической ссылкой. Я теперь sshfs прямо в папку (фактический реальный путь, а не по символической ссылке). Это сработало для меня.   -  person Rick    schedule 20.12.2012


Ответы (3)


Вам следует подумать об изменении группы по умолчанию на удаленном хосте, поскольку newgrp никогда не вернется, потому что он открывает новую оболочку. "newgrp — вернуться к подсказке новой оболочки."

person pcmind    schedule 28.04.2011

к сожалению, похоже, что группа newgrp или «группа newgrp -» приводит к тому, что sshfs не работает в среде newgrp. Вы не сможете перейти в каталог sshfs или ls, в основном вы получите ошибку отказа в разрешении (и это не из-за проблем с разрешениями). Вы также заметите, что df больше не показывает предохранитель sshfs.

person sabujp    schedule 05.12.2011

Через десять лет после того, как вопрос был задан, мне самому это было нужно.

Я обнаружил, что теперь можно добавить параметр в sshfs:

sshfs -o sftp_server="sg <group> -c '/usr/lib/misc/sftp-server -u <umask>'" ...

где /usr/lib/misc/sftp-server — расположение sftp-сервера в удаленной системе, <group> — желаемая группа в удаленной системе, а -u <umask> — необязательный способ предоставления umask по умолчанию для конкретного sftp-сервера.

person Tamas Jantvik    schedule 29.05.2020