Donnerstag, 2. Dezember 2010

Regular Expressions

Man hat eine Playlist in dem Format:
[...]
File50=file:///media/sehrgroB/Musik/Mark%20Knopfler/Get%20Lucky%20Stuttgart%202010/08%20-%20Sultans%20Of%20Swing%20-%20Mark%20Knopfler%20-%20Get%20Lucky%20Tour%20-%20Live%20in%20Stuttgart%20-%2024.06.2010.mp3
Title50=Sultans Of Swing (Stuttgart 2010)
[...]

Und will sie gerne auf einem USB Stick haben.
Lösung:
grep ^File huahuahua.pls | sed -re 's/File.*=file:\/\///g' -e 's/%20/ /g' | while read file; do cp "$file" /media/usbstick/playlist/; done

DANKE Darkman!

Errinnert mich spontan an xkcd:

Donnerstag, 25. November 2010

Großartiges Feature von Powerpoint






So, und das ganze hätte ich jetzt gern bitte noch für alle restlichen MOC Kurse! :-)
Für geschäftliche Präsentationen würde sich auch ein Buzzword Filter ganz gut machen...

Freitag, 24. September 2010

Hobbybeschäftigung im Urlaub: Physikvorlesungen anschauen

Ja, es ist Geeky, aber: ja, es ist mir egal :-)

Nachdem ich den Prof. Harald Lesch mit seinem "Alpha Centauri" / "Leschs Universum" schon durch hab', brauch ich was anderes für die letzte Stunde vor dem Einschlafen. Da ich keinen Fernseher habe, und damit keine Möglichkeit mich hirnfrei von Sendungen zweifehlafter Qualität ("Scripted Reality", Quizshows, sonstigem Müll) berieseln zu lassen, hier ein guter Tipp:

Die University of Berkeley in Kalifornien stellt Physikvorlesungen auf YouTube:
Physics 10 Lectures

Bei so einem Prof. wünsch' ich mir doch direkt die Vorlesungszeiten zurück.

Außerdem sehenswert: Nature by numbers

Samstag, 18. September 2010

Rabatt beim Hardwarekauf

Ich war heute mit 2 Kumpels beim ARLT Hardware kaufen.
Warum auch immer, haben die beiden einen festen Rabatt für Ihre Bestellung von 6% ausgehandelt.

Als die beiden beim Bezahlen waren meinte der Veräufer: Nachdem wir die Rechnungen auf beide Personen splitten, gebe ich beiden einfach einen Rabatt von 3%. Sind zusammen dann ja auch 6%.
Versteinerte Minen bei meinen beiden Kumpels. Ich hab' den Verkäufer natürlich auch nicht für voll genommen und gemeint: "W. - Der macht Spaß! Der weiß selbst dass ein Rabatt als Faktor eingeht, nicht als Summand.".

Ich mache es kurz: Er wusste es nicht.

Ergebnis war: Der Verkäufer hat kein Spaß gemacht und bestand auf seine "Theorie". Zu diesem Zeitpunkt hab' ich mich aus dem Laden verzogen, um nicht

a) Sarkastisch

bzw.
b) WHAT?!
zu werden.

Freitag, 3. September 2010

Headcrash

Wir haben uns die Tage über ein zickendes iSCSI Target gewundert.

Nachdem dann sogar die SW Initator Namen gepasst haben (sonst gibt es - zumindest diesem Target - nur eine LUN mit 512Byte), gab es trotzdem noch Ausfälle ohne Ende.

Folgende Bilder lasse ich unkommentiert. ;-)


Mittwoch, 1. September 2010

Aus aktuellem Anlass... Restricted Groups GPO

Restricted Groups GPO...

Gibt es einmal ersetzend:

...und einmal ergänzend:


Großer Unterschied.


Ergänzend: Alle lokalen Admins, die es vorher schon gab bleiben erhalten. Alle Benutzer die Mitglied der definierten Gruppe sind, werden lokale Admins. Der lokale Admin bleibt immer drin. Domain Admins bleiben immer drin.
Ersetzend: ALLES fliegt raus, danach(!) wird die GPO angewendet, und alle Benutzer kommen in die lokale Admin Gruppe rein. Der lokale Admin bleibt immer drin. Domain Admins bleiben immer drin.

1.) Ergänzend
Effekte:
ändert die Datei  \\<dc>\SYSVOL\gurumeditation.local\Policies\{GPO-GUID}\Machine\Microsoft\Windows NT\SecEdit\GptTmpl.inf im Teil
*S-1-5-32-522__Memberof = ...

=> Restricted Groups GPO (ergänzend) wirkt:
Neue Benutzer innerhalb der definierten Gruppe werden lokale Admins.

=> Restricted Groups GPO (ergänzend) wirkt nicht mehr:
Benutzer, die innerhalb der definierten Gruppe waren, fliegen aus der Lokalen Admin Gruppe raus. Alle Benutzer / Gruppen die vorher lokale Admins waren sind es wieder.

2.) Ersetzend
Effekte:
ändert die Datei  \\<dc>\SYSVOL\gurumeditation.local\Policies\{GPO-GUID}\Machine\Microsoft\Windows NT\SecEdit\GptTmpl.inf im Teil 
*S-1-5-32-522__Members = ...

=> Restricted Groups GPO (ersetzend) wirkt:
ALLE Benutzer bzw. Gruppen die nicht definiert sind fliegen raus.
Multilingual: unter Umständen (wenn man die GPO vom Client aus editiert, nicht vom DC) wird nicht die well-known SID des lokalen Admins (*S-1-5-32-544) sondern der String "Administrator" bzw. beispielsweise im spanischen "Administrador" oder sonstwie in der Datei \\<dc>\SYSVOL\gurumeditation.local\Policies\{GPO-GUID}\Machine\Microsoft\Windows NT\SecEdit\GptTmpl.inf, die effektiv die vom Client angewendete GPO ist, geschrieben. Danach ist es schluss mit lustig, sobald man mehrsprachige Clients hat.

=> Restricted Groups GPO (ersetzend) wirkt nicht mehr:
Benutzer, die innerhalb der definierten Gruppe waren, fliegen aus der Lokalen Admin Gruppe raus. Alle Benutzer / Gruppen die vorher lokale Admins waren sind es wieder.


Fazit: Selbe Wirkungsweise, wenn die GPO nicht mehr wirkt.

Diese Verhaltensweise ist konsistent zwischen Windows XP und Windows 7. Auf die Erwähnung oder gar evaluierung von Windows Vista verzichte ich aus Glaubensgründen sowie massiven Antipathiegründen. ;-)

Siehe auch: Liste der Well-known SIDs

Dienstag, 31. August 2010

Compiz und der Widget-layer


Gerade eben als ich den Widget-layer aktiviert habe, ist auf einmal mein gnome gestorben. Anscheinend nur gnome, denn ich musste mich nicht neu anmelden, als gdm wieder hochkam.
Den Unterschied merkt man relativ einfach: in einer tty
pkill X -> alles stirbt, auch die Session Informationen -> Anmeldebildschirm
/etc/init.d/gdm restart -> Session Informationen bleiben erhalten -> kein Anmeldebildschirm.

Ergebnis war: gnome kam hoch, aber nur halb. Keine gnome-bars und keine Fenster (außer gnome-eigene) wurden erzeugt. D.h. ich konnte den "run"-Dialog mit der Default Tastenkombination Alt+F2 aufrufen, aber egal was ich eingab, es wurde kein Fenster geöffnet. ("ccsm" wäre hier meine Wahl gewesen ;-)

Also ab auf die Suche nach dem Fehler. Wo könnte compiz dieses Widget-plugin abgelegt haben. Ich wollte mich erst mal darum kümmern es nicht mehr zu laden.

Wenn ich selbst nicht weiß wo, lasse ich suchen:

frank@MrPink:~$ find . -iname "*compiz*"
./.config/compiz
./.config/compiz/compizconfig
./.config/ubuntu-tweak/sourcecenter/sourcecenter/logo/compiz-ppa-logo.png
./.config/ubuntu-tweak/sourcecenter/sourcecenter/logo/compiz-ppa-icon.png
./.cache/compizconfig
./.compiz
./.gconf/apps/compiz
frank@MrPink:~$

./.config/compiz/compizconfig/config sah vielversprechend aus (daher im find kein -type f, bin in der Hinsicht gnome %gconf.xml geschädigt).
War es aber nicht:
[gnome_session]
profile =
plugin_list_autosort = true


[general]
profile =
plugin_list_autosort = true

config (END)

nächster Versuch wäre die Default.ini:
[core]
as_active_plugins = core;gnomecompat;mousepoll;dbus;place;svg;imgjpeg;png;neg;commands;session;vpswitch;text;resize;regex;workarounds;resizeinfo;decoration;obs;animation;wall;fade;snap;move;expo;scale;ezoom;scaleaddon;staticswitcher;

Bingo!
... denkste!

Kein Hinweis auf "*widget*" oder ähnliches.
Naja, as_active_plugins = <leer> wird's richten.
... denkste!

kurzum: compiz war es relativ egal, ob die Datei da und leer, da mit as_active_plugins = <leer> oder überhaupt nicht da war. Das Verhalten blieb gleich.

Also doch wieder ab in die verhasste %gconf.xml-Hölle:
frank@MrPink:~/.gconf/apps/compiz$ grep -rHi widget *
general/allscreens/options/%gconf.xml:<stringvalue>widget</stringvalue>
frank@MrPink:~/.gconf/apps/compiz$
Aha!
 
                <li type="string">
                        <stringvalue>widget</stringvalue>
                </li>

Einfach rauschlöschen? Ging. Hat man halt kein widget-Plugin mehr, das nicht geht. Kann ich mit leben.

Die einfache Methode wäre im Übrigen gewesen: in das "run"-Fenster "compiz --replace" einzugeben, und das Plugin dann über den ccsm auszumachen. Aber das wäre zu einfach gewesen. ;-)