Miglioramento delle prestazioni SSHFS quando si riflettono le modifiche nella directory host


12

Ho un mount SSHFS da un guest VM di Ubuntu Server, che monta una directory Mac OS X host. Le modifiche apportate direttamente nella directory host di Mac OS X impiegano circa 5-10 secondi per riflettere nel montaggio guest VM di Ubuntu Server.

Sto usando il seguente comando ...

sshfs user @ host: ~ / host

Quali opzioni aggiuntive (se presenti) miglioreranno questa latenza?


1
Come stai determinando ci vogliono 5-10 secondi?
Kyle

@Kyle, 5-10 secondi sembra abbastanza vicino al valore corretto poiché la cache predefinita {stat, dir, link} è di 20 secondi.
Zoredache,

1
@Kyle Sto semplicemente eseguendo un watch -n 1 'ls -l ~/host'punto di mount e creando una directory o un file nell'host e vedendo quanto tempo ci vuole per apparire.
Chattsm,

Risposte:


17

SSH non è progettato per essere un protocollo di trasferimento file. SSHFS funziona esaminando periodicamente l'elenco delle directory e memorizzando i risultati nella cache.

È possibile controllare il comportamento della memorizzazione nella cache, ma a costo delle prestazioni in relazione all'interattività. Se si accede all'host SSH a cui ci si sta connettendo tramite un collegamento ad alta latenza o una connessione lenta, la disabilitazione della memorizzazione nella cache renderà dolorosa la navigazione del file system.

Ad ogni modo, vedi la pagina man e sperimenta un po '.

uomo sshfs

   -o cache=YESNO
          enable caching {yes,no} (default: yes)

   -o cache_timeout=N
          sets timeout for caches in seconds (default: 20)

   -o cache_X_timeout=N
          sets timeout for {stat,dir,link} cache

Grazie, non avevo trascorso abbastanza tempo a leggere il manuale per vedere queste opzioni.
Chattsm,

Qualche comando che forzerebbe una nuova scansione immediata? Suppongo che uno script di shell contenga R=".rescan.tmp$RANDOM" if [ ! a $R ]; then touch $R; rm $R; fiforse? Qualche modo più pulito?
Jeff Burdges,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.