PoisonZero installieren: vollständige Referenz
PoisonZero installiert auf jedem Gerät einen kleinen Daemon, der die Memory-Dateien Ihrer Agenten lokal überwacht. Diese Seite dokumentiert den Installer von Anfang bis Ende: die Befehle für die Schnellinstallation, jede Umgebungsvariable, das Datenverzeichnis je Betriebssystem, den Dienst, der den Daemon ausführt, und wie Sie ihn unbeaufsichtigt ausrollen.
Überblick
Was der Installer tut, der Reihe nach:
- Lädt das passende Daemon-Binary von
https://poisonzero.com/dl/latest(Linux/macOS/Windows,amd64oderarm64). - Verifiziert seine SHA-256-Checksumme gegen die veröffentlichte
SHA256SUMS; bricht bei jeder Abweichung ab. - Installiert einen privilegierten Dienst und enrollt das Gerät optional über einen Installationsschlüssel aus dem Panel.
sudo) auf Linux/macOS, eine Administrator-PowerShell auf Windows. Mit PZ_FETCH_ONLY=1 nur herunterladen und verifizieren.Voraussetzungen, die vor der Installation geprüft werden:
- x86-64: AVX2 (Intel Haswell/2013+, AMD Zen+).
- ARM64: i8mm (Apple M2+; Apple M1 nicht unterstützt).
- Windows: Datenverzeichnis auf einem NTFS-Laufwerk.
Schnellinstallation
Erzeugen Sie im Panel einen Installationsschlüssel (oder verwenden Sie einen alten Code je Gerät) und führen Sie den Befehl für Ihre Plattform aus:
curl -fsSL https://poisonzero.com/install.sh | sudo \ PZ_ENROLL_CODE="ihr-code" sh
$env:PZ_ENROLL_CODE="ihr-code" irm https://poisonzero.com/install.ps1 | iex
- Ohne vorab gesetzten Code fragt der Installer nach dem Installationsschlüssel (auf einem echten Terminal zusätzlich Beschleunigungs-/Tier- und Headless-Auswahl); nach einer App-ID wird nur beim alten Verfahren je Gerät gefragt.
- Ein Installationsschlüssel ist mehrfach nutzbar bis zu seiner Einlösungsgrenze; ein alter Code je Gerät bleibt ein Einmal-Code.
- Bereits enrollt und ohne neuen Code erneut ausgeführt = Upgrade: tauscht das Binary, startet den Dienst neu, behält Ihre Credentials.
Installationsschlüssel
Erzeugen Sie einen Installationsschlüssel im Panel unter Installationsschlüssel. Er ist der empfohlene Weg, Geräte zu enrollen:
- Mehrfach nutzbar: Ein Schlüssel enrollt Geräte bis zu der Einlösungsgrenze, die Sie bei der Erzeugung festlegen; jedes Enrollment zählt auf diese Grenze.
- Nur einmal angezeigt: Kopieren Sie ihn bei der Erzeugung - das Panel zeigt ihn danach nicht erneut.
- Widerrufbar: Im Panel widerrufen stoppt sofort weitere Einlösungen; bereits enrollte Geräte laufen weiter.
- Keine App-ID nötig: Das Backend vergibt jedem Gerät seine Kennung erst bei der Einlösung.
Umgebungsvariablen
Nageln Sie jede Option über eine Umgebungsvariable fest, um die Installation nicht-interaktiv auszuführen:
| Variable | Werte | Default | Wirkung |
|---|---|---|---|
PZ_ENROLL_CODE | Installationsschlüssel | keiner | Der Installationsschlüssel aus dem Panel. Für ein frisches Enrollment erforderlich; er genügt allein, da das Backend die Gerätekennung vergibt. Wird ein frischer Schlüssel auf einem enrollten Gerät erneut übergeben, erzwingt das ein bewusstes Re-Enroll. |
PZ_APP_ID | App-ID | keiner | Alt und optional: nur zusammen mit einem älteren Code je Gerät nötig, der vor den Installationsschlüsseln geprägt wurde. Allein wird sie ignoriert. |
PZ_HEADLESS | none, standard, strict | none | Nagelt den Nutzer-Dialog-Umgang auf einer Maschine ohne Desktop-Nutzer fest. none erkennt automatisch aus dem angemeldeten Nutzer; standard/strict schreiben eine headlessmode-Datei, die der Daemon liest. |
PZ_BACKEND | cpu, gpu | cpu | Beschleunigungs-Backend. Nur CPU ist der empfohlene, sicherste Standard. GPU ist Opt-in und zeigt einen Sicherheitshinweis; die GPU-Engine ist noch nicht veröffentlicht. |
PZ_TIER | enterprise, ultra | enterprise | Produkt-Tier. ultra impliziert GPU und ist fail-closed ohne CPU-Fallback; enterprise mit GPU fällt auf eine funktionierende Nur-CPU-Installation zurück. |
PZ_FETCH_ONLY | 1 | nicht gesetzt | Lädt und verifiziert nur das Binary und beendet sich dann. Kein Dienst wird installiert, daher sind keine erhöhten Rechte nötig. |
PZ_FETCH_DEST | Pfad | ./poisonzero (.\poisonzero.exe auf Windows) | Zielpfad für das verifizierte Binary bei PZ_FETCH_ONLY=1. |
PZ_SETUP_AGENTS | Komma-Liste, z. B. claude,codex | nicht gesetzt | Klinkt den lokalen /poisonzero-Statistikbefehl in die genannten Agenten ein (Claude Code, Codex, Gemini, Cursor). Rein lokal, Opt-in. |
PZ_SETUP_STATUSLINE | 1 | nicht gesetzt | Fügt die PoisonZero-Statusline in Claude Code hinzu (~/.claude/settings.json). Eine bestehende Statusline wird nie ersetzt. |
PZ_DRY_RUN | 1 | nicht gesetzt | Gibt den aufgelösten Modus (fresh/re-enroll/upgrade) aus und beendet sich vor jedem Seiteneffekt. Nützlich, um Automatisierung zu testen. |
POISONZERO_DATA_DIR | Pfad | OS-Default (siehe unten) | Überschreibt das Datenverzeichnis, das Daemon und Installer nutzen. |
--headless none|standard|strict (gewinnt gegen PZ_HEADLESS); das Windows-Deploy-Skript nimmt -Headless.Datenverzeichnis und Dateien
Binary: /usr/local/bin/poisonzero (Linux/macOS), <ProgramFiles>\PoisonZero\poisonzero.exe (Windows). Datenverzeichnis je OS:
| OS | Datenverzeichnis | Eigentümer |
|---|---|---|
| Linux | /var/lib/poisonzero (enroll-Datei unter /etc/poisonzero/enroll) | poisonzero:poisonzero |
| macOS | /Library/Application Support/PoisonZero | root:wheel |
| Windows | <ProgramData>\PoisonZero | SYSTEM / Administratoren |
Dateien im Datenverzeichnis:
credentials- gespeichertes Geräte-Token; seine Existenz markiert das Gerät als enrollt und wird beim Upgrade nie überschrieben.enroll- Einmal-Enrollment-Eingabe (der Installationsschlüssel, plusappIdbeim alten Verfahren), diepoisonzero enrollbeim ersten Start verbraucht.headlessmode- nur vorhanden, wennstandard/strictfestgenagelt wurde; fehlend oder leer = Auto-Erkennung.vault/- Quarantäne-Speicher für zurückgenommene Inhalte.
Dienst / Daemon
Läuft als privilegierter Hintergrunddienst, ein Mechanismus je OS:
| OS | Typ | Name & Statusbefehl |
|---|---|---|
| Linux | systemd-Unit (root) | poisonzero.service · systemctl status poisonzero |
| macOS | launchd-LaunchDaemon | com.poisonzero.daemon · launchctl print system/com.poisonzero.daemon |
| Windows | Scheduled Task (SYSTEM, bei Boot) | PoisonZero · Get-ScheduledTask -TaskName PoisonZero |
- Windows nutzt einen Scheduled Task, keinen Windows-Dienst: Das Go-Binary lädt sein Modell beim ersten Start und würde das Start-Timeout des Service Control Managers verpassen.
- Ein Desktop-Notifier läuft in jeder Nutzersitzung für den Nutzer-Dialog: XDG-Autostart (Linux), LaunchAgent pro Nutzer (macOS), Run-Key-VBS-Wrapper (Windows).
Unbeaufsichtigte Installation (Intune / SCCM)
Setzen Sie den Installationsschlüssel in der Umgebung und führen Sie denselben Einzeiler aus; mit vorhandenem Code und ohne Terminal läuft er ohne Rückfragen:
PZ_ENROLL_CODE="ihr-code" \ sh -c "$(curl -fsSL https://poisonzero.com/install.sh)"
$env:PZ_ENROLL_CODE="ihr-code" irm https://poisonzero.com/install.ps1 | iex
PZ_DRY_RUN=1, um den aufgelösten Modus (fresh/re-enroll/upgrade) auszugeben und vor jeder Änderung zu beenden.Nur herunterladen und verifizieren
PZ_FETCH_ONLY=1 lädt das Binary, verifiziert seine SHA-256-Checksumme und schreibt es auf die Platte, ohne einen Dienst zu installieren (keine erhöhten Rechte):
curl -fsSL https://poisonzero.com/install.sh | PZ_FETCH_ONLY=1 sh # schreibt ./poisonzero (überschreiben mit PZ_FETCH_DEST)
$env:PZ_FETCH_ONLY="1"; irm https://poisonzero.com/install.ps1 | iex # schreibt .\poisonzero.exe (überschreiben mit $env:PZ_FETCH_DEST)
Gerät prüfen
- Prüfen Sie mit dem Statusbefehl für Ihr OS (Tabelle oben), dass der Dienst läuft.
- Öffnen Sie das Panel: Das enrollte Gerät erscheint mit seinem Status in Ihrer Geräteliste.
- Um ein Gerät auf einen frischen Installationsschlüssel umzustellen, führen Sie den Installer mit neuer
PZ_ENROLL_CODEerneut aus - es enrollt sauber neu.
Deinstallieren
Stoppen Sie den Dienst, entfernen Sie dann Binary und Datenverzeichnis:
sudo systemctl disable --now poisonzero.service sudo rm -f /usr/local/bin/poisonzero sudo rm -rf /var/lib/poisonzero /etc/poisonzero
sudo launchctl bootout system /Library/LaunchDaemons/com.poisonzero.daemon.plist sudo rm -f /Library/LaunchDaemons/com.poisonzero.daemon.plist /usr/local/bin/poisonzero sudo rm -rf "/Library/Application Support/PoisonZero"
Unregister-ScheduledTask -TaskName PoisonZero -Confirm:$false icacls "$env:ProgramFiles\PoisonZero\poisonzero.exe" /reset Remove-Item -Recurse -Force "$env:ProgramFiles\PoisonZero", "$env:ProgramData\PoisonZero"
Schützen Sie jedes Gerät mit einem Befehl.
Kostenlos für Linux, macOS und Windows. Einmal installieren, Updates laufen automatisch.
Sign me up