Die ist aber viel interessanter, da viele A380 …. „Planespotting 21.08.2023 – 21:06 Uhr – Total Aircraft: 13592 -On Screen: 2743“ weiterlesen
Glückwunsch zum 7. Jahrestag Dr.Kleinhirn.eu
Glückwunsch zum 7. Jahrestag Dr.Kleinhirn und Danke für die vielen Mindmaps …
Rekord: 1000 Mindmaps auf kleinhirn.eu
Glückwunsch an Dr.Kleinhirn.eu für die 1000 Mindmaps. Wenn das kein Grund zum Feiern ist. Mir gefallen sie immer 😉
Webserver Sicherheit überprüfen mit nikto
Wer einen eigenen Webserver laufen hat, kann mit nikto einen Sicherheitscann ausführen.
Nikto ist ein in Perl geschriebener Open Source Web Server Scanner. Nikto testet Web Server auf über 7800 potentiell schädliche Dateien und Programme und prüft über 1250 Server-Versionen auf ihre Aktualität und weist bei über 270 Server-Versionen auf bekannte Sicherheitslücken hin. Der Scanner prüft Header und versucht ausserdem, ausnutzbare Fehler und Defaults in der Webserver-Konfiguration aufzudecken. Nikto schickt ca. 7800 GET-Requests an den Webserver, um auf das Vorhandensein unsicherer Inhalte zu prüfen, richtet also keinen Schaden an.
Der ist schnell auf dem Raspberry Pi installiert mit:
sudo apt-get install nikto
Es wir die v2.1.5 installiert. Das kann mit
nikto -Version überprüft werden. Es wird die ausgegeben: „Webserver Sicherheit überprüfen mit nikto“ weiterlesen
PDF Dateien zusammenfügen und extrahieren auf dem Raspberry Pi 4 B mit pdfunite und pdfseparate
Manchmal möchte man schnell ein paar PDF Dateien in eine PDF-Datei zusammenfügen. Oder man möchte aus einer PDF-Datei eine Seite als PDF extrahieren. Das geht sehr einfach mit diesen Befehlen. Die Installation habe ich ja hier schon beschrieben.
Also nun zu den ersten Fall. Wir verwenden das pdfunite Programm:
1 2 3 4 5 6 7 8 9 10 |
pdfunite -h pdfunite version 0.71.0 Copyright 2005-2018 The Poppler Developers - http://poppler.freedesktop.org Copyright 1996-2011 Glyph & Cog, LLC Usage: pdfunite [options] <PDF-sourcefile-1>..<PDF-sourcefile-n> <PDF-destfile> -v : print copyright and version info -h : print usage information -help : print usage information --help : print usage information -? : print usage information |
Wir fügen drei PDF Dateien (Beispiel Dateien: bbom.pdf, important-job-factors.pdf (3 Seiten), perfusionindex.pdf) zu einer einzigen neuen Datei zusammengefügte.pdf zusammen: „PDF Dateien zusammenfügen und extrahieren auf dem Raspberry Pi 4 B mit pdfunite und pdfseparate“ weiterlesen
Java 8 Quickie: Laufzeitberechnung mit java.time.Duratio und java.time.Clock
Will man mit Java 8 Zeiten berechnen, geht das z.B. so:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
Clock myclock = Clock.systemDefaultZone(); Instant startZeitpunkt = myclock.instant(); System.out.println("Startzeitpunkt: " + startZeitpunkt); // tue irgendwas Instant endeZeitpunkt = Instant.now(); System.out.println("Endzeitpunkt: " + endeZeitpunkt); Duration dauer = Duration.between(startZeitpunkt, endeZeitpunkt); System.out.println("Dauer " + dauer); |
Linux Quickie: Nohup oder wie können Programme im Hintergrund laufen?
Java ua. Programme könen auf Linux bzw. dem Raspberry Pi über die Komandozeile mit dem Programm screen im Hintergrund gestartet werden. Dieses ist aber nicht immer installiert. Deshalb kann man als alternative ein Programm mit nohub als Prozess starten.
Z.B.wird ein Programm in einem Jar wie folgt im Hintergrund gestartet:
java -jar twpdftagger-0.0.2.jar &
Es braucht also nur das & angefügt zu werden. Nun ist man aber oft per ssh eingeloggt und will das das Programm auch nach einem exit der Konsole noch weiterläuft. Hier kommt nun nohup zum Einsatz:
nohup java -jar twpdftagger-0.0.2.jar &
Die Ausgaben des aufgerufenen Programms werden automatisch in die Datei nohup.out geleitet, die im Verzeichnis angelegt wird, von dem aus der Befehl ausgeführt wurde. Weitere Infos zu nohup gibt es mit „Linux Quickie: Nohup oder wie können Programme im Hintergrund laufen?“ weiterlesen
Neue M1 Version von JUnit 5.4.0 veröffentlicht
Es wurde vorgestern eine neue Version von JUnit 5 veröffentlicht,
siehe https://junit.org/junit5/docs/5.4.0-M1/release-notes/
Mindmap zum Thema „Neue M1 Version von JUnit 5.4.0 veröffentlicht“ weiterlesen
Jubiläum: 20 Jahre Homepage wenzlaff.de!
Heute vor 20 Jahren, am 1.12.1998 ging die Domain wenzlaff.de zum ersten mal ans Netz. Wie die Zeit vergeht.
Es war eine statische Webseite mit Freeware und Sprüche Datenbank mit Newsletter und einigen C++ und Java Programmen zum kostenlosen Download aus meiner Hand. Hier ein etwas unvollständiges Bildschirmfoto, mehr habe ich leider nicht mehr gefunden:
Aber auch schon lange vor dieser Zeit, hatte ich eine Homepage, die aber dann auf den Servern der UNI-Bremen kostenlos gehostet wurde. Da hatte ich als Informatiker einen Zugang mit Akustikkoppler mit 300 Baud und Lochkarten hatten wir da auch noch. Das war wenigstens etwas zum anfassen, batches mit Lochkarten schreiben, cool!
Und es gab keine Werbung im Internet.
Die schöne alte Zeit. Und in der Zwischenzeit gab es immer mal neue Technologie. Vom statischen html zum xhtml und JavaScript über einen eigenen Java html Generator mit Templates bis heute zu den Content-Management-System mit eigener Datenbank.
Bis heute konnte ich auch auf dieser Webseite immer auf Werbung verzichten. Juhu …
Wie soll es weiter gehen? Gibt es noch Themen nach über 1000 Beiträgen? Ideen habe ich noch genug, was fehlt ist die Zeit!
In diesem Sinne, vielen Dank an alle Leser und für das viele Feedback (die über 1000 Kommentare mit Kommentarfunktion habe ich ja abgeschaltet…DSGVO läßt grüßen) das auch nach wie vor erwünscht ist, aber eben über E-Mail 😉

