[Distro/Desktop] Otimizando o systemd - 14 passos -1 removido - 1 alterado - atualizado 31/08/2025 - adiconado mais 1

$ systemd-analyze --user critical-chain
The time when unit became active or started is printed after the “#” character.
The time the unit took to start is printed after the “+” character.

default.target #8.914s
└─pulseaudio.service #1.010s +7.903s
└─basic.target #1.008s
└─sockets.target #1.008s
└─dbus.socket #998ms +10ms
└─-.slice #549ms

Vamos lá.

vc usa ssd

vc pode mascarar as seguintes units
o plymounth-wait as vezes atrasa a inicalização, principalmente se tiver um ssd.

plymouth-quit-wait.service

e desativar as units
NetworkManager-wait-online.service
avahi-daemon.service e avahi-daemon.socket - pode ser feito no manual, não vejo necessidade desta unit
irqbalance.service - pelo menos aqui, não vejo ganho de tempo com este serviço
rsyslog.service e syslog.service vc pode usar o jounalctl

link: https://plus.diolinux.com.br/t/guia-maximizando-a-performance-dos-seus-jogos-no-linux/1117

ondemand.service

motd-news.timer

site: Disable motd news or (parts of) the dynamic motd on Ubuntu - Raymii.org
motd-news.timer

se não usa ssd
fstrim.timer

site:O que é o processo de 'whoopsie' e como posso removê-lo?
whoopsie.service

se não usa agendar personalizado
cron.service
anacron.service

As seguintes units já são carregadas automaticamente, sem a necessidade de colocar para iniciar
accounts-daemon.service
udisks2.service

para mascarar

systemctl mask unit

para desativar

systemctl disable unit

Faça também os processos

appapmor
Para habilitar o cache AppArmor , descomente:

/etc/apparmor/parser.conf

## Turn creating/updating of the cache on by default
write-cache

journal

/etc/systemd/journald.conf
SystemMaxUse=100M
SystemMaxFiles=5 # manter no máximo 5 arquivos
MaxFileSec=1month # deletar logs velhos depois de 1 mês

logrotate
maxsize 100M # tamanho máx do arquivo
size 100M # tamanho do arquivo
delaycompress # não comprime na primeira rotação .1

e habilite o timer no boot

sudo systemctl restart logrotate.timer
sudo systemctl logrotate.timer

veja se já melhora…

qualquer dúvida é só perguntar…
até

2 curtidas

Muito obrigado @swatquest, vou fazer isso tudo amanhã cedo .
Agradeço gradiosamente pela sua atenção e generosidade!
Vou te responder assim que eu fizer as mudanças necessárias.

Fique com Deus e até!

Oi pessoal.

Vi que os passos ainda funcionam.

Instalei o kde do debian em um notebook dell, de 55 segundos foi para 12 segundos no total com um ssd.

só que o Décimo passo: Otimizando o agendador do kernel pela udev

para quem tem nvme

mude o arquivo

/etc/udev/rules.d/60-scheduler.rules

para

# set scheduler for NVMe
ACTION=="add|change", KERNEL=="nvme[0-9]n[0-9]", ATTR{queue/scheduler}="none"
# set scheduler for SSD and eMMC
ACTION=="add|change", KERNEL=="sd[a-z]|mmcblk[0-9]*", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="mq-deadline"
# set scheduler for rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="bfq"

Assim não terá erro.

Depois tento trocar na primeira mensagem deste tópico

@thespation

Se puder, troque na primeira mensagem.
:+1:

3 curtidas

Vê se consegue editar agora.

Consegui.

:+1:

1 curtida

estou installando serviços agora.

devo ainda tirar alguns

no momento o tempo está assim

estou adicionando e tirando serviços

no momento no notebook está assim

$ systemd-analyze
Startup finished in 3.992s (kernel) + 5.711s (userspace) = 9.704s
graphical.target reached after 5.710s in userspace.

$ systemd-analyze --user blame | head -1
8.320s xdg-desktop-portal.service

$ echo $((9704+8320))
18024

18 segundos..

antes somando tudo deviria ter mais de 1 minuto, não cheguei a ver a soma total. Só a do sistema 50 segundos.

Nesta semana devo colocar mais alguns passos.

Parâmetros do kernel

vga=current usa para evitar comportamentos estranhos FS#32309 : [systemd] quiet boot flashes grey background and is not really quiet

loglevel=3 systemd.show_status=auto rd.udev.log_level=3

Só para deixar mensagens importantes no boot, o resto é oculto.

systemd.gpt_auto=no

systemd.gpt auto=no não é uma opção direta de configuração, mas sim uma forma de indicar que o systemd-gpt-auto-generator (um componente do systemd) deve ser desabilitado em um sistema UEFI. O systemd-gpt-auto-generator é responsável por montar automaticamente partições como /, /home, /boot, etc., usando as informações da partição GPT e a especificação de partições descobríveis. Desabilitá-lo impede essa automação, exigindo configurações manuais no fstab ou na linha de comando do kernel para montar as partições.

Se está tudo configurado no /etc/fstab, pode desativar isso com
systemd.gpt_auto=no

fbcon=nodefer

fbcon=nodefer é uma opção de inicialização (kernel parameter) usada em sistemas Arch Linux para impedir que o console do framebuffer (fbcon) seja “adiado” durante o processo de boot. Isso significa que, ao invés de aguardar que o ambiente gráfico principal esteja pronto para exibir informações, a saída do framebuffer é mostrada imediatamente, o que pode ser útil para depurar ou para ter acesso a um console básico durante a inicialização do sistema

Útil para desabilitar o logo da placa durante a inicialização do sistema

Segue os parâmetros completo.

vga=current loglevel=3 systemd.show_status=auto rd.udev.log_level=3 systemd.gpt_auto=no fbcon=nodefer

1 curtida

Rapaz, que tópico maravilhoso!

Tenho que agradecer imensamente por você ter compartilhado isso. Imagino o trabalho que deu — e o sofrimento da sua máquina com tantas reinicializações :joy:. Essas dicas não são nada fáceis de encontrar, e tê-las assim, mastigadinhas, é uma bênção pra nós.

Voltei a usar o Debian, uma paixão que não acaba. Depois de passear pelo Void Linux e pelo Alpine, eu me sentia um pouco incomodado com o boot do Debian. Mas, aplicando suas dicas, percebo que a situação melhorou bastante.

Eu tinha um certo preconceito com o systemd, mas vejo agora que era pura ignorância da minha parte. Tirando um tempo para estudar, dá pra extrair muito suco dessa fruta.

Outra dica que somei com essa foi de ativar linux-cpupower no debian, essa tambem tenho que dar minha gratidao ao @anon48453804

Gostaria de apenas acrecentar um ponto no Oitavo passo: Habilitando cliente NTP nativo do systemd, caso achem interessante de utilizar os servidore do NPT.br.

systemd-timesyncd

Ficou assim meu timesyncd.conf:

NTP=a.st1.ntp.br b.st1.ntp.br c.st1.ntp.br d.st1.ntp.br

Mais uma vez muito obrigado! Estou usando Debian 13 com Xfce e consegui um ótimo desempenho. Só acredito que não ficou melhor porque preciso do virt-manager e o Docker.

Antes - não foi o pior caso pois foi antes de eu ter visto esse topico. Aqui Já havia removido CUPS, SANE e desabilidato o NetworkManager-wait-online.service.

Startup finished in 6.129s (firmware) + 471ms (loader) + 3.179s (kernel) + 8.968s (userspace) = 18.749s 
graphical.target reached after 8.968s in userspace.

Depois - como está agora:

Startup finished in 6.131s (firmware) + 447ms (loader) + 3.111s (kernel) + 5.120s (userspace) = 14.811s 
graphical.target reached after 5.045s in userspace.

Abrass! :hugs:

2 curtidas

@tijolaum

Não há necessidade de iniciar todos os serviços cups.

Não me lembro agora quais são.

Depois vejo e adiciono aqui.

:+1:

1 curtida

@tijolaum

https://plus.diolinux.com.br/t/dica-minimal-initramfs-testado-no-debian-ubuntu-14-09-2025-revisado-e-atualizado/

Veja este tópico

1 curtida

Sobre o cups:

Só deixe habilitado o serviço

cups-browsed.service

1 curtida

Olhando a pasta do /etc/systemd/system observei que ficam muito links quebrados, fiz uma pesquisa e parece ser seguro remover.

”Links quebrados no diretório /etc/systemd/system geralmente são resquícios de pacotes que foram desinstalados incorretamente ou que mudaram a localização de seus arquivos de serviço. A exclusão manual desses links é segura, pois eles não são necessários para o funcionamento do sistema.”

Achei essa solução aqui para deixar a pasta limpinha:

# Listar links quebrados
find /etc/systemd/system -xtype l

# Remover links quebrados
sudo find /etc/systemd/system -xtype l -delete
2 curtidas

Aqui está zerado.

Vou ver se adiciono na primeira mensagem.

:+1:

Olá pessoal :waving_hand:

Inspirado por esse post, me despertou aprofundar no assunto, e hoje gostaria de compartilhar com vocês um repositório que venho montando como material de estudo e referência prática para uso em desktop pessoal com Debian 13, testado a partir de uma instalação limpa.

Antes de tudo, deixo aqui meu agradecimento à comunidade do Diolinux :heart:, em especial ao @swatquest , @cfgnunes , @Henrique_Sardinha , @frc_kde , @eddiecsilva e @anon48453804 que me proporcionaram grande parte do conhecimento aplicado veio de discussões, artigos, comentários e trocas de experiência que acontecem aqui no fórum. Esse projeto é, de certa forma, um reflexo desse aprendizado coletivo.

Debian 13 – Script de Pós-Instalação e Otimizações

A ideia do repositório não é entregar uma solução pronta ou “milagrosa”, mas sim reunir configurações bem documentadas, mantendo o máximo possível do padrão do Debian, aplicando apenas ajustes amplamente recomendados nas documentações oficiais e fontes confiáveis.

:pushpin: O que você vai encontrar por lá:

  • Configurações voltadas para desktop pessoal

  • Ajustes pensados para desempenho, estabilidade e bom uso de energia

  • Comentários explicativos para facilitar o entendimento

  • Estrutura pensada para servir como base de estudo e adaptação

Feedbacks são sempre bem-vindos :slightly_smiling_face:

Abraços!

5 curtidas

Aqui fiz um tópico sobre grub

Não uso mais, mas tem uma certa diferença

:+1:

3 curtidas

Parabéns mn, dei uma olhada rápida, ficou bem massa msm, esses dias eu dei uma sumida do fórum, é q (spoiler), eu tô trabalhando num criador de projetos fish shell, FIPS (Fish Init Project System), e num gerenciador de pacotes de desenvolvimento fish, FSPM (Fish Shell Package Manager), e preparando o terreno pra um projeto maior chamado Fish with Go, um projeto q permitira integrar as 2 linguagens, o Fish, e o Go, e um unico projeto, otimizando ao maximo e focando no uso de, por enquanto, pequenos servidores, homelabs, etc…

1 curtida

Top demais! Bom que vi que estava colocando algumas coisas redundantes. Tem coisas que precisam fazer no Void Linux e no Alpine, mas que no Debian já vem configurado por padrão.

Poisé você está sumidão mesmo! :sweat_smile: Pelo visto você entrou de cabeça no mundo Fish, estou ansioso para ver esses projetos, sei que ficarão top!

1 curtida