Как мне указать параметры SSH для SSHFS?
Первоначально я задавал это как дополнительный вопрос здесь. К сожалению, не было никаких ответов, поэтому я публикую это как собственный вопрос.
Согласно документации, вы должны иметь возможность использовать ssh
варианты с sshfs
, Как ты это делаешь? Я пробовал что-то вроде -o User=joe
но затем fuse выдает ошибку, в которой говорится, что "Пользователь" не является опознанным вариантом.
Также, помощь в этом вопросе также будет оценена.
Редактировать:
Я имею в виду следующее на странице man для sshfs.
Параметры SSHFS:
-p PORT equivalent to '-o port=PORT' -C equivalent to '-o compression=yes' ⋮ -o password_stdin read password from stdin (only for pam_mount!) -o SSHOPT=VAL ssh options (see man ssh_config)
Я пытаюсь указать удаленное имя пользователя отдельно от хоста (другими словами, не user@host:dir
). Причина в том, что конкретный формат не дружит с некоторыми институционально назначенными именами пользователей. Например, если учреждение назначает имя пользователя Fist.Last@institution.edu
такие программы, как sshfs и curlftpfs не будут правильно интерпретировать First.Last@institution.edu@host:dir
, Вместо этого они попытаются войти как First.Last
хозяину institution.edu@host
,
Не могли бы вы объяснить немного больше о idmap
? Я не достаточно грамотен, чтобы понять, о чем говорит справочная страница.
Редактировать:
Если я использую idmap
Я собираюсь создать жестко закодированные файлы. Я надеялся избежать этого, чтобы пользователь мог просто использовать одну команду без необходимости знать, как она работает в фоновом режиме. В конце концов, другие люди могут использовать его даже после того, как я уйду. Несмотря на это, документация говорит, что формат файла username:uid
, Какая локальная, а какая удаленная?
3 ответа
Для передачи параметров SSH в SSHFS вы можете использовать ssh_command
,
Например, чтобы передать -c aes128-cbc
для SSH используйте:
sshfs -o ssh_command='ssh -c aes128-cbc' ...
Есть несколько параметров, которые вы можете указать сразу: -p PORT (чтобы изменить порт ssh с 22 по умолчанию)-C (чтобы указать, что вы хотите сжатие)
TL/DR: для параметров, требующих пути, используйте абсолютные пути.
Этот фрагмент справочной страницы sshfs предполагает, что он должен нормально работать с
-o
:
-o SSHOPT=VAL
ssh options (see man ssh_config)
Однако у меня были проблемы с передачей файла сертификата с
-o CertificateFile=path/to/cert
. Оказывается, он работает только с абсолютным путем к файлу сертификата, а обычный
ssh
с радостью принимает относительный путь.