RSYNC Exclui Directory

RSYNC Exclui Directory

O comando rsync em um sistema Linux pode ser usado para sincronizar o conteúdo de dois diretórios. Por padrão, o RSYNC transferirá todos arquivos e diretórios para o destino especificado. Se houver um subdiretório que você deseja excluir da transferência, o RSYNC nos oferece duas opções para fazê -lo.

Neste tutorial, mostraremos dois métodos para excluir um ou vários diretórios de uma transferência do RSYNC. Siga junto com os comandos de exemplo abaixo em seu próprio sistema para configurar um diretório para exclusão.

Neste tutorial, você aprenderá:

  • Como excluir um diretório no comando rsync
Excluindo um diretório da transferência do RSYNC Requisitos de software e convenções de linha de comando Linux
Categoria Requisitos, convenções ou versão de software usada
Sistema Qualquer distro Linux
Programas rsync
Outro Acesso privilegiado ao seu sistema Linux como raiz ou através do sudo comando.
Convenções # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de sudo comando
$ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular

Exclua diretório no rsync



A primeira opção que abordarmos é usar o --excluir opção no comando rsync. Veja como seria usado para excluir o diretório LinuxConfig No comando de exemplo abaixo.

$ rsync -av --exclude linuxconfig/path/to/src//path/to/dest/ 

No comando acima, estamos sincronizando o conteúdo de /caminho/para/src com o de /PATH/TO/DEST e omitindo o LinuxConfig diretório. Observe, no entanto, que o caminho para LinuxConfig é relativo ao do nosso caminho de origem, o que neste caso é /caminho/para/src. Portanto, o RSYNC assume que o diretório LinuxConfig está dentro de /caminho/para/src.

Mas e se o LinuxConfig O diretório é realmente um pouco mais profundo em nosso diretório de origem? Digamos que o caminho absoluto para o diretório que desejamos excluir é realmente /path/to/src/algum/subdir/linuxconfig. Nesse caso, nosso comando rsync ficaria assim:

$ rsync -av --exclude alguns/subdir/linuxconfig/path/to/src//path/to/dest/ 

Agora, que tal vários diretórios? Podemos usar tantos --excluir opções como queremos. Vamos tentar excluir três diretórios de nossa transferência do RSYNC com este comando:

$ rsync -av --exclude alguns/subdir/linuxconfig --exclude alguns/outros/dir --exclude Exampledir/path/to/src//path/to/dest/ 

O comando acima fará seu trabalho como esperado, mas como você pode ver, o comando se torna gradualmente mais pesado à medida que prendemos diretórios mais excluídos. E se quisermos excluir 15 diretórios? Esse comando será uma monstruosidade. Mas é aí que rsyn'c outra opção --exclua-se entra em jogo.

O --exclua-se A opção RSYNC nos permite especificar um arquivo que contém uma lista de diretórios a serem excluídos. O arquivo deve ser simples, então um simples .O arquivo txt fará. Liste um diretório por linha enquanto você está compilando a lista de diretórios que deseja excluir.



$ CAT exclui-list.txt algum/subdir/linuxconfig algum/outro/DIR Exampledir 

Com o nosso arquivo de exclusões criadas, agora podemos fazer referência ao nosso comando RSYC:

$ rsync -av --exclude-from = 'exclude-list.txt '/path/to/src//path/to/dest/ 

Agora estamos excluindo os mesmos três diretórios de antes, mas nosso comando é muito mais conciso e podemos continuar adicionando mais diretórios ao nosso arquivo de exclusão, conforme necessário.

Conclusão

Neste artigo, aprendemos dois métodos para excluir um ou vários diretórios de um comando rsync no Linux. Uma opção é boa para um pequeno número de exclusões e a outra é mais apropriada quando você tem uma longa lista de diretórios que deseja excluir. Mas a função principal deles é a mesma e você deve usar o que for melhor para o seu cenário de backup.

Tutoriais do Linux relacionados:

  • Exemplos RSYNC no Linux
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Coisas para instalar no Ubuntu 20.04
  • Como montar a imagem ISO no Linux
  • Comandos básicos do Linux
  • Comandos Linux: os 20 comandos mais importantes que você precisa para…
  • Como remover o diretório e o conteúdo do Linux
  • Sistema Linux Hung? Como escapar para a linha de comando e…
  • Coisas para fazer depois de instalar o Ubuntu 22.04 Jellyfish…
  • Uma introdução à automação, ferramentas e técnicas do Linux