SCM-Manager Repositories von Usern finden

Ich brauchte eine Übersicht aller Repositories, bei denen eine Gruppe von Usern direkt oder indirekt (über Gruppen) als Owner eingetragen waren.

Die User holte ich mir mit Powershell aus dem Active Directory:

$users = Get-AdGroup Hauptgruppe | Get-AdGroupMember -Recursive | Get-AdUser -Properties memberof

Die Gruppen, in der die User Mitglieder waren holte ich mir auf ähnliche Weise:

$users.memberof | Sort | Unique | Foreach-Object { $_ -Replace 'CN=(.+?),.+','$1' }

Damit hatte ich eine simple Liste aller User und ihrer Gruppen die ich als Textdatei abspeichern konnte.

Für den SCM-Manager gibt es einen Command Line client. Leider ist er inzwischen nicht so einfach zu finden, auch die Doku dazu ist extrem dürftig. Aktuell war er hier zu finden.

Die Usernames und die Gruppennamen speicherte ich in zwei Textdateien, dann erstellte ich noch ein Template für die Ausgabe von scm-cli-client anzupassen. Als Templates wird hier FreeMarker verwendet.

#!/bin/bash
SERVER=https://scm.example.com/scm/
USERNAME=admin
PASSWORD=GEHEIM
CLI="java -jar /opt/scm-cli-client-1.60-jar-with-dependencies.jar --server $SERVER --user $USERNAME --password $PASSWORD"
# Nutzt FreeMarker Templates https://www.vogella.com/tutorials/FreeMarker/article.html
REPOS=`$CLI list-repositories --template-file ./grouptemplate.tpl`
GROUPNAMES=$(<groupnames.txt)
USERNAMES=$(<usernames.txt)
for GROUPNAME in "$GROUPNAMES"; do
echo "$REPOS" |grep "$GROUPNAME"
done;
for USERNAME in "$USERNAMES"; do
echo "$REPOS" |grep "$USERNAME"
done;

Das Template das ich dafür erstellt habe sieht folgendermaßen aus:

<#list repositories as repository>${repository.name}<#if repository.permissions??> <#list repository.permissions as permission><#if permission.type?starts_with("OWNER")>${permission.name} </#if></#list>
</#if>
</#list>

Damit wird schlicht und einfach der Name des Repositorys ausgegeben, gefolgt von allen Ownern. Das lässt sich einfach mittels grep filtern. Die Ausgabe davon habe ich dann noch gefiltert um jedes Repository nur einmal zu bekommen, für den Fall das jemand sowohl über eine Gruppe als auch über seinen Username Rechte hat

./findrepos.sh | sort | uniq

Voilá, alle Repositories in denen die User direkt oder indirekt Owner-Rechte haben.

Timeouts mit Apache/Windows/LDAP/Active Directory

Ich hatte eine ganze Zeit lang versucht ein Timeout-Problem bei einem Apache-Server zu analysieren. Das Muster sah folgendermaßen aus:

Bei jedem ersten Zugriff auf den Server fragte der Server sofort nach Benutzernamen und Passwort, danach wartete der Server exakt eine Minute bevor er die Antwort sendete.

Timeouts mit Apache/Windows/LDAP/Active Directory weiterlesen

Windows Editor speichert Umlaute fehlerhaft

Nachdem ich unser billiges China-Tablet mit Windows 10 neu aufgesetzt hatte tauchte dort ein kurioses Phänomen auf. Wenn man im normalen Editor von Windows Umlaute tippte, und die Datei mit der Standard-Codierung ANSI speicherte, bekam man die folgende Fehlermeldung:

Diese Datei enthält Zeichen im Unicode-Format, die verloren gehen, wenn die Datei im ANSI-Textformat gespeichert wird.
Windows Editor speichert Umlaute fehlerhaft weiterlesen

Warum ich Cloud-Diensten nicht vertraue

skype_unbekannter_kontaktAls ich gerade mal wieder zufällig Skype offen hatte (ich nutze das Programm nicht, es ist lediglich immer automatisch aktiv sobald man eine der Microsoft Outlook/Office/Whatever Websiten nutzt) fiel mir dort in der Kontaktliste ein Name auf den ich nicht zuordnen konnte.

Warum ich Cloud-Diensten nicht vertraue weiterlesen

Raspberry Pi B+ Reboot Loop

Bei dem Raspberry Pi, der mir am Fernseher als Mediacenter dient, war der Netzwerk-Anschluss kaputt gegangen, also musste dafür Ersatz her. Mittlerweile gibt es den Pi B+, der ja bekanntlich ein paar Vorteile gegenüber dem alten Modell hat, in erster Linie mehr RAM und mehr USB-Ports. Also habe ich einen B+ bestellt.

Nachdem der Pi angekommen war spielte ich wie gewohnt OpenELEC auf die SD-Karte, schloss den Pi wie gehabt an den Fernseher an und erwartete den ersten Start. Leider ging hier direkt das Problem los, kaum war die Oberfläche von XBMC zu sehen startete er direkt wieder neu. Raspbmc, das ich als nächstes probierte, bootete ebenfalls nicht, während des Boot-Vorgangs konnte man sehen dass ständig der USB-Hub neu gefunden wurde, irgendwann endete der Boot dann mit einem Segmentation Fault. Zuletzt probierte ich Raspbian, das startete allerdings gar nicht erst.

P1260315Während der Fehlersuche stieß ich auf diesen Beitrag, den ich eigentlich nur der Vollständigkeit halber dann auch noch überprüfte, und siehe da: das Netzteil, das ich bisher mit dem alten Pi benutzt hatte liefert nur 180mA … das kam mir dann doch etwas wenig vor. Anderes Netzteil probiert, und schon läuft der Pi problemlos.

