Melhorando o desempenho do SSHFS ao refletir alterações no diretório host


12

Eu tenho uma montagem SSHFS de um convidado da VM do Ubuntu Server, montando um diretório host do Mac OS X. As alterações feitas diretamente no diretório de host do Mac OS X levam aproximadamente de 5 a 10 segundos para refletir na montagem de convidado da VM do Ubuntu Server.

Estou usando o seguinte comando ...

sshfs user @ host: ~ / host

Quais opções adicionais (se houver) melhorarão essa latência?


1
Como você está determinando que leva de 5 a 10 segundos?
Kyle

@Kyle, 5 a 10 segundos parece bem próximo do valor correto, já que o cache padrão {stat, dir, link} é de 20 segundos.
Zoredache

1
@ Kyle Estou simplesmente executando um watch -n 1 'ls -l ~/host'ponto de montagem e criando um diretório ou arquivo no host e vendo quanto tempo leva para aparecer.
Chatterm

Respostas:


17

O SSH não foi projetado para ser um protocolo de transferência de arquivos. O SSHFS funciona examinando periodicamente a lista de diretórios e os resultados do cache.

Você pode controlar o comportamento do armazenamento em cache, mas com o custo do desempenho relacionado à interatividade. Se o host SSH que você está conectando for acessado por um link de alta latência ou conexão lenta, a desativação do cache tornará as coisas que navegam no sistema de arquivos dolorosas.

De qualquer forma, veja a página de manual e experimente um pouco.

homem 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

Obrigado, não havia gastado tempo suficiente lendo o manual para ver essas opções.
chattsm

Algum comando que forçaria uma nova verificação imediata? Suponho que um script de shell contendo R=".rescan.tmp$RANDOM" if [ ! a $R ]; then touch $R; rm $R; fitalvez? Alguma maneira mais limpa?
perfil completo de Jeff Burdges

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.