Gentoo: Sincronização com Git e Automação via Systemd

Publicado por Xerxes em 09/02/2026

[ Hits: 80 ]

 


Gentoo: Sincronização com Git e Automação via Systemd



Manter a árvore do Portage atualizada é essencial no Gentoo, mas o método padrão (rsync) pode ser lento. Nesta dica, vamos migrar o repositório principal para Git e agendar uma sincronização automática às 5h da manhã com Systemd Timers.

1. Ferramentas Necessárias

Para começar, instale o git para a sincronização incremental e o eix para buscas instantâneas:

sudo emerge --ask dev-vcs/git app-portage/eix

2. Migrando para Git

O Git é mais performático que o rsync por baixar apenas as mudanças reais nos arquivos. Crie o arquivo de configuração em /etc/portage/repos.conf/gentoo.conf:

[gentoo]
location = /var/db/repos/gentoo
sync-type = git
sync-uri = https://github.com/gentoo-mirror/gentoo.git
auto-sync = yes

Agora, converta o repositório atual removendo a árvore antiga e sincronizando do zero:

sudo rm -rf /var/db/repos/gentoo

sudo eix-sync

3. Automação com Systemd

Crie o arquivo de serviço /etc/systemd/system/eix-sync.service para definir a tarefa:

[Unit]
Description=Sincronizacao Diaria do Portage e Eix
After=network-online.target

[Service]
Type=oneshot
ExecStart=/usr/bin/eix-sync -q

Crie o timer em /etc/systemd/system/eix-sync.timer para agendar o horário:

[Unit]
Description=Roda o eix-sync diariamente as 5 da manha

[Timer]
OnCalendar=*-*-* 05:00:00
Persistent=true

[Install]
WantedBy=timers.target

4. Ativação e Validação

Recarregue as configurações e ative o agendamento:

sudo systemctl daemon-reload

sudo systemctl enable --now eix-sync.timer

Para validar se o sistema realmente agendou a tarefa, use o comando essencial:

sudo systemctl list-timers eix-sync.timer

Observe os campos NEXT (próxima execução) e LEFT (quanto tempo falta) na saída do comando.

Diferente de scripts no OpenRC, o Systemd Timer é assíncrono, o que garante que o processo de manutenção não trave o boot ou o login. Além disso, o parâmetro After=network-online.target faz com que o serviço aguarde a conexão com a internet antes de iniciar.
Outras dicas deste autor

i3-gaps no Funtoo

Você odeia as notificações do Android? Livre-se delas

Papéis de parede do MIUI no seu Android

Bom Aplicativo Para Ler Mangá no Android

Substituindo o NetworkManager pelo iwd (e iwgtk)

Leitura recomendada

Redirecionamento de portas usando iptables

Hora UTC no Windows 2008 R2 e no VirtualBox

Acesso SSH

Relatório do SARG com o access.log do Dansguardian

Áreas de trabalho realmente novas no KUbuntu 6

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts