Sincronização P2P de arquivos entre máquinas Gentoo com Syncthing (Sem nuvem)

Publicado por Xerxes em 18/02/2026

[ Hits: 90 ]

 


Sincronização P2P de arquivos entre máquinas Gentoo com Syncthing (Sem nuvem)



Introdução

Se você possui mais de uma máquina (como um desktop principal e um servidor doméstico ou notebook) e precisa manter pastas específicas idênticas em ambas — como seus scripts pessoais, saves de jogos (Doom, por exemplo) ou documentos de RPG — o Syncthing pode ajudar.

Diferente do Dropbox ou Google Drive, ele não envia seus dados para terceiros. A sincronização ocorre diretamente de dispositivo para dispositivo (P2P) na sua rede local, garantindo privacidade total e velocidade máxima.

Nesta dica, vou mostrar como configurar o Syncthing no Gentoo usando Systemd, focando na sincronização de pastas na /home do usuário.

Linux: Sincronização P2P de arquivos entre máquinas Gentoo com Syncthing (Sem nuvem)

1. Instalação (Em ambas as máquinas)

Como estamos no Gentoo, o processo é via Portage. Execute o comando abaixo nas duas máquinas que você deseja conectar:

sudo emerge -av net-p2p/syncthing

2. Rodando como Usuário

Muitos tutoriais ensinam a rodar o serviço como root, o que causa uma enorme dor de cabeça com permissões de arquivos na sua pasta pessoal. O jeito correto ("Gentoo way") para sincronizar seus arquivos pessoais é rodar o serviço no nível de usuário.

Não use sudo aqui. Logado com seu usuário comum (ex: xerxes), ative o serviço:

systemctl --user enable --now syncthing

Isso garante que o Syncthing tenha exatamente as mesmas permissões que você, evitando que arquivos fiquem "trancados" como root.

3. Acessando a Interface e Criando Senha

O Syncthing não tem uma janela de aplicativo nativa; ele roda no navegador. Abra seu browser e acesse:


Logo no primeiro acesso, ele vai avisar que a interface está desprotegida.

1. Vá em Ações (Canto superior direito) > Configurações.
2. Na aba GUI, defina um Usuário e Senha.
3. Salve. A página irá recarregar pedindo login. Faça isso nas duas máquinas.

4. Conectando as Máquinas

Para que sincronia aconteça, um PC precisa conhecer o outro.

1. Na Máquina A, vá em Ações > Mostrar ID. Copie o código longo alfanumérico.

2. Na Máquina B, clique no botão "Adicionar Dispositivo" (canto inferior direito).

3. Cole o ID da Máquina A. Na aba "Avançado", você pode dar um nome amigável (ex: "Servidor Gentoo"). Salve.

4. Volte para a Máquina A. Uma notificação amarela aparecerá no topo: "O dispositivo X quer se conectar". Clique em Adicionar.

Agora elas estão pareadas!

5. Sincronizando Pastas

Vamos supor que você queira sincronizar sua pasta de scripts (~/scripts) e seus jogos (~/doom).

Na máquina onde os arquivos já existem:

1. Clique em "Adicionar Pasta".

2. Rótulo da pasta: Dê um nome (ex: Scripts).

3. Caminho da pasta: O caminho real no disco (ex: /home/seu_usuario/scripts).

4. Aba Compartilhamento:. Marque a caixa de seleção da outra máquina que você pareou no passo anterior.

5. Clique em Salvar.

Vá até a outra máquina. Uma notificação aparecerá: "O dispositivo X quer compartilhar a pasta 'Scripts'". Clique em Adicionar, confirme o caminho onde deseja salvar e pronto!

Conclusão

A partir de agora, qualquer alteração, novo script criado ou save game salvo em uma máquina será replicado instantaneamente para a outra via rede local. Se você desligar uma, assim que ela ligar novamente, o Syncthing detecta as mudanças e atualiza tudo automaticamente.

Simples, seguro e sem depender da nuvem de ninguém.

Obs.: se você tentar sincronizar "/home/usuario" inteira "cegamente", você vai sincronizar também os arquivos ocultos de configuração. Isso pode quebrar seu sistema. Em vez de apontar para "/home/usuario" (a raiz), crie pastas compartilhadas específicas dentro do Syncthing.
Outras dicas deste autor

Ativando e usando "zoom" no ambiente Cinnamon

apt - E: Sub-process /usr/bin/dpkg returned an error code (1) [Resolvido]

Como rodar Forays no Linux

SimpleScreenRecorder no Debian

Frostwire - o que é e como instalar

Leitura recomendada

Instalação e configuração do ICINGA2 e ICINGA WEB2 no Debian 9

Alterar o endereço MAC da interface de rede em 3 passos

Verificar se determinada porta está aberta com o comando echo (funciona remoto)

Instalação e configuração do Grafana/Zabbix no Debian 9

Acessando compartilhamento sem usar mount - SMBCLIENT

  

Comentários
[1] Comentário enviado por Carlos_Cunha em 18/02/2026 - 23:25h

Legal :-D
Duvidas:

No seu exemplo com dois Hosts, o sync e bi-direcional ? ou seja o A -> B e do B -> A ?

Se tiver mais hosts, A.B, C ? funciona também de todos para todos ? E como é conflito de dados se ocorrer ?

#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#

[2] Comentário enviado por xerxeslins em 19/02/2026 - 08:59h


[1] Comentário enviado por Carlos_Cunha em 18/02/2026 - 23:25h

Legal :-D
Duvidas:

No seu exemplo com dois Hosts, o sync e bi-direcional ? ou seja o A -> B e do B -> A ?

Se tiver mais hosts, A.B, C ? funciona também de todos para todos ? E como é conflito de dados se ocorrer ?

#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#



Sim, é bidirecional!

Sim, funciona com múltiplos hosts (A, B, C, etc). Mas eu só cheguei a testar com dois.

Sobre conflitos ele não sobrescreve. ele salva as duas versões. Uma delas ganha o sufixo no nome do arquivo, permitindo que você escolha qual manter.

Exemplo aqui:

launcher.py

launcher.sync-conflict-20260218-175435-THTFMEA.py

O mais recente ficou com o nome normal, e o antigo recebeu esse sufixo de conflito.

Aí posso deletar, renomear etc.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts