2.0 KiB
2.0 KiB
🐧 CrumbMan: Debian & Systemd Cheatsheet
Referenz für DeepBit & Gärtner (Native Setup)
1. Service Management (systemctl)
Das Crumbforest-System besteht aus mehreren Services. Der Haupt-Service ist crumbforest.
Status prüfen
# Zeigt Status, PID, und die letzten Logs
systemctl status crumbforest
Start / Stop / Restart
# Neustart (z.B. nach Code-Änderungen)
sudo systemctl restart crumbforest
# Stoppen
sudo systemctl stop crumbforest
# Starten
sudo systemctl start crumbforest
Enable / Disable (Autostart)
# Autostart beim Boot aktivieren
sudo systemctl enable crumbforest
# Deaktivieren
sudo systemctl disable crumbforest
2. Logging (journalctl)
Wir nutzen systemd-journald. Keine wilden Textdateien mehr (außer App-Logs).
Logs lesen
# Letzte 50 Zeilen (Live-View)
journalctl -u crumbforest -f -n 50
# Logs seit letztem Boot
journalctl -u crumbforest -b
# Nur Errors (Priority 3)
journalctl -u crumbforest -p 3 -b
Logs aufräumen
# Behalte nur 100MB
journalctl --vacuum-size=100M
# Behalte nur 2 Wochen
journalctl --vacuum-time=2weeks
3. Unit File Anatomie
Ort: /etc/systemd/system/crumbforest.service
[Unit]
Description=CrumbForest Service
After=network.target mariadb.service
[Service]
User=crumb_prod
Group=crumb_prod
WorkingDirectory=/opt/crumbforest
Environment="PATH=/opt/crumbforest/venv/bin:/usr/bin"
EnvironmentFile=/opt/crumbforest/.env
ExecStart=/opt/crumbforest/venv/bin/uvicorn app.main:app --host 0.0.0.0 --port 8000
Restart=always
[Install]
WantedBy=multi-user.target
4. Permissions & User
User Check
id crumb_prod
# uid=1001(crumb_prod) gid=1001(crumb_prod) groups=1001(crumb_prod)
Dateirechte reparieren
Nutze immer unseren Helper:
sudo ./fix_eule.sh
Manuell (Vorsicht!):
# Wem gehört was?
ls -la /opt/crumbforest
# Ändern
chown -R crumb_prod:crumb_prod /opt/crumbforest
chmod -R 755 /opt/crumbforest