XMind – a mind mapping tool

Meine Cousine meinte neulich, daß die neueste Netflixproduktion „Dirk Gently’s holoistische Detektei“ der „absolute Brainfuck“ gewesen wäre, nur weil ein bisschen Zeitreise im Spiel und jede Menge Blut auf den Böden und Wänden verteilt war (sowie diverse Körperteile, aber lassen wir das jetzt mal).

Ich glaube, daß der Ausflug in Mind-Map-Szene zu ähnlichen Ergebnissen kommen wird.  Für Linux gibt es bunte Auswahl an meistens in Java geschriebenen MindMap Tools. FreeMind kann man direkt aus dem Fedorarepository installieren, allerdings habe ich davon Abstand genommen. Zum Einen, weil es mit schon 12 MB Größe,  40 MB Schrott nachinstallieren wollte und zum Anderen, weil es als veraltet gilt. Die Forks die aus dem Projekt hervorgegangen sind, bieten laut diversen Blogs und Wikis mehr Funktionalitäten mit mehr Bedienkomfort.

Ein anderes Tool ist das XMind Mindmappingtool der XMind Ltd, welches eigentlich nur für Ubuntu gedacht ist, funktioniert aber auch sofort unter Fedora, was wohl aber keine Absicht war 😉

Wenn man sich das ZIP auf der Platte ausgepackt hat, findet sich im Archiv ein Ordner für 32 oder 64 Bitsysteme. Startet einfach das passende XMind in der Konsole, ignoriert die Warnmeldungen und legt los. Java installiert zu haben, ist angesichts der vielen  Javaplugins wohl eine grundsätzliche Sache. Mit knapp 200 MB auf der Platte ist die Installation schon ganz schön happig, und deutlich größer als FreeMind.

Das echt umfangreiche Programm kommt mit einer aufgeräumten Oberfläche im Flatdesign daher. Bevor wir uns aber damit Auseinandersetzen, sollte man erstmal erklären, was eine MindMap überhaupt ist. Wikipedia beschreibt das in etwa so: Eine Mind-Map ist eine kognitive Assoziationstechnik, die helfen soll, „Gedanken frei zu entfalten“.

Etwas konkreter ausgedrückt, mit Hilfe der Technik kann man ein Brainstorming, also das wilde Aufschreiben von Begriffen, von denen man glaubt, daß Sie mit dem Thema etwas zu tun hätten, gleich in geordnete Bahnen lenken. (Kleine Anekdote: Schon in den 50ern des letzten Jahrhundert wurde Brainstorming als der Quatsch enttarnt, der er ist: eine Abbildung des Gruppensozialenprofils, bei der die Betas den Alphas den Vorzug lassen, egal wie dämlich die Ideen wirklich sind. Alles was eine Gruppengröße von 2 überschreitet ist quasi per se unproduktiv. Nachzulesen u.a. im Soziologischen Teil von Wissenschaft.de. Wobei mir grade klar wird, daß jetzt eine Karte genau dieser Seite eine große Hilfe wäre, den passenden Link als Beweis zu setzen. Es reicht halt nicht 25 Jahresausgaben auf Lager zu haben, wenn man nichts wiederfindet. )

Da ich grade als Gruppengröße „1“ festgelegt habe, also mit mir selbst ein Brainstorming vornehme, nehme ich an, daß ich mir selbst nicht in die Parade fahren würde, aber auf der anderen Seite auch keinen Grund habe, an meinen Argumenten und Ideen zu zweifeln. Allenfalls Kant und Freud könnten sich noch in die Quere kommen.

„Am Anfang ist der Knoten“

Wenn man seine neue Map erstellt, hat man zunächst den Anfangsknoten. Tippt man jetzt direkt etwas in die Tastatur, wird es als Knotentext übernommen. Will man den Text „ändern“ drückt man am besten F2.  Einen Unterknoten öffnet man mit der „Eingabetaste“.  Wenn man so weitermacht, wird das Ganze am Ende ein Baumdiagramm. Die Äste kann und soll man auch beschriften, muß man aber nicht. Spaßig wird es erst, wenn man zufällig Beziehungen einzelner Knoten untereinander einfügt:

Damit man bei vielen Details eines Knotens nicht den Überblick verliert, kann man mit F6 den aktuellen Knoten als Basis auswählen, also quasi vergrößern und alles andere ausblenden lassen. Sehr praktisch , wenn man fokussiert an einem Punkt arbeiten muß. An den Ästen und Knoten des Baumes kann man übrigens mit den Cursorsteuertasten entlangnavigieren.

Features

Knoten können nicht nur Texte enthalten, sondern auch Bilder. Außerdem stehen noch diverse Themes zur Verfügung, der Stil eines Knotens kann auch jederzeit geändert werden, womit sich die Map optisch attraktiver gestalten läßt, bzw. eine zusätzliche Ordnung einführen läßt. Das sind natürlich nur Bruchteile der Funktion, von den Darstellungsmodi einzelner Knoten als Logik/Fischgräten oder Zeitleistendiagrammen kann ich hier nur beiläufig berichten.

Fazit

XMind bietet wohl alles was an für seine Maps so braucht, aber es hilft nicht, wenn man nicht vorher schon eine klare Struktur oder sagen wir mal „grob weiß, was man vor hat“ . Ich mache jetzt die Probe aufs Exempel und werde den Handlungsplot meines dritten Romans damit entwerfen, was zwar nicht genau den Sinn von Mindmapping Technologien entsprechen wird, aber zufällig exakt genau so ein Tool benötigen wird.

 

Escapesequenzen im /etc/issue

Desktopuser kennen das weniger, aber wer sich per Monitorkonsole auf einem Linuxsystem einloggt, der bekommt eine Anzeige, welches OS grade läuft und welcher Kernel aktiv ist.

Das Template dazu heißt  „/etc/issue“ . Es könnte so aussehen:

\S
Kernel \r on an \m (\l)

Aber was heißen die ganzen Platzhalter und welche gibt es überhaupt :

\b  Serialspeed des Terminals ( Bitrate )
\d Datum
\e  Leerzeile
\l    Konsolendevice (tty)
\m Architektur des Prozessors
\n  Servername
\o  (none) ???
\r   Kernelversion
\s   OS ( Linux )
\t aktuelle Uhrzeit
\u  Anzahl der CPUs
\v Buildinfo des Kernels
\O Domain in der sich der Computer befindet
\S OS ID String
\U Anzahl der eingeloggten Benutzer

Alles was man jetzt machen muß, ist die gewünschten Platzhalter mit einem verbindlichen Text, oder auch ohne Text, in die /etc/issue zu schreiben. Das wars.

EuGH: anlasslose Überwachung unzuläßig

In einem Grundsatzurteil zur Massenüberwachung in der EU hat der EuGh heute eine Entscheidung gegen anlasslose Überwachungsmaßnahmen bekannt gegeben.

Die Zusammenfassung liest sich so :

Das Unionsrecht untersagt eine allgemeine und unterschiedslose Vorratsspeicherung von
Verkehrs- und Standortdaten. Es steht den Mitgliedstaaten aber frei, vorbeugend eine gezielte
Vorratsspeicherung dieser Daten zum alleinigen Zweck der Bekämpfung schwerer Straftaten
vorzusehen, sofern eine solche Speicherung hinsichtlich der Kategorien von zu speichernden
Daten, der erfassten Kommunikationsmittel, der betroffenen Personen und der vorgesehenen
Dauer der Speicherung auf das absolut Notwendige beschränkt ist.

Quelle: http://curia.europa.eu/jcms/upload/docs/application/pdf/2016-12/cp160145de.pdf

Demnach darf nur zur Überwacht werden, wenn die öffentliche Sicherheit gefährdet ist, was schwere Straftaten einschliesst. Jetzt würden wir natürlich denken, das dies erst NACH einem Ansschlag/einer Straftat der Fall wäre, aber natürlich wird Seitens der Überwacher argumentiert , daß die Sicherheit ständig in Gefahr ist und man deswegen jederzeit überwachen können muß/darf.

