†††††††††††††††††††††††††††††††††††††
||  O R D O   ✠   E X   C H A O S  ||
†††††††††††††††††††††††††††††††††††††
  

Scientia contra Deum - et ad Deum.

Veritas est ignis.

Documentando minha experiência no VoidLinux

HP All-in-One E-350

2025-10-13

Hoje comecei a explorar o VoidPuppy64 no hardware real. Na leitura do que vem a ser o dito sistema entendo que VoidPuppy é o casamento estranho entre o Puppy (leve, modular, feito pra rodar em qualquer tralha velha) e o Void Linux (minimalista, rolling release, tudo na base do xbps). Essa mistura dá uma distro pequena, rápida e, claro, que exige mais atenção.

Sistema que nunca tem versões fixas, denominadas “rolling release”; atualizado continuamente sem reinstalar, me parece bom… até quando, não sei!

8. Instalação Frugal

Mesmo instalado no HD, o VoidPuppy roda em modo frugal, com camadas sobrepostas (AUFS). > mount | grep “on /” > unionfs on / type aufs (rw,relatime,si=6a0fd99e3eb79185)

O processo que inicia o sistema é extremamente minimalista, suficiente para tarefas leves e multitarefa de navegador + apps web. > ps -p 1 -o comm= > busybox

find / -name init 2>/dev/null /usr/share/alsa/init /initrd/init /initrd/pup_ro2/sbin/init /initrd/pup_ro2/usr/share/alsa/init /initrd/mnt/dev_save/vpup6422.02frugal/vpup64save/initrd/init /sbin/init

Observações: - Em FHS puro, você esperaria init apenas em /sbin/init. - No Puppy/VoidPuppy, init está espalhado em múltiplos lugares, incluindo /initrd e subpastas do savefile. - Isso mostra a natureza modular e frugal do sistema: arquivos do sistema principal, init e módulos estão onde o Puppy acha melhor, não no layout tradicional de Linux.

Portanto, não se aplica a “copia os arquivos principais para /puppy ou /boot/voidpup”, porque o Puppy mantém essas camadas em lugares separados (/initrd, .sfs, RAM, savefile), não em um diretório fixo tipo /boot.

Procura por arquivos de configuração em /root

find /root -type f | grep -i config /root/.config/lxterminal/lxterminal.conf /root/.config/micro/bindings.json /root/.config/geany/session.conf … /root/.config/save-exclude.lst /root/.oh-my-bash/.git/config

Panorama do sistema: >/ (root do sistema - AUFS)

/ (root do sistema - AUFS)
├─ camada base (.sfs)               → sistema principal, somente leitura
│   ├─ kernel, libs, comandos básicos
│   └─ aplicativos essenciais
├─ camada de módulos (.sfs apps)    → aplicativos grandes montados dinamicamente
│   ├─ Palemoon.sfs
│   ├─ LibreOffice.sfs
│   └─ outros .sfs que montar
├─ camada temporária (RAM)          → alterações da sessão atual
│   ├─ configs modificados
│   ├─ arquivos criados temporariamente
│   └─ operações do dia-a-dia
└─ camada persistente (savefile)    → alterações entre reinicializações
    ├─ configs salvos
    ├─ arquivos criados permanentemente
    └─ personalizações do usuário

Explicação prática: - Camada base (.sfs): é só leitura, garante que o sistema sempre tenha uma base limpa. - Módulos .sfs: programas grandes não “poluem” o sistema, são carregados sob demanda. - RAM (camada temporária): tudo que você altera durante a sessão vai para cá. - Savefile/savefolder: quando salvo, tudo que estava na RAM é gravado aqui e persistirá no próximo boot.

Fluxo de trabalho resumido: - Liga o computador → AUFS monta camadas - Alterações vão para RAM - Ao desligar, GUI pergunta se quer salvar - Se salvar → alterações vão para o savefile

Próximo boot → AUFS combina .sfs + RAM + savefile para iniciar a sessão persistente

9. Savefile — Persistência manual no VoidPuppy

O savefile é o arquivo onde o Puppy/VoidPuppy guarda todas as alterações feitas durante a sessão. Até ser criado e montado, tudo que você faz fica apenas na RAM (camada temporária AUFS).

Há uma partição montada mas não é um savefile ativo do Puppy. Esse é apenas o ponto de montagem do dispositivo/partição onde você poderia criar o savefile.

Reinicie o sistema e monte novamente o savefile: > mount -o loop /initrd/mnt/dev_save/voidpuppy_savefile.fs /mnt/save > cat /mnt/save/teste.txt

10. Monitoramento em tempo real

Para observar uso real do sistema, executei: > vmstat 1

Cenário de teste: - Browser Neocities (edição do site) - WhatsApp Web - Terminal ativo

r b swpd free buff cache si so bi bo in cs us sy id wa st gu 9 0 0 294832 39364 2241164 0 0 0 0 1416 2917 84 12 3 0 0 0 1 0 0 295196 39364 2240144 0 0 0 0 1662 2348 78 12 11 0 0 0 1 0 0 304072 39364 2239992 0 0 0 2680 1442 2053 17 5 78 0 0 0

Interpretação resumida: - swpd = 0 → Nenhum uso de swap. A RAM dá conta de tudo. - free ~295 MB / cache ~2.2 GB → Kernel usa cache de forma agressiva, acelerando I/O. - si/so = 0 → Nenhum tráfego de swap, boa eficiência de memória. - bi/bo próximos de 0 → Disco quase ocioso, sem I/O intenso. - us/sy/id = 84/12/3% → CPU em uso ativo, sem gargalo. - wa (wait) = 0% → Nenhuma espera por disco, ótimo sinal de responsividade.

Conclusão: Mesmo em hardware de 2011, o VoidPuppy mostra estabilidade e gerenciamento eficiente de recursos. O kernel prioriza cache e mantém o sistema reativo, sem queda perceptível de desempenho durante multitarefa leve.