Como manter arquivos e diretórios sincronizados em diferentes dispositivos usando a sincronização no Linux

Como manter arquivos e diretórios sincronizados em diferentes dispositivos usando a sincronização no Linux

A sincronização é definida como um programa de sincronização de arquivos contínuos: pode ser usado para manter arquivos e diretórios sincronizados em diferentes dispositivos ou "nós". O aplicativo usa o TLS como método de criptografia e é, juntamente com seu protocolo, software de código aberto e livre e de código aberto. Ao usar a sincronização, nossos dados permanecem em nosso dispositivo e são transferidos diretamente para o destino sem transmitir em um servidor central (ponto a ponto). Neste tutorial, veremos como instalar, configurar e usar a sincronização no Linux.

Neste tutorial, você aprenderá:

  • Como instalar a sincronização nas distribuições Linux mais usadas
  • Como configurar o firewall para a sincronização funcionar corretamente
  • Como compartilhar e manter um diretório sincronizado em dois dispositivos
  • Como austostart o daemon de sincronização automaticamente no login de usuários
Logotipo de sincronização

Requisitos de software

Requisitos de software e convenções de linha de comando Linux
Categoria Requisitos, convenções ou versão de software usada
Sistema Distribuição Independente
Programas Sincronização
Outro Permissões de raiz
Convenções # - requer que os comandos linux -comidos sejam executados com privilégios de raiz diretamente como usuário root ou por uso de sudo comando
$-exige que o Linux-Commands seja executado como um usuário não privilegiado regular

Instalação



Existem basicamente dois métodos que podemos usar para instalar a sincronização em nossa distribuição favorita do Linux: podemos usar a versão embalada nos repositórios nativos, ou podemos baixar um tarball no site oficial de sincronização. Além disso, apenas se estiver usando o Debian ou o Ubuntu, podemos adicionar o repositório oficial de sincronização como uma fonte adicional de software e instalar o pacote dele.

Instalando a versão nativa

A sincronização está disponível nos repositórios nativos das distribuições Linux mais usadas, como Fedora, Debian/Ubuntu e Archlinux, portanto, podemos instalá -lo facilmente com nosso gerenciador de pacotes favorito. Esta é sempre a maneira recomendada de obter software; O único problema é que, especialmente em distribuições como o Debian "estável", o repositório pode conter versões desatualizadas dos pacotes. Para instalar a sincronização no Fedora, podemos usar o DNF Gerenciador de pacotes e emita o seguinte comando:

$ sudo dnf install sincher 

Em Debian e seus muitos derivados, em vez disso, podemos correr:

$ sudo apt install sincthing 

No Archlinux, podemos usar Pacman Para instalar o pacote de sincronização, que faz parte do repositório "comunitário". Obtendo o software, é apenas uma questão de lançar nosso emulador de terminal e executar:

$ sudo pacman -y sincher 

Baixando um tarball



O segundo método de instalação de sincronização consiste em baixar o Linux Tarball dedicado da seção de downloads do site oficial. Devemos baixar o arquivo que contém a versão compatível com a arquitetura do nosso sistema. Se estamos usando o Debian ou o Ubuntu, também podemos adicionar o repositório oficial às nossas fontes de software e depois instalá -lo usando apt.

Configurando o firewall

Antes de executarmos a sincronização, para que funcione corretamente, devemos configurar algumas regras do firewall para permitir o tráfego de certas portas. Versões recentes dos gerentes de firewall do Firewalld e UFW, já vêm com um serviço pré-configurado para sincronização (aqui com a palavra "serviço", queremos dizer um conjunto definido de regras). Se estiver usando o firewalld, para ativar o serviço e, assim, permitir o tráfego através das portas necessárias), devemos executar:

$ sudo firewall-cmd --permanent --Add-Service = Syncthing && sudo firewall-cmd--reload 

Observe que, com o comando acima, uma vez que nenhuma zona é especificada, o serviço será adicionado ao "padrão". Se quisermos adicionar o serviço a uma zona específica, devemos especificá -lo com o --zona opção, passando o nome da zona como argumento. Para reunir informações sobre o serviço e ver quais portas estão incluídas, podemos executar:

$ sudo firewall-cmd--info-service = personalizado 

A saída do comando acima é o seguinte:

Portas de sincronização: 22000/TCP 21027/UDP Protocolos: Fonte-Ports: Módulos: Destino: Inclui: Ajudantes: 


Como podemos ver, as portas "envolvidas" no serviço são 22000/TCP e 21027/UDP. Se estivermos usando o UFW (firewall não complicado), para ativar o serviço, devemos executar:

$ sudo ufw permitir a sincronização 

Usando a sincronização

Para iniciar o daemon de sincronização, tudo o que precisamos fazer é invocar o binário de sincronização de nosso terminal:

$ sincronização 

A sincronização vem com uma interface da web que pode ser usada para gerenciar o aplicativo, adicionar diretórios compartilhados e dispositivos remotos. Depois que executamos o comando acima, o daemon de sincronização é lançado e uma guia do navegador da web é automaticamente aberta para o 127.0.0.1: 8384 endereço, que é onde a interface pode ser alcançada.