Der EuGH meint weiter, eine VDS läßt ‚sehr genaue Schlüsse auf das Privatleben‚ der Bürger zu,  weswegen man nur das notwendigste überhaupt speichern dürfte. Metadaten, wie sie bei unserer VDS gespeichert werden sollen und die dazugehörigen Standortdaten von Mobilfunkgeräten, sind jetzt dummerweise aber perfekt geeignet für Rückschlüsse auf das Privatleben der Bürger.

Der Gerichtshof weist darauf hin, dass eine Regelung, die eine allgemeine und
unterschiedslose Vorratsdatenspeicherung vorsieht, keinen Zusammenhang zwischen den
Daten, deren Vorratsspeicherung vorgesehen ist, und einer Bedrohung der öffentlichen
Sicherheit verlangt und sich insbesondere nicht auf die Daten eines Zeitraums und/oder eines
geografischen Gebiets und/oder eines Personenkreises, der in irgendeiner Weise in eine schwere
Straftat verwickelt sein könnte, beschränkt. Eine solche nationale Regelung überschreitet
somit die Grenzen des absolut Notwendigen und kann nicht als in einer demokratischen
Gesellschaft gerechtfertigt angesehen werden, wie es die Richtlinie im Licht der
Grundrechtecharta verlangt.

Da jede Art von Speicherung Rückschlüsse auf die Personen und deren Gewohnheiten zu läßt, wird es für die VDS der Bundesregierung jetzt noch viel enger werden.

Mein Kommentar: Vergesst es einfach!

Aber soviel Glück werden wir nicht haben 🙁  Zudem wird die örtliche Nähe zu einer Straftat im Internet ja komplett aufgehoben, weswegen hier wohl eher die Speicherung von Mobilfunkdaten gemeint gewesen ist, denn nur die können ortsbezogen sein. Es wird also wieder spannend, wie sich die Überwachungsfreunde diesmal argumentativ aus der Affäre winden werden. Ich rechne ja damit, daß irgendwann, in nicht allzu ferner Zukunft, jemand einfach sagen wird:

„Die Eliten der Bundesrepublik wollen wissen, was ihre Untertanen sagen, schreiben, lesen und tun. Punkt. aus. Ende der Diskussion. Wir ziehen das jetzt durch.“ Vorher gibt es dann noch den Dexit und die Privatunion mit England, Kanada und den USA.

Alternativer Artikel: http://www.spiegel.de/netzwelt/netzpolitik/vorratsdatenspeicherung-eugh-erteilt-ueberwachungs-gesetz-eine-absage-a-1126926.html

Freeciv 3D Beta erschienen

Die FreeCiv Entwickler haben eine browserbasierte WEBGL Version von FreeCiv gebaut.

Angespielt werden kann das Game hier : play.freeciv.org

Natürlich habe das für Euch schon gemacht, aber so wirklich vom Hocker hat es mich nicht gehauen.

Aber erstmal die gute Nachricht: Es ist benutzbar.

  • – die Grafik ist naja, primitiv
  • – die Karte kann man nicht rotieren
  • – die gesamte Karte ist in Abschnitte eingeteilt, d.h.man springt von einem Gebiet in andere, übergreifende Züge sind nicht möglich.
  • – die 3D Form hilft nicht wirklich den Überblick zu behalten oder gar direkt alles anklicken zu können.
  • – die Produktionsverwaltung der Städte hat noch so leichte Bugs. Mit denen kann man aber leben.
  • – die KI war wohl auf „Devot“ gestellt 🙂

Fazit: 2D ist einfacher zu benutzen und schneller.

Warnung vor Kernel 4.8.13 – 32Bit

Aufgrund von Tests auf unserer Serverfarm, kann man nur vor dem Einsatz von Kernel 4.8.13 warnen. Lediglich wenig genutzte Rechner kommen dafür in Frage. Die Testserver unserer Farm fielen nach wenigen Stunden durch wahre OOM-Killer Amokläufe aus, obwohl nicht ein BIT Swap Speicher genutzt wurde, oder der reale Hauptspeicher auch nur annähernd erschöpft gewesen wäre.

Die Ursache kann daher nur Speicherfragmentierung sein. Es gibt zwar in Summe genug Hauptspeicher, aber nicht genug zusammenhängenden Speicher um Anfragen zu befriedigen.

