Remeter o diretório sshfs - como lidar com isso?

2

Há um monte de arquivos em um diretório remoto que eu quero acessar sobre sshfs e, em seguida, script algumas operações. Na prática, desejo acessar arquivos diferentes em momentos diferentes e executar operações diferentes nesses arquivos.

Opção 1: monte o diretório inteiro (um script). Em seguida, execute qualquer script específico de arquivo de minha escolha.

Opção 2: Agrupe o processo de montagem do diretório junto com o script específico do arquivo.

Desvantagem da opção 1: Antes de executar o script específico do arquivo, esqueço se a pasta está montada. Leva apenas 10 segundos para verificar, mas é uma pequena irritação. Não quero que a pasta seja montada sempre ou por padrão.

Desvantagem da opção 2: Ao processar um segundo ou terceiro arquivo, acabo usando sshfs para montar um diretório remoto que já esteja montado. Isso pode causar algum dano?

Com relação à opção 2, suponho que é possível verificar se o diretório já está montado, assim: Verifique se o diretório foi montado com bash [closed] . Isso soa como a melhor solução?

    
por SauceCode 26.03.2015 / 12:13

1 resposta

2

Falando sobre a "opção 2", não é uma boa ideia montar um diretório remoto já montado. Se você montá-lo em outro ponto de montagem e dependendo de qual é o seu processamento, você perderá o mecanismo de bloqueio. Além disso, por padrão, fuse não fará nenhuma montagem se o ponto de montagem não estiver vazio.

IMHO, a melhor maneira de proceder é o que você diz: verifique se o diretório remoto já está montado e, se não estiver, monte-o. São apenas algumas linhas para anexar no seu script, tão fáceis de gerenciar. Por exemplo:

REMOTE="user@remote:/some/dir"

MOUNTPOINT=$( mount | grep -E "^${REMOTE}/? " | awk '{print $3}' )
if [ -z "$MOUNTPOINT" ] ; then
    echo "Mounting remote directory..."
else
    echo "$REMOTE is already mounted on $MOUNTPOINT"
fi
    
por 26.03.2015 / 14:14

Tags