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

Publicado por Xerxes em 09/02/2026

[ Hits: 81 ]

 


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

Desabilitando monitor do laptop (LVDS1)

Conexão com certificado usando Netcfg no Arch Linux

Prompt colorido no Xubuntu 9.04

Tocar DVD no Arch Linux e no KahelOS

Fique por dentro do VOL

Leitura recomendada

Configurando a roda do mouse

Placa de rede brc4313 no Funtoo

Unity 3D: ícones na "área de notificação"

Instalando fonte bitmap no Debian/Devuan

Mouse não sai do modo natural [Resolvido]

  

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