Alle Artikel
-
SSH known_hosts und Host-Key-Prüfung in der Automatisierung: ssh-keyscan plus Out-of-Band-Verifikation
Auch automatisierte SSH-Verbindungen müssen den Host-Key des Servers prüfen; ssh-keyscan allein sammelt nur einen Schlüssel ein, ohne dessen Echtheit zu belegen. StrictHostKeyChecking=accept-new, HashKnownHosts und SSHFP-Records decken jeweils einen anderen Teil einer sicheren Lösung ohne interaktive Rückfrage ab.
-
Konfigurationsprofile und MDM-Registrierungsstatus im Terminal mit profiles prüfen
profiles listet installierte Konfigurationsprofile auf und meldet den MDM-Registrierungsstatus. Manche Einstellungen, etwa das Hinterlegen des Bootstrap-Tokens oder die erzwungene Update-Zurückstellung, lassen sich grundsätzlich nur über einen Geräteverwaltungsdienst setzen, nicht in einer lokalen Terminal-Sitzung.
-
Exit-Codes von ssh und scp: 255 ist der Fehler von ssh selbst, jeder andere Wert stammt vom Remote-Befehl
ssh reicht den Exit-Status des auf dem Remote-Host ausgeführten Befehls durch und reserviert 255 für Fehler von ssh selbst (Verbindung abgelehnt, Authentifizierungsfehler, abweichender Host-Key) sowie für Remote-Befehle, die durch ein Signal beendet wurden. scp dokumentiert nur die Unterscheidung 0 = Erfolg, ungleich 0 = Fehler; lokale Transportprobleme lassen sich von Remote-Fehlern daher nur anhand der stderr-Ausgabe von ssh unterscheiden, nicht anhand des scp-Codes.
-
Host-Metriken mit dem Prometheus node_exporter bereitstellen: Collectors, Textfile Collector und Absicherung des Ports per Firewall
Der node_exporter macht Zähler von Kernel und Betriebssystem als Prometheus-Metriken auf Port 9100 verfügbar. Die meisten Collectors sind standardmässig aktiv, und über den Textfile Collector lassen sich auch von einem Skript berechnete Werte einspeisen. Den Exporter als unprivilegierten systemd-Dienst betreiben und den Port auf die Adresse von Prometheus beschränken, da /metrics standardmässig keine Authentifizierung hat.
-
Umgang mit Klassenungleichgewicht: Zuerst Metriken, dann Gewichte, Schwellenwerte und Resampling innerhalb der Pipeline
Ist eine Klasse selten, ist die Genauigkeit (Accuracy) aussagelos, und ein Modell kann die Minderheit vollständig ignorieren; zuerst die Evaluation korrigieren (stratifizierte Splits, klassenweise Metriken, balancierte Genauigkeit), dann Klassengewichte oder einen angepassten Schwellenwert einsetzen, und Resampling wie SMOTE nur auf den Trainingsfold innerhalb der kreuzvalidierten Pipeline anwenden.
-
gRPC-Grundlagen: Protobuf-Verträge, Streaming und Einsatzbereich
gRPC ruft Methoden auf, die in einer .proto-Datei definiert sind, mit Protocol Buffers als Schnittstellendefinition und Übertragungsformat; es bietet unäre und Streaming-Aufrufe, Deadlines, Metadaten sowie eine feste Menge an Statuscodes über HTTP/2. Es passt zu Service-zu-Service-Kommunikation und mobilen Backends; Browser benötigen gRPC-Web, und öffentliche Integratoren erwarten in der Regel JSON über HTTP.
-
Post-Quanten-Signaturen und öffentliche TLS-Zertifikate: Einsatzreife getrennt prüfen
ML-DSA und SLH-DSA sind standardisierte Signaturalgorithmen. Die Ausstellung öffentlicher TLS-Zertifikate hängt jedoch zusätzlich von Zertifikatsprofilen, der Protokollintegration und der Zulassung durch Vertrauensrichtlinien ab.
-
Schemaänderungen ohne Ausfallzeit mit Expand and Contract
Ein Schema in drei deploybaren Schritten ändern: Expand (die neue Spalte oder Tabelle hinzufügen, die alte behalten), Migrate (Dual-Write und Backfill in Stapeln), Contract (das Alte entfernen, sobald der gesamte Code das Neue verwendet); lange Sperren vermeiden, indem Tabellen nicht in einer einzigen Anweisung umgeschrieben werden.
-
Volle Linux-Festplatte analysieren: df, du, gelöschte, aber noch geöffnete Dateien und das Journal
Ein Dateisystem kann bei Speicherplatz oder bei Inodes voll sein, und Platz, den eine gelöschte, aber noch geöffnete Datei belegt, taucht in du nicht auf. Diese Methodik geht die Prüfungen der Reihe nach durch (df -h, df -i, du -x, lsof +L1, journald-Vacuuming), bevor irgendetwas gelöscht wird.
-
MCP 2026-07-28: der zustandslose Kern und die Grenzen seiner Kompatibilität
Die Juli-Revision entfernt den Initialisierungshandshake und Transportsitzungen, ergänzt anfragebezogene Metadaten und Interaktionen über mehrere Anfrage-Antwort-Runden und regelt Erweiterungen sowie die Abkündigung von Funktionen. Server müssen Discovery implementieren; für Clients ist der Aufruf optional.
-
An welchem Punkt ersetzen Teams eine PostgreSQL-Queue-Tabelle durch einen Message Broker, und was löste den Wechsel aus?
Offene Frage: Die PostgreSQL-Dokumentation billigt SKIP LOCKED für mehrere Konsumenten auf einer warteschlangenartigen Tabelle, und Design-Durchgänge empfehlen, dort zu beginnen; welche Auslöser (Alter der Warteschlange, Sperrkonkurrenz, Tabellen-Bloat, Fan-out-Bedarf, Betriebsaufwand) haben tatsächlich einen Wechsel zu einem Broker verursacht, bei welchen Volumina, und wie viele Systeme haben nie gewechselt?
-
macOS-Updates unbeaufsichtigt per Kommandozeile mit softwareupdate installieren
softwareupdate listet Updates auf, installiert sie und startet bei Bedarf neu, ohne den grafischen Bereich der Systemeinstellungen. --fetch-full-installer erfordert auf Apple Silicon die Authentifizierung als Volume-Besitzer, und eine verwaltete Zurückstellungsrichtlinie kann Updates in --list ganz ausblenden. Diese Methodik behandelt beides.
-
Ein negatives Repository-Suchergebnis einordnen, bevor Code als nicht vorhanden erklärt wird
Den Geltungsbereich einer Suche überprüfen, die keine Treffer geliefert hat, bevor der Schluss gezogen wird, dass ein Symbol, eine Konfiguration oder ein Verhalten im Projekt nicht existiert.
-
Broad Phase und Narrow Phase der Kollisionserkennung: Kandidaten versus Kontakte
Aufbau einer Kollisions-Pipeline, die konservative räumliche Kandidaten von geometrischen Kontakten trennt, mit klaren Grenzen bei Filterung, Zuständigkeit und Profiling.
-
Masse versus Volumen beim Kochen: Welche Tasse gemeint ist und wie die tatsächlich verwendete Umrechnung festgehalten wird
Eine Tasse (Cup), ein Esslöffel oder ein Teelöffel sind Volumenangaben, deren Definition sich zwischen den von NIST aufgeführten US-amerikanischen Gebrauchseinheiten und den gerundeten Werten auf US-Nährwertkennzeichnungen unterscheidet, und die Masse, die sie fasst, hängt von der Zutat und der Art des Befüllens ab; ein Haushalt, der zwischen Masse und Volumen umrechnet, hält die verwendete Definition und die eigenen gewogenen Werte fest, damit sich ein Rezept reproduzieren lässt.
-
Abnahmekriterien je Arbeitspaket, die sich in Tests überführen lassen
Die Abnahmekriterien jedes Arbeitspakets als konkrete Beispiele mit Ausgangszustand, Aktion und beobachtbarem Ergebnis formulieren, in der Given/When/Then-Struktur von Gherkin oder einer gleichwertigen, mit benannten Grenzfällen; Kriterien, die niemand ausser der Autorin oder dem Autor ausführen oder prüfen kann, sind keine Kriterien.
-
Kompilierungsdatenbanken: die fehlschlagende Übersetzungseinheit reproduzieren, bevor Header geändert werden
Den tatsächlichen Kompilierbefehl und das tatsächliche Arbeitsverzeichnis verwenden, um Quelltextfehler von Editor-Konfigurationsfehlern zu unterscheiden.
-
Eine Funktion in einer Bibliothek als veraltet markieren: warnen, den Ersatz dokumentieren, planmässig entfernen
Eine Deprecation in einer Bibliothek besteht aus vier Teilen: einem Ersatz, der zuerst existiert, einer Laufzeitwarnung zusammen mit einem Dokumentationshinweis, der Version und Ersatz nennt, einem Eintrag im Changelog und einer Entfernungs-Version, die im Voraus durch eine Richtlinie festgelegt wird. PEP 387 verlangt bei Pythons jährlichem Rhythmus eine Deprecation-Frist von mindestens zwei Jahren und beschreibt eine rein dokumentarische «Soft Deprecation»; Django entfernt Übergangslösungen (Shims) frühestens zwei Feature-Releases nach der Warnung.
-
Latenz-Perzentile: warum der Durchschnitt keine reale Anfrage beschreibt
Latenzverteilungen sind schief, sodass der Mittelwert zwischen einer schnellen Mehrheit und einem langsamen Ausläufer liegt und auf keine tatsächliche Anfrage zutrifft; p50, p99 und das Maximum beschreiben das, was Nutzer tatsächlich erleben. Histogramme statt vorab berechneter Quantile aufzeichnen, damit sich Perzentile über Instanzen hinweg aggregieren und für jedes beliebige Zeitfenster neu berechnen lassen.
-
GitHub-Actions-Workflows absichern: Actions per SHA anheften, Tokens nach dem Prinzip der geringsten Rechte, nicht vertrauenswürdige Eingaben
Actions von Drittanbietern auf den vollständigen Commit-SHA anheften, das GITHUB_TOKEN standardmässig auf Nur-Lese setzen und pro Job gezielt erweitern, nicht vertrauenswürdige Event-Felder nie in run-Skripte einsetzen, und pull_request_target sowie workflow_run als privilegierte Trigger behandeln.
Maschinenlesbar: JSON