Installieren
Was die Installation auf Ihrem Rechner hinterlässt, was vorher bereitstehen muss, und die zwei Wege: das .deb-Paket oder ein Git-Klon für alle, die den Code ändern wollen.
Was die Installation auf Ihrem Rechner hinterlässt
Dies ist der Verzeichnisbaum, den das .deb-Paket anlegt. Der Klon-Weg baut
die Teile /opt/dinoer/ und /var/log/dinoer/, hält seine Konfiguration in
/opt/dinoer/dinoer.conf und hat weder das Verzeichnis /etc/dinoer/ noch
die Befehle in /usr/bin: Sie rufen die Programme über ihren Pfad auf.
/opt/dinoer/
├── shot.py rpa.py campagne.py journal.py
├── lib/
├── scenarios/
├── skills/
├── scripts/
├── docs/
├── dinoer.conf.d/
├── references/
├── requirements.txt
├── venv/
└── .cache/ms-playwright/
/etc/dinoer/
/usr/bin/ dinoer-shot dinoer-rpa dinoer-campaign
dinoer-monter-secrets dinoer-demonter-secrets dinoer-monitor-verifier
/var/log/dinoer/
| Pfad | Was es ist |
|---|---|
shot.py, rpa.py, campagne.py | die drei Programme, die Sie starten: eine Aktionsfolge, eine Szenario-Datei, eine Recherchekampagne |
journal.py | liest das Betriebsjournal: was auf einem bestimmten Ziel getan wurde, und wann |
lib/ | die Module, die sie importieren |
scenarios/, skills/ | das JSON-Schema der Szenarien und die Beispiele, und die Szenarien, die Sie übernehmen |
scripts/ | Einhängen und Aushängen des verschlüsselten Verzeichnisses, und die Überwachungsprüfung |
docs/ | die Anleitungen, darunter GUIDE_LLM.md, dessen Versionsnummer die Sperre verlangt |
dinoer.conf.d/ | ein Beispiel für ein Betreiberprofil |
references/ | die Strukturreferenzen, die rpa.py schreibt, geteilt mit der Gruppe dinoer |
requirements.txt | die Python-Abhängigkeiten, in exakten Versionen |
venv/ | die Python-Umgebung, bei der Installation angelegt |
.cache/ms-playwright/ | Chromium, bei der Installation heruntergeladen |
/etc/dinoer/ | dinoer-sample.conf, eine Vorlage. dinoer.conf wird nie für Sie angelegt: Kopieren Sie die Vorlage und bearbeiten Sie sie |
/usr/bin/dinoer-* | die sechs Befehle; die Handbuchseite ist man dinoer |
/var/log/dinoer/ | das Betriebsjournal und die archivierten Nachweise für Seiten mit Anmeldung |
Das Paket legt außerdem den Systembenutzer und die Systemgruppe dinoer an.
Um Dinoer von Ihrem eigenen Konto aus zu nutzen, fügen Sie es dieser Gruppe
hinzu und melden sich neu an: sudo usermod -aG dinoer $USER.
Was vorher bereitstehen muss
Wo es läuft
Debian 13 und Ubuntu 24.04. Debian 12 und Ubuntu 22.04 können das Paket nicht
installieren: Drei seiner Abhängigkeiten tragen die t64-Namen, die nur diese
neueren Versionen bereitstellen. Linux Mint 22 beruht auf Ubuntu 24.04, wurde
aber als solches nicht getestet.
| Sie brauchen | Wann | Einzelheiten |
|---|---|---|
| Netzzugang | während der Installation | pip lädt die Python-Abhängigkeiten, Playwright lädt Chromium herunter; das Paket enthält beides nicht |
| Systembibliotheken | immer | apt installiert, was das Paket angibt: Python 3 mit venv und pip, FUSE und gocryptfs für das verschlüsselte Verzeichnis und die Bibliotheken, die Chromium braucht |
| Eine SearXNG-Instanz | für eine Kampagne mit einem query-Ziel | Dinoer liefert keine mit und hat keine öffentliche Standardinstanz. Ohne Instanz bricht campagne.py mit einer klaren Meldung ab. Setzen Sie DINOER_SEARXNG_URL oder den Schlüssel searxng_url in der Konfigurationsdatei: /opt/dinoer/dinoer.conf beim Klon-Weg, /etc/dinoer/dinoer.conf beim Paket-Weg (dort gelesen seit 1.0.1) |
| OpenCode | damit eine Kampagne ihren Bericht schreibt | Dinoer startet opencode run als Unterprozess (~/.opencode/bin/opencode oder DINOER_OPENCODE_BIN) mit dem Modell aus DINOER_OPENCODE_MODEL. Ein Standardmodell gibt es nicht: Wählen Sie eines aus opencode models, gehostet oder ein lokales Ollama-Modell, das in OpenCode eingetragen ist. Ohne die Variable meldet der Berichtsschritt das und hält an; ein fehlgeschlagener Aufruf gibt den Fehler von OpenCode weiter und sagt, ob das Modell in der Liste fehlt. Ohne funktionierendes OpenCode läuft die Erfassung trotzdem und der Korpus bleibt erhalten; nur der Bericht fehlt |
| Ollama | optional | lokale Embeddings (nomic-embed-text unter http://localhost:11434, änderbar mit DINOER_OLLAMA_URL und DINOER_EMBED_MODEL), um die erfassten Seiten nach Bedeutung zu ordnen. Ist es nicht erreichbar, behalten die Seiten die Reihenfolge ihres Eintreffens |
| Das verschlüsselte Verzeichnis | für Szenarien mit Anmeldung | Das Verzeichnis für Zugangsdaten |
Quellen: debian/control, debian/postinst, requirements.txt,
lib/searxng.py, lib/modeles.py und lib/vector.py, Version 1.0.1, gelesen
am 27. September 2026. Die Kampagnenseite behandelt
Eine Recherchekampagne durchführen.
Zwei Wege, die sich auf einem Rechner ausschließen
Das .deb-Paket ist der normale Weg, um Dinoer zu nutzen: Unter
Downloads finden Sie die Datei, den
Installationsbefehl und die Bedeutung des Sandbox-Hinweises von apt.
Klonen Sie stattdessen die Quellen, wenn Sie Dinoer ändern wollen:
git clone https://github.com/RonanDavalan/dinoer.git
cd dinoer
bash scripts/install.sh
Das Skript legt den Systembenutzer und die Systemgruppe dinoer sowie eine
isolierte Python-Umgebung an, kopiert den Code nach /opt/dinoer/,
installiert Playwright und Chromium in dieser Umgebung und führt dann einen
Testaufruf (shot.py --a11y) gegen eine echte URL aus.
Warum ein Rechner nur einen Weg verträgt. Beide schreiben nach
/opt/dinoer/ und legen denselben Benutzer und dieselbe Gruppe dinoer an,
und keiner erkennt den anderen: dpkg weiß nichts von dem, was install.sh
dort abgelegt hat. Das Entfernen des Pakets löscht /opt/dinoer/venv und den
Chromium-Cache; das Bereinigen (purge) löscht zusätzlich Benutzer und Gruppe
dinoer, die auch eine Klon-Installation nutzt. Auch die Konfiguration wird
an zwei Orten gelesen: /etc/dinoer/dinoer.conf beim Paket,
/opt/dinoer/dinoer.conf beim Klon. Beide sind reines JSON, ohne Kommentare,
die JSON nicht zulässt.
Danach, vor allem anderen
Dinoer verweigert die Ausführung, bis wer es steuert den Guide gelesen hat und dessen Versionsnummer angeben kann:
grep notice-version /opt/dinoer/docs/GUIDE_LLM.md
Die ausgegebene Nummer übergeben Sie an --guide-version.