Kernel 4.9+ soll Abhilfe schaffen. Glücklicherweise wurde der grade freigegeben.

Gnomefehler bei Libinputupdate beheben

Da kommt aus heiterem Himmel ein Update für Cinnamon und Gnome kann plötzlich nicht mehr richtig mit der Maus scrollen. Und jetzt ?

In dem Beitrag über die Anpassungen zu den Mausgeschwindigkeiten, die bei Gnome set einiger Zeit nicht mehr sauber funktionieren, wird gezeigt, wie man sein Eingabegerät ermittelt:

~]$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ImPS/2 BYD TouchPad id=11 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ UVC Camera (046d:081b) id=8 [slave keyboard (3)]
↳ Eee PC WMI hotkeys id=9 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=10 [slave keyboard (3)]

Meins ist die ID 11, was an einem bekannten Kernelbug zur Erkennung von Touchpads liegt.

Seit dem besagten Update scrollte meine Maus mit dem Scrollrad falsch rum, was unter Cinnamon komischerweise korrekt funktionierte.  Dank der Liste verfügbarer Eigenschaften des „Touchpads“ :

~]$ xinput list-props 11
Device 'ImPS/2 BYD TouchPad':
    Device Enabled (151):    1
    Coordinate Transformation Matrix (153):    1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Accel Speed (289):    -0.500000
    libinput Accel Speed Default (290):    0.000000
    libinput Accel Profiles Available (291):    1, 1
    libinput Accel Profile Enabled (292):    1, 0
    libinput Accel Profile Enabled Default (293):    1, 0
    libinput Natural Scrolling Enabled (294):    1
    libinput Natural Scrolling Enabled Default (295):    0
    libinput Send Events Modes Available (273):    1, 0
    libinput Send Events Mode Enabled (274):    0, 0
    libinput Send Events Mode Enabled Default (275):    0, 0
    libinput Left Handed Enabled (296):    0
    libinput Left Handed Enabled Default (297):    0
    libinput Scroll Methods Available (298):    0, 0, 1
    libinput Scroll Method Enabled (299):    0, 0, 0
    libinput Scroll Method Enabled Default (300):    0, 0, 0
    libinput Button Scrolling Button (301):    2
    libinput Button Scrolling Button Default (302):    274
    libinput Middle Emulation Enabled (303):    0
    libinput Middle Emulation Enabled Default (304):    0
    Device Node (276):    "/dev/input/event3"
    Device Product ID (277):    2, 5
    libinput Drag Lock Buttons (305):    <no items>
    libinput Horizonal Scroll Enabled (278):

konnte ich mit einem Einzeiler die Scrollrichtung wieder umdrehen:

xinput set-prop 11 289 -0.5 2>/dev/null           # Mausgeschwindigkeit mit LibInput
xinput set-prop 11 294 0 2>/dev/null                # Scrollradrichtung

Komisch, das sowas im Testlauf nicht gefunden wird…

Update: 13.12.2016

Der neue Kernel 4.8.13 behebt das Problem, weil die PS/2 Mäuse jetzt als Maus erkannt werden un dnicht mehr als Touchpads.

WordPress 4.7 wird Euch ggf. die Trafficstats löschen

Kaum auf 4.7 aktualisiert und schon sind die Webtrafficdaten der letzten 6 Monate weg.

Wer Ersatz braucht, muß leider von Null anfangen und das „Traffic Stats Widget“ Plugin installieren. Das fängt dann aber nach Installation wieder bei 0 zu zählen. Das von WP als Dropin installierte Plugin, sieht zwar nett aus, kann aber nur 24h auswerten und uns leider nicht sagen, wieviele Leute in den letzten Tagen/Wochen/Monaten da waren 🙁

 

Root-Exploit im TCP/IP Stack – CVE-2016-8655

Im Linux Kernel klafft die nächste Root-Lücke, diesmal im Netzwerkbereich, dem TCP/IP Stack.

