# Auto Update Fedora (pós-instalação) + systemd Script e serviço `systemd` para (opcionalmente) remover alguns pacotes padrão do Fedora, atualizar automaticamente o sistema e reiniciar quando necessário. ## Instalação 1. Salve o script: Neste repositório, o script está em `fedora_pos_instalacao_auto_update.sh`. Você pode instalar direto dele: ```bash sudo install -m 755 fedora_pos_instalacao_auto_update.sh /usr/local/bin/auto-update.sh ``` Ou crie/edite manualmente: ```bash sudo nano /usr/local/bin/auto-update.sh ``` Cole o conteúdo do script e salve (`Ctrl+O`, `Enter`, `Ctrl+X`). 2. Dê permissão de execução: ```bash sudo chmod +x /usr/local/bin/auto-update.sh ``` 3. Crie o serviço `systemd`: ```bash sudo nano /etc/systemd/system/auto-update.service ``` Cole este conteúdo: ```ini [Unit] Description=Atualização automática do sistema After=network-online.target Wants=network-online.target [Service] Type=oneshot ExecStart=/usr/local/bin/auto-update.sh StandardOutput=journal StandardError=journal [Install] WantedBy=multi-user.target ``` 4. Ative o serviço: ```bash sudo systemctl daemon-reload sudo systemctl enable auto-update.service ``` 5. Instale o pacote necessário (se não tiver): ```bash sudo dnf install dnf-utils -y ``` ## O que o script faz - Executa como `root` (se não for `root`, ele encerra e registra erro no log) - Remove pacotes (se existirem) e depois roda `dnf autoremove -y` para limpar dependências órfãs: - `libreoffice-*` - `gnome-tour` - `yelp` - `gnome-boxes` - `totem` - `gnome-maps` - `gnome-weather` - `gnome-contacts` - `gnome-clocks` - Atualiza o sistema com `dnf upgrade -y` - Verifica se precisa reiniciar usando `needs-restarting -r` (do pacote `dnf-utils`) e também checa `/var/run/reboot-required` se existir - Se precisar reiniciar, aguarda 30 segundos e reinicia - Registra toda a execução em `/var/log/auto-update.log` Se você não quiser remover esses pacotes, edite a lista na seção `dnf remove -y` do script. ## Teste e logs Para testar sem esperar o boot: ```bash sudo systemctl start auto-update.service ``` Para ver os logs: ```bash sudo journalctl -u auto-update.service -f ```