• Middleware

    Mit cURL weitergeleiteten Seiten (REDIRECT) folgen

    Bei cURL Aufrufen landet man oft auf Seiten, die nur einen REDIRECT auf einen andere Seiten ausführen. < p class=”kasten”> [root@0ccfa08b0829 /]# curl repository/yum>/strong> <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>301 Moved Permanently</title> </head><body> <h1>Moved Permanently</h1> <p>The document has moved <a href="http://repository/yum/">here</a>.</p> </body></html> So funktioniert es: < p class=”kasten”> [root@0ccfa08b0829 /]# curl repository/yum -L <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <html> <head> <title>Index of /yum</title> </head> <body> <h1>Index of /yum</h1> <ul><li><a href="/"> Parent Directory</a></li> <li><a href="nginx-1.12.2-1.el6.ngx.x86_64.rpm"> nginx-1.12.2-1.el6.ngx.x86_64.rpm</a></li> <li><a href="repodata/"> repodata/</a></li> </ul> </body></html>

  • Branching & Merging,  Git

    Ein sehr gutes Modell für GIT Branching & Merging

    Für mich persönlich hat sich das von Vincent Driessen beschriebene Branching Modell im Bereich der Software Entwicklung als sehr nützlich erwiesen. Er beschreibt es hier: A successful Git branching model Mit diesem Modell kann sehr flexibel auf die verschiedneen Anforderungen, wie – Neue Releases (Major und Minor Releases) – Arbeiten an neuen Features – Hotfixes parallel zu den Releases auch in größeren Teams reagiert werden. Wenn es darum geht, mehr oder wenig fertig angelieferte Softwareartefakte mit Hilfe eines Git/Gitlab Projekts zu deployen und konfigurieren, weiche ich allerdings oft davon ab. In diesem Fall ist oft ein Branching Konzept Branch = Stage) sinnvoll. Alsi ein Branch Dev für die Entwicklungssysteme, ein…

  • ansible,  DevOps,  Docker,  Jinja,  Middleware,  YAML

    Ansible Installation auf Windows 10 Systemen

    Ansible kann lokal in der Windows Bash installiert und zusammen mit Visual Studio Code (https://code.visualstudio.com/) effektiv betrieben werden. Die Windows Bash muss installiert sein. Die Bash kann über den Windows Store installiert werden. Einfach nach Ubuntu suchen. Nach der Installation die bash starten. PS C:\Users\user01> bash Die eigentliche ansible Installation erfolgt im Windows Linux Subsystem mit diesen Befehlen. Der letzte Befehl fügt die ansible Kommandos zum Pfad hinzu, damit sie direkt aufrufbar sind. sudo apt-get -y install python-pip python-dev libffi-dev libssl-dev pip install --upgrade pip pip install ansible --user echo 'PATH=$HOME/.local/bin:$PATH' >> ~/.bashrc <em>"pip install --upgrade pip"</em> ist nur der Schönheit halber enthalten, damit pip auch aktuell ist, sonst gibt…

  • PowerShell,  Windows

    PowerShell Drive alias:

    PowerShell nutzt das Konzept der Laufwerke (=PowerShell Drives) sehr ausgiebig. So werden die Umgebungsvariablen in env: verwaltet, die Windows Registry aber auch die “normalen” Laufwerke wie “C:”. Auch Aliasse für Kommandos sind ein PowerShell Drive sind. Get-ChildItem alias:

  • IBM WebSphere Application Server,  Java

    Java unrestricted policy Dateien in IBM WebSphere als Standard

    IBM wird in den zukünftigen Versionen des Websphere Application Servers die Java unrestricted policy files als default ausliefern. Die originale Ankündigung kann hier gelesen werden. Damit entfällt beim Bauen der Archive für einen Server dieser Schritt in Zukunft. Für IBM Websphere 8.5 und 9.0 mit Java 8 gilt ist diese Voreinstellung ab Fixpack 10.

  • PowerShell,  Windows

    Mehrfache Einträge in großen Konfigurationsdateien oder Protokollen finden (Windows Powershell Lösung)

    Im Post Mehrfache Einträge in großen Konfigurationsdateien oder Protokollen finden(Linux/Unix) habe ich gezeigt, wie mehrfach vorkommende Zeilen in Textdateien gefunden und automatisch entfernt werden können. Windows hat im Zuge der Powershell ein mächtiges Werkzeug, dass dies auch kann. (Seit dem Windows 10 1709 Update kann man natürlich auch einfach die eingebaute bash nehmen….) Zur Demonstration verwende ich eine Datei duplicates.txt: Get-Content -Path duplicates.txt Zeile kommt nur einmal vor Zeile kommt zweimal vor Zeile kommt dreimal vor Zeile kommt zweimal vor Zeile kommt dreimal vor Zeile kommt auch nur einmal vor Zeile kommt dreimal vor Mehrfache vorkommende identische Zeilen und deren Anzahl findet und zählt man wie mit Group-Object Get-Content -Path…

  • Korn Shell / Bash,  Shell Scripting

    Mehrfache Einträge in großen Konfigurationsdateien oder Protokollen finden (Linux/Unix Lösung)

    Oft vermutet man in größeren Protokolldateien oder Konfigurationsdateien mehrfach vorhandene Einträge. Diese sollen schnell ermittelt und bei Bedarf entfernt werden. Unter Linux gibt es das Werkzeug uniq. Der Parameter --count gibt alle Zeilen aus und die Häufigkeit Ihres Auftretens in der ersten Spalte. Es funktioniert nur nicht so intuitiv, wie erwartet. Ich versuche es an einem Beispiel: uniq –count console.log 1 <?xml version=”1.0″ encoding=”UTF-8″ ?> 1 <Protokollzeile xxxyyyzzz > Diese Datei hat offensichtlich zwei Zeilen insgesamt und beide unterscheiden sich. Das ist im Moment nicht sehr hilfreich. Daher verdoppele ich die Datei und füge eine einzeln vorkommende Zeile hinzu: cat console.log >> consoleDup.log cat console.log >> consoleDup.log echo “Eine abweichende…

  • IBM WebSphere Application Server,  Middleware,  Security

    XOR Passwort Encode/Decode für IBM Websphere XML Konfigurationsdateien

    IBM Websphere speichert Passwörter der WebSphere Application Server Konfiguration in XML Dateien im Profilpfad der WAS Adminkonsole (IBM Integrated Solutions Console – ISC). Diese Passwörter sind nicht verschlüsselt, sondern nur per XOR kodiert. Da a xor b xor b = a gilt, kann ein XOR kodiertes Passwort auch wieder im Klartext ausgegeben werden. IBM liefert Werkzeuge für den Decode/Encode Vorgang gleich mit. Um dies zu verdeutlichen, betrachte ich einen Passwordhash einer IBM WebSphere Application Server Zelle (security.xml). Die kodierten Passwörter können einfach gefunden werden: grep xor security.xml Vorgehensweise für Websphere 8.0 und 8.5 – Decoding Zuerst in das Verzeichnis <WAS_HOME> wechseln. Von dort den Decoder Prozess ausführen: java/bin/java -Djava.ext.dirs=./plugins:./lib com.ibm.ws.security.util.PasswordDecoder…

  • SAP,  Systemkopie,  Transportwesen

    Ändern der aktuellen SAP Transport Requestnummer

    Unter Umständen möchte man die aktuelle Nummer der Transportrequests anpassen, beispielsweise nach einer Systemkopie auf ein Entwicklungssystem, wenn der Nummernkreis voll ist, oder nach einer Wiederherstellung des SAP Systems. Die Gründe können vielfältig sein. Die letzte Nummer der Transporte ist in Tabelle E070L gespeichert. Dafür hat SAP den Report RSWBO301 vorgesehen. Dieser Report sucht ein freies Intervall für die Nummernvergabe bei Aufträgen. Der SAP Hinweis 106911 – Transportsystem: Nummernkreis bei Aufträgen voll ist sehr empfehlenswert. Bitte lesen Sie die Dokumentation des Reports genau (i – Knopf auf der Startseite des Reports). Die Änderung der Transport Nummer sollte mit Bedacht und wissend der Abhängigkeiten erfolgen. Ein Zurücksetzen der Nummer unter den…

  • Shell Scripting,  Windows Bash

    Windows bash – Zugriff auf lokale Verzeichnisse

    Lokale Verzeichnisse in der Windows Bash können über den automatischen eingebunden Mount /mnt/ gelesen und geändert werden. [user1:/mnt/d/Cache] $ ls -ld /mnt/* drwxrwxrwx 0 root root 512 Mar 19 10:17 /mnt/c drwxrwxrwx 0 root root 4096 Mar 19 10:17 /mnt/d Der Zugriff auf C:\Users\user1\Documents (= Eigene Dokumente des Benutzers user1) erfolgt beispielsweise per: ls /mnt/c//Users/user1/Documents/