O diretório compartilhado de sincronização padrão é ~/Sync; e todos os outros que devem ser sincronizados são exibidos na coluna esquerda da interface. Na coluna direita, em vez disso, podemos ver informações sobre a sincronização do dispositivo em execução e uma lista de dispositivos remotos associados associados. No nosso caso, a lista ainda está vazia:

A interface da Web de sincronização a interface da Web de sincronização

Para adicionar uma máquina remota e compartilhar um diretório, o que precisamos fazer é trocar IDs de dispositivos. Para verificar um ID do dispositivo, podemos clicar no botão "Ações" no lado superior direito da interface da web e clicar em "Mostrar ID". O ID do dispositivo atual será exibido junto com o correspondente QRCode:

Verificação do dispositivo

Para que o aplicativo funcione corretamente, os dois (ou mais dispositivos) devem conhecer seus respectivos IDs. Na próxima seção, veremos como adicionar um dispositivo remoto.

Adicionando um dispositivo

Para começar a sincronizar um diretório, precisamos adicionar um dispositivo remoto à nossa configuração. Para o bem deste tutorial, usarei a máquina Linux, onde instalamos a sincronização como a sincronização "fonte", enquanto o sistema remoto será um dispositivo Android (a sincronização pode ser facilmente instalada na Google Play Store); Os dois dispositivos devem estar conectados à mesma LAN.

Clicamos no botão "Adicionar dispositivo remoto" na parte inferior direita da interface da web. Na guia Fist da janela pop-up que será aberta, precisamos inserir o ID do dispositivo complementar e um nome opcional amigável ao ser humano:



Adicionar Dispositivo

Como você pode ver, se a descoberta automática funcionar como deveria, o outro dispositivo de sincronização na LAN deve ser descoberto e relatado automaticamente na lista de "dispositivos próximos". Nesses casos, tudo o que precisamos fazer é clicar no
link correspondente e o campo de entrada de identificação será preenchido automaticamente.

Na segunda guia, “Compartilhando”, podemos selecionar quais diretórios queremos compartilhar com o dispositivo complementar. Nesse caso, selecionamos o padrão:

Adicione o compartilhamento de dispositivos

Uma coisa conveniente a fazer é verificar a caixa de seleção "aceitar automaticamente": dessa maneira, o sistema não nos leva a confirmar se queremos aceitar a sincronização do diretório oferecido pelo sistema remoto, mas o criará automaticamente.



A terceira guia contém “configurações avançadas”. Aqui podemos optar por inserir um endereço estático para o dispositivo remoto, se tiver alguma descoberta dinâmica e dinâmica não funciona. Também poderíamos escolher o limite de taxa de entrada e saída para o dispositivo e quais dados devem ser compactados (todos os dados vs apenas metadados - o padrão).

Adicione o dispositivo avançado

Uma vez feito, podemos clicar no botão "Salvar". O dispositivo remoto deve aparecer na lista na página principal. No outro dispositivo, executamos a mesma operação (observe que no aplicativo Android, clicando no menu "Hamburger", temos a opção de usar a interface da web) e adicionar nosso ID do dispositivo "fonte". Depois que os dois dispositivos estiverem emparelhados corretamente, seu status deve começar a sincronizar. Depois que o processo de sincronização for concluído, eles serão relatados como "atualizados":

Dispositivos remotos

Neste ponto.

AutoStart o daemon de sincronização



Para fazer o daemon de sincronização iniciar automaticamente, podemos usar o Systemd, que é o Linux Init Manager. Nesse caso, vamos iniciá-lo como um serviço por usuário, para que não precisaremos de privilégios administrativos. Quando um serviço é configurado dessa maneira, ele será iniciado apenas quando o usuário fizer login.

A primeira coisa que queremos fazer é copiar o arquivo de serviço Systemd para o diretório apropriado. Se instalarmos a sincronização a partir dos repositórios nativos de nossa distribuição Linux, esse arquivo deve ser: /usr/lib/systemd/user/sincronização.serviço; Se baixarmos o tarball do site de sincronização oficial, o arquivo deve ser encontrado dentro do etc/linux-systemd/usuário diretório.

Nós criamos o ~/.Config/Systemd/Usuário diretório se ainda não existir e copiar o arquivo dentro dele:

$ mkdir -p ~//.config/systemd/user && cp/usr/lib/systemd/user/syncthing.serviço ~///.Config/Systemd/Usuário 

Depois que o arquivo estiver no lugar, executamos o seguinte comando para ativar o serviço:

$ Systemctl -Habilitar sincronização.serviço 

Conclusões

Neste tutorial, aprendemos a instalar e configurar a sincronização, um aplicativo muito punhado que vamos manter um ou mais diretórios sincronizados entre vários dispositivos, sem a necessidade de usar um servidor "central". Vimos como instalar o aplicativo, como configurar o firewall para permitir o tráfego através das portas necessárias, como compartilhar um diretório entre dois dispositivos e como automaticamente o daemon de sincronização quando um usuário faz login.

Tutoriais do Linux relacionados:

  • Coisas para instalar no Ubuntu 20.04
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Como configurar um servidor OpenVPN no Ubuntu 20.04
  • Mastering Bash Script Loops
  • Como fazer bota dupla kali linux e windows 10
  • Coisas para instalar no Ubuntu 22.04
  • Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
  • Arquivos de configuração do Linux: os 30 primeiros mais importantes
  • Download do Linux