Raspberry Pi: Merkels Flug zum G20-Gipfel mit Pushover Meldung in EDDV
Gestern habe ich mich über diese Pushover des Raspberry Pi gewundert:
Die werden schon selten von mir mit NodeRed empfangen und auch an Twitter versendet (siehe Blogbeitrag).
Zwei unterschiedliche Notfall Meldungen. Keine Flug Kennung. Das ist aber normal, das Regierungsmaschine die abschalten. War bei der Air Force One der USA hier in HAJ auch so.
Das war dann wohl die A340 mit Merkel, wie hier berichtet. Passte auch mit der Uhr-Zeit. Hatte aber gestern auch einen komplett Ausfall, wie hier berichtet. Ob das Zufall ist? Da würde mich mal interessieren ob es einen Zusammenhang gibt. …
Java Quickie: Iterieren mit forEach über eine Collection (von Mindmaps) mit Lambda expressions und Filter
Wenn man mit Lambda über eine Collection iteriert, kann man auch gleich einen Filter verwenden. Was das mit der 20 zu tun hat, kommt am 1.12.2018 hier auf dem Blog 😉
Jetzt aber hier erst mal ein Beispiel zum Filter:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
@Test public void streamForEachFilterTest() { List<Mindmap> maps = getTestMindmaps(); assertEquals(3, maps.size()); List<Mindmap> ergebnis = new ArrayList<>(); System.out.println("Neu mit Stream API von Java 8 iterieren inkl. Filter:"); // iterieren mit forEach über eine Collection von Mindmaps und Lambda // expressions inkl. Filter maps.stream() // der Stream .filter(mindmap -> mindmap.getName().contains("zwei")) // mit dem Filter, alle Mindmaps die zwei im Namen enthalten .forEach(mindmap -> { // über die gefundenen gefilterteten Mindmaps System.out.println("Mindmap die (zwei) enthält: " + mindmap); ergebnis.add(mindmap); }); assertEquals(1, ergebnis.size()); } private List<Mindmap> getTestMindmaps() { // Liste mit Mindmaps erstellen List<Mindmap> maps = new ArrayList<>(); // Mindmap 1 erstellen und der Liste hinzufügen Mindmap m1 = new Mindmap(); m1.setPath(Paths.get("mindmap-eins.itmz")); maps.add(m1); // Mindmap 2 erstellen und der Liste hinzufügen Mindmap m2 = new Mindmap(); m2.setPath(Paths.get("mindmap-zwei.itmz")); maps.add(m2); // Mindmap 3 erstellen und der Liste hinzufügen Mindmap m3 = new Mindmap(); m3.setPath(Paths.get("mindmap-drei.itmz")); maps.add(m3); return maps; } |
Und die nötige Mindmap BE Klasse: „Java Quickie: Iterieren mit forEach über eine Collection (von Mindmaps) mit Lambda expressions und Filter“ weiterlesen
Kostenlose mp3 Dateien mit Inhalt 0 bis 1000 für die Ansage in deutsch mit voicerss.com und id3v2.
Für ein Homeautomatisations Projekt mit Raspberry Pi, brauchte ich mp3 Dateien für die Ansage. Damit alles lokal läuft, und ich nicht die mp3 Dateien per Web jedesmal erzeugen bzw. laden muss, habe ich mal eben 1000 mp3 Dateien erzeugt. Jede mit dem jeweiligen Inhalt bzw. Ansage in deutsch in Mono mit 44khz in 16bit mit der Zahl aus dem Dateinamen. Jede Datei ist nur so um die 25 Kb groß.
Also alle Zahlen von 0 – 1000. Das Ergebnis ist hier nun kostenlos zum Downloaden in einer gezippten Datei mp3-1-1000.zip (14,8 MB).
Hier eine Hörprobe der 777.mp3 Datei:
Mit diesen Dateien, kann nun leicht eine Ansage von Systemdaten bzw. Temperaturen oder Flugdaten erfolgen.
Wie habe ich die nun alle erzeugt?
Mit der folgenden JUnit Methode:
1 2 3 4 5 6 7 8 9 10 11 |
@Test void textToMp3Text1000() { try { for (int i = 0; i < 1001; i++) { Konvert.textToMp3(API_KEY, i + ".mp3", "" + i); } } catch (Exception e) { System.err.println("Error: " + e.getMessage()); } } |
Hier die Konvert.java Klasse: „Kostenlose mp3 Dateien mit Inhalt 0 bis 1000 für die Ansage in deutsch mit voicerss.com und id3v2.“ weiterlesen
EDDV (HAJ) Flughafen wegen Wärme gesperrt, DUMP 1090 keine Flugzeuge- das war eine ruhige Nacht – soll aber bald wieder „laufen“
Raspberry Pi Zero (W): Wie kann die grüne aktivitäts LED (ACT) (dauerhaft) ausgeschaltet werden?
Der Raspberry Pi Zero (W) hat eine grüne LED auf der Platine mit der Bezeichnung ACT, die bei SD Card (Disk) aktivität defaultmäßig leuchtet bzw. flackert. Das ist keine Power LED.
Wer das leuchten nicht braucht, kann die auch ganz ausschalten und damit Strom sparen 😉
GPIO Schnittstelle: In 15 Minuten mit C++ die Temperatur des Raspberry Pi ausgeben – Teil 4
Bevor wir auf die GPIO Schnittstelle des Pi zugreifen, geben wir erst einmal die Temperatur aus.
Der Raspi speichert die Systemtemperatur in der Datei /sys/class/thermal/thermal_zone*/temp. Wenn wir also die Datei mit dem Systemkommando cat ausgeben, haben wir die Temperatur ausgelesen.
Z.b.:
1 2 3 |
cat /sys/class/thermal/thermal_zone*/temp # Ergebnis 35780 |
Dafür erstellen wir uns zu erst eine neue Klasse Temperatur mit der Methode int ausgeben(). So können wir auch sehen, wie mehrere Klassen zusammenspielen. Also eine Temperatur.h Datei mit der Definition
„GPIO Schnittstelle: In 15 Minuten mit C++ die Temperatur des Raspberry Pi ausgeben – Teil 4“ weiterlesen
Strato: Einschränkungen beim Mail-Versand zu Microsoft-Postfächern
Warum kann der Raspberry Pi keine E-Mails mehr senden? Mit Stato E-Mails an hotmail senden?
Hier die Fehlermeldung:
Unfortunately,
messages from [xxxxx] weren’t sent. Please
contact your Internet service provider since part of
their network is on our block list (AS3140). You can also
refer your provider to
Ah, Stato schreibt für angemeldete User:
„Einschränkungen beim Mail-Versand zu Microsoft-Postfächern
Aktuell ist die Zustellung und Weiterleitung von E-Mails, die von STRATO Postfächern zu Microsoft-Postfächern gesendet werden, eingeschränkt. Das betrifft zum Beispiel E-Mailadressen mit „@live“, „@outlook“, „@msn“ oder „@hotmail“.
Die Ursache hierfür sind kurzfristig geänderte Richtlinien bei Microsoft. Diese führen aktuell dazu, dass die Server von Microsoft einige unserer IP-Adressen nicht zulassen. Wir stehen bereits mit Microsoft im Austausch, um diese Einschränkung zeitnahe zu beheben.
Wir bedauern die Unannehmlichkeiten.“
Gravierende Prozessor-Sicherheitslücke: Raspberry Pi von Meltdown und Spectre (bisher) nicht betroffen
So wie es im Moment aussieht, sind alle Versionen vom Raspberry Pi (zum jetzigen Zeitpunkt) nicht von der Meltdown und Spectre Sicherheitslücke betroffen.
Das kann man aus diesem Post (engl.) entnehmen, da die Pi Prozessoren „Gravierende Prozessor-Sicherheitslücke: Raspberry Pi von Meltdown und Spectre (bisher) nicht betroffen“ weiterlesen
Raspberry Pi: Wie wird rrdtool aus den Quellcode Dateien compiliert
Wer die rrdtools aus dem Debian Repo. installiert erhält die Version 1.4.7. Wer eine neuere haben will kann sie wie folgt compilieren:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
sudo apt-get update sudo apt-get upgrade # in .profile diese beiden Variablen eintragen BUILD_DIR=/tmp/rrdbuild INSTALL_DIR=/opt/rrdtool-1.7.0 mkdir -p $BUILD_DIR cd $BUILD_DIR sudo apt-get install libpango1.0-dev libxml2-dev wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.7.0.tar.gz gunzip -c rrdtool-1.7.0.tar.gz | tar xf - cd rrdtool-1.7.0 ./configure --prefix=$INSTALL_DIR && make && make install |
30 Grad in EDDV – Hannover – HAJ – هانوفر
Mein Raspberry Pi sendet ja auch Temperatur Daten in die Cloud, wie hier schon öfter beschrieben.
Jetzt ist es hier 30 Grad!
Neue Version von WhatsApp Messager 2.17.40 mit 101 MB veröffentlicht
Excel Mac Os X: Wie können Eingabe Felder mit Listen erstellt werden?
Manchmal möchte man bei der Datenerfassung nur einen bestimmten Eintrag aus einer Liste von möglichkeiten ermöglichen. Wie können Eingabe Felder mit Comboboxen in Excel erstellt werden?
Wir laden mal ein Paar Krankenhäuser Namen aus dem Krankenhausspiegel um ein paar Testdaten zu haben oder verwenden diese:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
Diakovere Annastift Diakovere Friederikenstift Diakovere Henriettenstift DRK-Krankenhaus Clementinenhaus KRH Klinikum Agnes Karll Laatzen KRH Klinikum Großburgwedel KRH Klinikum Lehrte KRH Klinikum Neustadt am Rübenberge KRH Klinikum Nordstadt KRH Klinikum Robert Koch Gehrden KRH Klinikum Siloah Medizinische Hochschule Hannover Paracelsus-Klinik am Silbersee Sophien-Klinik Hannover Sophien-Klinik Vahrenwald Vinzenzkrankenhaus Hannover |
und fügen sie per Copy und Past in ein neues Arbeitsblatt ein: „Excel Mac Os X: Wie können Eingabe Felder mit Listen erstellt werden?“ weiterlesen
Mindmap iThoughtsX in neuer Version 4.12 verfügbar
Auf der Schwesterseite kleinhirn.eu hatte ich schon mal von dem coolen Programm berichtet. Nun gibt es ein update mit folgenden Features:
Mac OS X Excel 15.35: Das neue Trim heißt Glätten oder wie lösche ich Leerzeichen in Text
Wer Leerzeichen in Excel vorne, hinten oder im Text löschen will, hat das früher mit trim gemacht. Jetzt heißt die Funktion „Glätten“ 🙁 Darauf soll man nur kommen! Wer läßt sich denn sowas einfallen?
Und hier mal ein Beispiel: „Mac OS X Excel 15.35: Das neue Trim heißt Glätten oder wie lösche ich Leerzeichen in Text“ weiterlesen
Wie kann Eclipse von der Kommandozeile unter Mac OS X mit clean gestartet werden?
Manchmal muss man Eclipse mit dem Parameter -clean starten. Wie kann das unter Mac OS X geschehen?
Zuerst auf der Konsole mit cd in das Programm Verzeichnis von Eclipse wechseln.
1 |
cd /Applications/Eclipse-Neon.app/Contents/MacOS |
und dann den Aufruf:
1 |
eclipse -clean |
ausführen.
Nachts hat der RASPBERRY PI nicht viel zu empfangen in HAJ
Was hat der Raspberry Pi mit Dump1090 so in den letzten 4 Wochen in HAJ empfangen?
Was empfängt der Raspberry Pi so in der letzten Stunden in Hannover?
Wie habe ich diese Grafik erstellt? „Was empfängt der Raspberry Pi so in der letzten Stunden in Hannover?“ weiterlesen
ADS-B mit Raspberry Pi: Visualisierung von zwei Landebahnen in Hannover
Optimiert mit SQL um die Darstellung von zwei Landebahnen (von dreien:
- 09C/27C 780 m × 23 m Asphalt
- 09R/27L 2340 m × 45 m Beton
- 09L/27R 3200 m × 45 m Beton
) zu visualisieren:
„ADS-B mit Raspberry Pi: Visualisierung von zwei Landebahnen in Hannover“ weiterlesen
Wie können Scripte im Dock von Mac OS X El Capitän abgelegt und ausgeführt werden?
Will man bash oder sh Scripte über ein Icon aus dem Dock von Mac OS X El Capitan starten, geht das mit dem Mac Programm Automator das bei der El Capitan installation enthalten ist.
Nach dem Start von Automator den Arbeitsablauf wählen:
Dann unter Bibliothek das Shell-Skript ausführen wählen und rechts den Script-Namen mit Pfad angeben (ohne cat;-) ):
Dort den Script Namen eingeben und als Dateiformat Programm wählen und unter den Script Namen speichern:
Dann die erstellte Script-Namen.sh.app per Drag and Drop in das Dock verschieben. Schon kann mit einem klick im Dock das Script bequem ausgeführt werden.