Intelligente Lösungen
in neuer Dimension

Git-Verzeichnis komprimieren

Bei mir gibt es ein Git-Repo mit “schwankendem” Platzbedarf:

  • Früher war es mal sehr groß
  • Dann hat ein Kollege die Historie bereinigt/gekürzt
  • Jetzt verbraucht es diesen Plattenplatz:
    • Frischer git clone: 100M
    • Alter git clone: 440M
    • Repo auf GITEA: 730M

Ziel dieser Beschreibung ist die Komprimierung des alten Clones und des Repos auf GITEA.

TRIM bei Samsung Portable T7 Touch aktivieren

Ich habe eine externe Festplatte von Samsung, genauer das Modell “Samsung Portable T7 Touch”. Ich verwende es unter Ubuntu und habe festgestellt, dass es mir nicht gelingt, die Platte per TRIM-Befehl zu “beschleunigen”. Sehr schlecht – ohne TRIM wird die Platte im Laufe der Zeit immer langsamer werden.

Hier beschreibe ich, wie ich den TRIM-Befehl doch noch zum laufen bekommen habe.

Ubuntu und ESM-Pakete

Seit ein paar Wochen erscheint beim Anmelden an Ubuntu-Servern ein Hinweis, dass man mit Ubuntu Pro und ‘esm-apps’ zusätzliche aktualisierte Pakete einspielen kann. Hier beschreibe ich, wie ich herausfinden kann, welche Pakete davon betroffen sind.

Docker in LXD/LXC-Container

Bislang habe ich alle meine Services selbst als LXC-Container aufgesetzt. Allerdings scheint es zunehmend so zu sein, dass die Verwendung von Docker-Containern viel einfacher ist. Ein Großteil des Aufwandes wird dabei von den Erstellern der Dockerfiles übernommen und für mich ist’s damit dann simpler.

Problem: Ich “traue” den Erstellern nicht 100%ig. Dadurch, dass die Ersteller sowohl den Inhalt der Docker-Container als auch die Einbindung der Container in das Hostsystem vorgeben, kann ich nicht sicher sein, dass mir nicht irgendwas “untergejubelt” wird.

Eine Idee: Lass die Docker-Container in einem LXC-Container laufen! Dann kann maximal der LXC-Container geschrottet werden!

LXD/LXC: Installation auf Ubuntu-22.04 mit Netzwerk

Hier beschreibe ich, wie ich LXD/LXC auf Ubuntu-22.04 in Betrieb nehme. Grob startet die Beschreibung mit dieser hier: LXD/LXC: Installation auf Ubuntu-22.04. Danach wird das Netzwerk konfiguriert und damit der Zugriff auf die LXC-Container via im DNS hinterlegten Containernamen ermöglicht.

Die ganze Aktion dauert grob 1 Stunde, wenn man halbwegs weiß, was man zu erledigen hat. Die Doku habe ich durchgespielt mit Ubuntu-22.04.1 und LXD-5.9.

Linux - Shell: Debugging deaktivieren ohne Ausgabe von ‘+ set +x’

Gelegentlich möchte ich ein einem Shell-Skript für definierte Bereiche die ausgeführten Kommandos protokollieren. Das aktiviere ich mit set -x. Am Ende des Bereichs deaktiviere ich die Protokollierung mit set +x. Leider wird dabei genau dieser Deaktivierungsbefehl auch protokolliert. Das gefällt mir nicht und nachfolgend gibt es Lösungen!

LUKS mit FIDO2 - systemd-cryptenroll

Das aktuelle Ubuntu-22.04 (jammy) unterstützt wohl das Entsperren von Festplatten mittels FIDO2-Stick (Solokey). Hier meine Experimente dazu. TLDR: Funktioniert noch nicht so richtig toll!

Gradle: Variablen-Liste für Spring Dependency Plugin

Bei einigen Kunden von mir wird das BuildTool GRADLE in Verbindung mit dem SpringDependencyPlugin verwendet. Bei dieser Aufstellung kann man die Versionen einiger Artefakte nicht via GRADLE-Mechanismen anpassen, sondern muß die vom Plugin vorgegebenen Variablen ermitteln und überschreiben.

Hier findet sich eine Liste der Variablen: dependency-versions.html

Vorgeben kann man die Version dann via gradle.properties:

1
snakeyaml.version=1.33

oder build.gradle:

1
ext['snakeyaml.version']='1.33'

Änderungen

  • 2022-11-03 – Erste Version