Monta automaticamente uma pasta remota na inicialização

1

Estou tentando montar uma pasta do Windows na minha máquina Ubuntu na inicialização. Tentei seguir esta página aqui , modificando / etc / fstab e adicionando sshfs#my_user@remote_host:/path/to/directory <local_mount_point> fuse user 0 0 a ele, mas ele falha; na inicialização, recebo um erro dizendo que a montagem falhou e posso pressionar S para pular ou M para recuperar manualmente.

Eu também tentei seguir esta página aqui , anexando /usr/bin/sshfs -o idmap=user my_user@remote_host:/path/to/directory <local_mount_point> para o arquivo /etc/rc.local, mas isso não ajuda; O Ubuntu apenas inicializa normalmente sem montar.

Eu tenho o Cygwin instalado em minha máquina Windows, e posso executar tudo sem problemas, como sshing sem senhas, e montá-lo manualmente. Eu também tentei executar o arquivo rc.local modificado $ /etc/rc.local , e ele funciona perfeitamente, mas parece que não consigo colocar a pasta na inicialização.

Alguém pode me ajudar?

EDIT: por remoto, eu quis dizer que a pasta que eu estou tentando montar da minha máquina Windows (que tem um ip público), não está na mesma rede. Eu estou usando sshfs, não nfs.

    
por Andrew 29.10.2013 / 08:42

3 respostas

0

Na minha máquina Ubuntu, modifiquei meu / etc / fstab adicionando esta linha:

 //192.168.xx.yy/Public /mnt/PUBNAS nfs rw,_netdev,credentials=/home/myname/.smbcredentials 0 0

O arquivo .smbcredentials é muito simples,

 username=myusername                                                                            
 password=mypassword

Editar:

Depois de perceber que você usa sshfs, testei a entrada / etc / fstab sugerida por a página wiki do Arch Linux . Para mim, esta entrada funcionou:

USERNAME@HOSTNAME_OR_IP:/REMOTE/DIRECTORY  /LOCAL/MOUNTPOINT  fuse.sshfs  defaults,_netdev  0  0

É importante que você tenha acesso sem senha ao servidor ( isto é, , com chave criptográfica). Espero que isso compense meu erro inicial.

Editar 2:

Se você quiser que a pasta remota seja montada por você, não pelo root, o que é um incômodo, você terá que mudar a linha / etc / fstab para isto:

 USERNAME@HOSTNAME_OR_IP:/REMOTE/DIRECTORY  /LOCAL/MOUNTPOINT  fuse.sshfs _netdev,user,idmap=user,transform_symlinks,identityfile=/home/USERNAME/.ssh/id_rsa,allow_other,default_permissions,uid=USER_ID_N,gid=USER_GID_N 0 0
    
por 29.10.2013 / 10:36
0

Na verdade, eu olhei mais de perto para o seu cenário aqui, e eu estou querendo saber se você se certificou de adicionar o bit de execução ao arquivo /etc/rc.local que você criou originalmente (no final do artigo howtoforge.com que você seguiu)

chmod +x /etc/rc.local

Agora reinicie.

    
por 30.10.2013 / 06:13
0

Você pode verificar se o rc.local está sendo executado na inicialização? Coloque algo nele:

echo 'test' > > /tmp/my.log

Em seguida, veja se há alguma saída de erro, anexar ao seu comando de montagem:

& > /tmp/my.log

Talvez quando você executar manualmente o arquivo, você o esteja executando como um usuário diferente do que o kernel está executando como. Nesse caso, uma mensagem seria escrita para STDERR, que você normalmente veria em / var / log / messages, a menos que você a redirecionasse para outro lugar com a sintaxe acima anexada ao comando.

    
por 30.10.2013 / 20:31