Die Lücke können nur lokale Prozesse ausnutzen, i.d.R. braucht es daher eine weitere Sicherheitslücke z.b. im Browser oder einen angemeldeten Benutzer.  Das Ganze betrifft somit „eigentlich“ nur Server.

Updates gibt es derzeit für Fedora noch keine. Der neuste Kernel 4.8.12-200 vom 2.12. behebt das Problem  noch nicht, trotzdem sollte man den schon einspielen, denn wie man sieht, behebt er andere Securityprobleme:

* Fr Dez 02 2016 Justin M. Forbes <jforbes@fedoraproject.org> – 4.8.12-200
– Linux v4.8.12
– CVE-2016-9755 Fix Out-of-bounds write issue when defragmenting ipv6 packets (rhbz 1400904 1400905)
– CVE-2016-9756 Fix kvm: stack memory information leakage (rhbz 1400468 1400469)
– Fix kvm: out of bounds memory access via vcpu_id (rhbz 1400804 1400805)

Ubuntu stellt als erster gepatchte Kernel bereit, muß man auch mal lobend erwähnen.

Den Exploit für Ubuntu gibt es hier:

Linux Kernel 4.4.0 AF_PACKET Race Condition / Privilege Escalation

Wie man im Source lesen kann, hat sich der Autor auch schon an Fedora 25 probiert, es aber wieder auskommentiert.

Die nächste Sicherheitslücke klafft übrigens im Android Kernel, da können alle bekannten Android Versionen ab 4.4.4 von außen komplett übernommen werden. Erste Patche sind zwar schon bei den Herstellern verfügbar, aber wann die #1 Samsung, das Update bereitstellt, steht in den Sternen 🙁

Hier mal die Liste der von Google genannten Schwachstellenreports, die damit zusammen hängen, einige sind schon zwei Jahre alt :

CVE-2016-9120: Schwachstelle in Kernel ION Subsystem ermöglicht komplette
CVE-2016-8411: Schwachstellen in Qualcomm Komponenten ermöglichen komplette
CVE-2016-8410: Schwachstelle in Qualcomm Audiotreiber ermöglicht Ausspähen
CVE-2016-8408 CVE-2016-8409: Schwachstellen in NVIDIA Grafiktreiber
CVE-2016-8401 CVE-2016-8402 CVE-2016-8403 CVE-2016-8404 CVE-2016-8405
CVE-2016-8406 CVE-2016-8407: Schwachstellen in Kernelkomponenten ermöglichen
CVE-2016-8400: Schwachstelle in NVIDIA Grafikbibliothek ermöglicht Ausspähen
CVE-2016-8399: Schwachstelle im Netzwerk-Subsystem ermöglicht komplette
CVE-2016-8397: Schwachstelle in NVIDIA Grafiktreiber ermöglicht Ausspähen
CVE-2016-8396: Schwachstelle in MediaTek Grafiktreiber ermöglicht Ausspähen
CVE-2016-8395: Schwachstelle in NVIDIA Kameratreiber ermöglicht
CVE-2016-8393 CVE-2016-8394: Schwachstellen im Synaptics Touchscreen-Treiber
CVE-2016-6915 CVE-2016-6916 CVE-2016-6917: Schwachstellen im NVIDIA
CVE-2016-6791 CVE-2016-8391 CVE-2016-8392: Schwachstellen im Qualcomm
CVE-2016-6789 CVE-2016-6790: Schwachstellen in NVIDIA Grafikbibliothek
CVE-2016-6788: Schwachstelle im MediaTek I2C-Treiber ermöglicht komplette
CVE-2016-6786 CVE-2016-6787: Schwachstellen im Performance-Subsystem
CVE-2016-6778 CVE-2016-6779 CVE-2016-6780: Schwachstellen im HTC
CVE-2016-6775 CVE-2016-6776 CVE-2016-6777: Schwachstellen in NVIDIA
CVE-2016-6774: Schwachstelle in Package Manager ermöglicht Ausspähen von
CVE-2016-6773: Schwachstelle in Mediaserver ermöglicht Ausspähen von
CVE-2016-6772: Schwachstelle in Wi-Fi ermöglicht Ausführen beliebigen
CVE-2016-6771: Schwachstelle in Telephony ermöglicht Privilegieneskalation
CVE-2016-6770: Schwachstelle in Framework API ermöglicht
CVE-2016-6769: Schwachstelle in Smart Lock ermöglicht Privilegieneskalation
CVE-2016-6768: Schwachstelle in Bibliothek Framesequence ermöglicht
CVE-2016-6767: Schwachstelle in Mediaserver ermöglicht
CVE-2016-6765: Schwachstelle in Mediaserver ermöglicht
CVE-2016-6764 CVE-2016-6766: Schwachstellen in Mediaserver ermöglichen
CVE-2016-6763: Schwachstelle in Telephony ermöglicht
CVE-2016-6762: Schwachstelle in libziparchive ermöglicht Ausführung
CVE-2016-6758 CVE-2016-6759 CVE-2016-6760 CVE-2016-6761: Schwachstellen in
CVE-2016-6756 CVE-2016-6757: Schwachstellen in Qualcomm Komponeten
CVE-2016-6755: Schwachstelle in Qualcomm Kamera-Treiber ermöglicht
CVE-2016-6492 CVE-2016-6781 CVE-2016-6782 CVE-2016-6783 CVE-2016-6784
CVE-2016-6785: Schwachstellen in MediaTek-Treiber ermöglichen Ausführung
CVE-2016-5341: Schwachstelle in Qualcomm GPS-Komponente ermöglicht
CVE-2015-8967: Schwachstelle in Kernel ermöglicht Ausführung beliebigen
CVE-2015-8966: Schwachstelle in Kernel ermöglicht Ausführung beliebigen
CVE-2014-9909 CVE-2014-9910: Schwachstellen in Broadcom Wi-Fi-Treiber
CVE-2016-5195: Schwachstelle in Linux-Kernel ermöglicht Erlangen von
CVE-2016-5421: Schwachstelle in cURL ermöglicht Ausführung beliebigen
CVE-2016-5420: Schwachstelle in cURL ermöglicht Umgehen von
CVE-2016-5419: Schwachstelle in cURL ermöglicht Umgehen von
CVE-2016-4794: Schwachstelle in Linux-Kernel ermöglicht
CVE-2015-7872: Schwachstelle in Linux-Kernel erlaubt
CVE-2014-4014: Schwachstelle im Linux-Kernel ermöglicht

