Sincronizar automaticamente uma pasta com um USB quando o USB estiver conectado?


10

Existe uma maneira de sincronizar uma pasta com uma unidade USB quando a unidade está conectada? Gostaria de sincronizar ou copiar as alterações nos dois sentidos. Eu vi os aplicativos Back In Time e Unison-GTK, mas gostaria que ele fosse executado assim que a unidade fosse montada. O que eu quero dizer é que, sem intrusivamente, sincronize as duas pastas sem nenhuma entrada minha, além de configurá-la.

Se isso não for possível, é possível executar o aplicativo quando o pen drive estiver conectado para me lembrar de sincronizar manualmente?

Obrigado!


1
Como você planeja lidar com conflitos de arquivos?
Octavian A. Damiean

Respostas:


4

Eu pessoalmente me inclinaria udevpara algo assim. udevé o subsistema responsável por manipular o hardware quando ele é conectado, ou seja, depois que o kernel o carrega.

Entre uma infinidade de outros recursos, ele pode executar um script. No seu caso, acho que poderia montar a unidade em algum lugar e executar os recursos de sincronização necessários.

Eu já escrevi como escrever um script udev simples, por isso vou apontar para você.

Para a sincronização real, você precisa de outra coisa. gité um aplicativo de controle de versão muito popular que você pode facilmente alterar conforme sua vontade. E há opções de backup padrão como rsyncessa, para que você possa mesclar conflitos (apenas não tão bem quanto algo assim git).


0

Você pode tentar criar um arquivo chamado .autorun no diretório raiz da sua unidade USB e tornar o conteúdo o comando que você deseja executar, como /usr/bin/rsync -av /dir/you/want/to/sync /place/to/sync/to.


Eu fiz isso sozinho por um tempo. .autoruntrabalhou em versões anteriores, mas não nas últimas versões do Ubuntu. Ainda não encontrei um substituto adequado.
Shawn J. Goff

5
.autoruné um potencial pesadelo de segurança. Existem alguns vírus que se espalham através de unidades flash. Suponho que eles fizeram a coisa brilhante e desativaram.
Reuben Swartz
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.