È possibile montare automaticamente un filesystem sshfs ogni volta che si avvia la connessione?
È possibile montare automaticamente un filesystem sshfs ogni volta che si avvia la connessione?
Risposte:
Upstart in Ubuntu funziona con eventi di rete? Di sicuro puoi inserire degli script in /etc/network/if-up.d e /etc/network/if-down.d. C'è una guida sui forum di Ubuntu .
Questo aiuta abbastanza?
Quindi se sshfs può essere elencato in / etc / fstab (credo che possa essere), allora mountall lo monterà ogni volta che viene visualizzato un dispositivo di rete. Il problema è che quando il dispositivo di rete si arresta, è necessario smontarlo. Questo sarebbe fattibile con un processo di avvio come /etc/init/sshfs-down.conf:
# sshfs-down
start on net-device-down IFACE!=lo
task
exec umount /path/to/sshfs/mount
Probabilmente sorgerà un problema che sshfs potrebbe provare a svuotare i buffer su umount e nel momento in cui il dispositivo di rete è già inattivo, si avranno problemi.
Ho trovato il modo più semplice per raggiungere questo obiettivo è quello di creare un piccolo script per il processo e aggiungerlo all'elenco delle applicazioni di avvio. Aggiungi queste due righe a un file di testo e salvalo da qualche parte che ti ricorderai come qualcosa di simile a sshfs.sh che aggiungilo per avviarlo.
#! /bin/bash
sshfs <host>@<ip>: ~/<mountpoint>
Assicurati di creare la cartella prima di avviare lo script o non avrà dove montare il file system a cui ti stai connettendo. Il punto di mount può essere dove vuoi, lo creo nella mia cartella home.
Penso che la cosa più utile da fare sia montare automaticamente un file system sshfs all'accesso. autofs può essere configurato per montare automaticamente i filesystem sshfs quando si accede al mount point e si smonta dopo un timeout.
Dai un'occhiata a autosshfs , che consente di montare un filesystem sshfs (fuse) con un utente ssh-agent
. Ciò risolve il solito problema di autenticazione con autofs: poiché funziona come root, è difficile configurare l'autenticazione come utente senza dover digitare una passphrase ogni volta.
allow_others
via