spacetrace
FR
Télécharger

Le même scanner, dans votre terminal

Tout ce que fait l'application, sous forme de commande scriptable. Plus un agent qui analyse selon un calendrier, pour qu'une machine où vous ne vous connectez jamais puisse quand même vous dire ce qui est arrivé à son disque.

Installation

curl -fsSL https://raw.githubusercontent.com/unalcakir28/spacetrace/main/install.sh | sh

Installe spacetrace et spacetrace-agent dans /usr/local/bin. Délibérément du sh POSIX sans surprise, parce qu'il doit aussi tourner sur le firmware d'un NAS dont le shell est busybox.

Sous Windows, décompressez l'archive et placez spacetrace.exe dans votre PATH. Il n'y a pas d'installateur pour l'outil en ligne de commande.

Les quatre commandes que vous utiliserez vraiment

Regarder un dossier

Le parcourt et affiche les totaux. Rien n'est enregistré, rien n'est modifié.

$ spacetrace scan ~/projects
scanned 84,213 entries in 1.9s
total 12.4 GiB logical · 12.7 GiB on disk
3 paths could not be read

Conserver le résultat

Enregistre l'analyse comme instantané dans un simple fichier SQLite, avec une étiquette si vous voulez.

$ spacetrace scan /srv --save --label weekly
saved snapshot #1

Demander ce qui a changé

Compare les deux derniers instantanés d'une racine, ou le plus récent avec le disque tel qu'il est maintenant.

$ spacetrace diff --path /srv
#1 2026-09-06 17:23 [weekly]  →  #2 2026-09-06 19:40
total 23.8 MiB → 76.3 MiB   (+52.5 MiB)

      CHANGE  STATUS          NEW  PATH
   +40.1 MiB  grew       42.9 MiB  app/logs/
   +14.3 MiB  grew       25.7 MiB  backups/
    -1.9 MiB  removed         0 B  uploads/

Lire une autre machine

Toute commande en lecture seule accepte --remote. Mêmes sous-commandes, pointées ailleurs.

$ spacetrace --remote nas diff --path /var
#12 2026-09-01 03:00 [nightly]  →  #19 2026-09-08 03:00
total 41.2 GiB → 58.9 GiB   (+17.7 GiB)

      CHANGE  STATUS          NEW  PATH
   +16.9 GiB  grew       21.4 GiB  lib/docker/overlay2/
    +0.8 GiB  grew        3.1 GiB  log/journal/

Facile à piloter par un assistant IA

Chaque commande affiche du JSON, et rien dans l'outil ne peut supprimer un fichier. Vous pouvez donc laisser un assistant analyser une machine, lire les chiffres et expliquer ce qui a rempli le disque — sans écrire de parseur et sans prendre de risque.

  • --json sur chaque commande, donc rien à extraire d'un texte destiné aux humains
  • Lecture seule : aucune suppression à portée d'un modèle
  • Un seul binaire statique, qui s'installe dans n'importe quel conteneur ou bac à sable
  • --remote et du SSH classique, pour qu'un assistant puisse regarder toute une flotte
  • Les totaux correspondent à du et df, donc vous pouvez vérifier ses conclusions

L'agent

spacetrace-agent est le même code sous forme de service. Il analyse selon un calendrier les racines que vous configurez, conserve les instantanés et les sert via HTTP. Un binaire statique — et il ne fait que lire.

Installation complète de l'agent

  • Calendriers cron à cinq champs par racine, avec rétention par nombre
  • Jeton bearer obligatoire ; serve refuse de démarrer sans lui
  • Écoute sur la boucle locale par défaut — exposer un inventaire doit être une décision délibérée
  • /health n'exige aucun jeton, donc un healthcheck de conteneur fonctionne, et ne révèle rien d'autre
  • Les clés de configuration inconnues sont refusées au démarrage plutôt qu'ignorées en silence

Dans un conteneur

Montez l'hôte en lecture seule et analysez-le. L'image contient amd64 et arm64.

docker run -d --name spacetrace \
  -v /:/host:ro \
  -v spacetrace-data:/var/lib/spacetrace \
  -v /etc/spacetrace:/etc/spacetrace:ro \
  -p 7878:7878 \
  ghcr.io/unalcakir28/spacetrace

Vous pouvez lire le code

Le scanner, le stockage des instantanés, la comparaison et les deux binaires sont sous Apache-2.0. Un logiciel que vous installez sur vos propres serveurs doit être un logiciel que vous pouvez inspecter.