Service aus dem letzten Jahrhundert?

Ab und an bekomme ich (wie die meisten anderen Kunden vermutlich auch) von O2 eine SMS mit Werbung für ihre anderen Angebote, immer mit einem freundlichen Hinweis Link zum Abbestellen am Ende.

Screenshot_2013-12-19-09-09-39

Geht man auf besagten Link gibt es jedoch nicht, wie man erwarten würde, die Möglichkeit zum Abbestellen der Werbung, nein, man soll doch bitte eine Email schicken. Service aus dem letzten Jahrhundert? weiterlesen

Tiny Tiny RSS zeigt keine Bilder mehr an

Ganz kurzer Tipp wenn Tiny Tiny RSS auf einmal statt Bildern nur noch Links zu den Bildern in den Feeds anzeigt obwohl die Einstellungen richtig sind:

ttrss_login

Wenn man sich beim Einloggen verklickt und statt „Erinnere dich an mich“ auf „Weniger Datenverkehr nutzen“ aktiviert werden statt Bildern nur die Links zum Bild angezeigt.

Windows 8 Mail App verschickt keine Mails

Gestern Abend musste ich mit Erschrecken feststellen dass die Windows 8 Mail App seit ich sie benutze keine einzige Mail verschickt hat. Es hat alle Mails die ich geschrieben hatte schön brav im Postausgang gesammelt und keine einzige Meldung angezeigt dass es die Mails nicht verschicken kann. Den Postausgang bekommt man nicht mal direkt angezeigt, den sieht man erst wenn man die Ordnerliste auf dem Server ausklappt.

mailapp_folders

Klar, ich könnte den Ordner als Favorit markieren damit er immer zu sehen ist, dann sehe ich auch die Zahl der Mails die sich darin befinden. Aber mal im Ernst, wie oft will ich das sehen? Ist es wirklich zuviel verlangt eine Fehlermeldung auszugeben wenn der Emailversand fehlschlägt?

Ich bin ja schon froh dass die Mail App seit Windows 8.1 auch die Möglichkeit bietet seiner Meinung nach „problematische“ Zertifikate zu akzeptieren, vorher konnte ich die App gar nicht benutzen.

mailapp_server

Ich nutze für meinen eigenen Mailserver halt ein selbst erstelltes Zertifikat, es wird dadurch ja nicht weniger sicher und ich muss dafür nicht unnötig Geld ausgeben. Wenigstens hier könnte man ja eine Meldung ausgeben dass der angegebene Port nicht funktioniert. Aber nein, es wird einfach stillschweigend hingenommen.

Danke Microsoft.

Windows 8.1 Update auf Latitude E6530

Dinge die nach dem Update auf Windows 8.1 Enterprise auf meinem Latitude E6530 nicht mehr funktionierten (und die Lösung dafür). Beim Update wurden alle installierten Anwendungen und Einstellungen beibehalten.

  • Externe Monitore
    Eine der Grafikkarten konnte nicht gestartet werden, ein Update des Treibers über den Device Manager behob das Problem.
  • Cisco AnyConnect VPN Client
    Setup vom AnyConnect Client starten und Installation reparieren.
  • Remote Server Administration Tools
    Die neuere Version herunterladen und installieren.
  • Meldung auf dem Desktop: SecureBoot isn’t configured correctly
    Beim Booten mit F12 das Menü öffnen und Secure Boot aktivieren.
    (Achtung: Bitlocker vorher pausieren. Ich weiß nicht ob es nötig ist, aber sicher ist sicher)
  • Skype Support mit Trillian
    Hier liegt der Schwarze Peter wohl bei Skype, das von Trillian genutzte SkypeKit funktioniert nicht mehr und wenn ich die Developer-Seiten von Skype richtig deute wird SkypeKit wohl auch nicht mehr gepflegt. In diesem Thread im Trillian Support Forum gibt es eine ältere Version von SkypeKit.exe die im Kompatibilitätsmodus für Windows 7 funktioniert. Mal schauen wie das in Zukunft aussieht.

Android-Steuerung und Fazit

Dieser Artikel ist Teil 4 von 4 in der Reihe Synchrones Musik Streaming

Steuerung über Android-App

Die SqueezeBox-App lässt sich kostenlos aus dem Play Store herunterladen. Nach dem Start muss man sich leider mit einem SqueezeBox-Konto einloggen, aber das ist schnell auf der Website erstellt. Ich nehme mal an als Bonus kann man dann die Musik zuhause auch von unterwegs aus steuern, getestet habe ich das noch nicht.

Fazit

Ich bin begeistert. Eine absolut kostengünstige Lösung, kaum Aufwand beim Einrichten und es lässt sich komfortabel steuern. Der bisher einzige Makel ist: bei Sprache ist ein leichtes Delay zu hören, da merkt man doch dass es nicht absolut synchron ist. Aufgefallen ist mir das allerdings nur bei Beiträgen der Moderatoren im Radiostream, den ich zum Testen genutzt habe während der Media Server die Musik indizierte. Beim Abspielen von Musik (egal ob lokale MP3s oder beim Livestream) ist die Verzögerung nicht zu hören.

LMS_WI_play

Das einzige was mir jetzt noch fehlt ist squeezelite auf dem unter OpenELEC laufenden Pi im Schlafzimmer, dort ließ es sich nicht so ohne Weiteres installieren. Und natürlich noch ein Pi für die Küche…