Есть ли способ настроить автомонтирование (Linux или OSX) с помощью FUSE sshfs, чтобы cd /servers/<server>
автоматически монтировал правильный сервер с помощью sshfs?
1 ответ
1
Я только что ответил примером ответа на другой вопрос (autofs+sshfs-answer)
Помните! Пользователь Autofs по умолчанию является пользователем root. Так что сначала получите sshfs, работающий с root.
линия auto.master
нота! используйте свой uid и gid и укажите предпочитаемую точку монтирования, которую я использую /auto /mehtod /address
/auto/sshfs /etc/auto.sshfs uid=1000,gid=1000,--timeout=60,--ghost
auto.sshfs это немного более универсально, чем одно монтирование
#!/bin/bash
# Shell script that acccepts one argument, namely userid@server
# env >> /tmp/env_check
# whoami >> /tmp/env_check
key=$1
USER='your_local_user_used_for_ssh_identity_file'
REMOTEDEFAULT='default_to_this_user_otherwise_root'
key=${key//[: #]/}
# add user
[[ ! "$key" =~ "@" ]] && key="${REMOTEDEFAULT}@${key}"
case $key in
${REMOTEDEFAULT}@.Trash*)
exit 1;;
*)
(
echo "-fstype=fuse,idmap=user,rw,nodev,nonempty,transform_symlinks,noatime,allow_other,IdentityFile=/home/${USER}/.ssh/id_dsa,max_read=65536\\"
echo -e "\t /uhome :sshfs\#$key\:\\"
echo -e "\t /tmp :sshfs\#$key\:\/tmp\/\\"
echo -e "\t /rootfs :sshfs\#$key\:\/")
esac
## this is a bit more complex. It creates subfolders to autofs-mount/remotename
## /uhome = your remote homedirectory
## /rootfs = remote root '/'
## /tmp = remote tmp # same as /roots/tmp
затем ссылка на папку, к которой вы хотите получить доступ ln -s /auto/sshfs/userid@my.remote.example.com/uhome/ remote-home