servidor rsync usando o Windows Subsystem for Linux

1

É possível usar o Windows 10 Windows subsistema para Linux (WSL) para ter um servidor rsync em execução em uma caixa do Windows?

Nós temos um sistema linux rsync que pesquisa caixas do Windows atualmente rodando DeltaCopy, mas ocasionalmente temos problemas estranhos. Esperando que o rsync 'built-in' do WSL melhore as coisas, mas não saiba como fazer com que seja executado como um servidor.

    
por Torfey 17.10.2017 / 15:10

1 resposta

1

Eu consegui que funcione no meu sistema. Não é exatamente um daemon no sentido de um serviço do Windows, mas mais uma tarefa em segundo plano do usuário atual, mas funciona para mim.

Instalação e configuração inicial

Eu instalei o WSL para meu usuário e Debian como o aplicativo Linux de sua preferência. De qualquer forma, ele deve funcionar com qualquer distribuição, pois usa apenas rsync .

No diretório inicial do meu linux, criei dois arquivos: rsyncd.conf e secrets .

O arquivo conf:

auth users = nas
secrets file = /home/peter/rsyncd/secrets
hosts allow = 192.168.1.5,192.168.1.11
log file = /home/peter/rsyncd/rsyncd.log
port = 8730
use chroot = false
read only = false

[N_Almacen]
    path = /mnt/n/Almacen/rsyncd

[N_AlmacenNB]
    path = /mnt/n/AlmacenNB/rsyncd

Estou usando a porta 8730 para evitar ter que executar o daemon como root . Essa também é a razão pela qual eu desativei chroot .

O arquivo de segredos contém nomes de usuário e senhas normalmente.

Como executá-lo

Finalmente a parte complicada. Como rodar isso?

Você pode testá-lo com este comando:

rsync --daemon --config=/home/peter/rsyncd/rsyncd.conf --no-detach

Quando tiver certeza de que a configuração está funcionando, você pode remover a opção --no-detach e o comando gerará uma tarefa em segundo plano. Mesmo se você fechar todos os terminais bash , a tarefa permanecerá em segundo plano.

Como iniciar automaticamente em segundo plano

Agora, como executar automaticamente no login?

Crie um atalho do Windows para C:\Windows\System32\wsl.exe e anexe seu comando depois disso. O comando completo será:

C:\Windows\System32\wsl.exe rsync --daemon --config=/home/peter/rsyncd/rsyncd.conf

Agora você pode colocar este atalho na pasta startup para seu usuário.

    
por 15.05.2018 / 08:40