Wie man top und pstree dazu bringt, lange Zeilen auszugeben

Wer schonmal ein Script geschrieben hat und die Ausgaben einiger Befehle in ein Logfile umgeleitet hat, der kennt das Problem: es werden je nach OS-Einstellungen Spalten abgeschnitten.

In Top sieht das dann so aus:

top - 10:14:45 up 29 min,  1 user,  load average: 0,33, 0,27, 0,25
Tasks: 275 total,   1 running, 274 sleeping,   0 stopped,   0 zombie
%Cpu(s):  3,4 us,  0,8 sy,  0,0 ni, 95,3 id,  0,2 wa,  0,1 hi,  0,1 si,  0,0 st
KiB Mem :  8070108 total,  3490724 free,  2117316 used,  2462068 buff/cache
KiB Swap:  7998316 total,  7998316 free,        0 used.  5548784 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
 3093 Schelm    20   0 1781624 630728 127256 S  31,2  7,8   4:34.94 /usr/lib64+
 3995 Schelm    20   0  157976   4252   3628 R  12,5  0,1   0:00.02 top -c -b +
 2718 Schelm    20   0  602980 169084  73132 S   6,2  2,1   0:45.25 skype
 3433 Schelm    20   0  733632  37944  27296 S   6,2  0,5   0:03.28 /usr/libex+

Für TOP und PSTREE gibt es aber eine jeweils einfache Lösung:

top -b -c -n 1 -w 240

Damit gibt man im Batchmode (-b) wieviele Spalten man sehen will ( -w ), in unserem Fall 240. pstree hat zwar keine Spaltenangabe, aber man kann das Abbrechen abschalten (-l):

pstree –lup

Damit wir möglichst lange Zeilen bekommen, ist hier noch -u für Usernamen und -p für ProcessIds mit angegeben.