Windows: Welcher Prozess blockiert eine Datei?

Wer mit Bordmitteln herausfinden will, welcher der bsplw. drölf “java.exe”-Prozesse auf eine Datei zugreift, der kann den “Resource Monitor” verwenden – “resmon.exe” im Startmenü:

  • Tab “CPU”
  • Reiter “Processes”: Alle zu untersuchenden Prozesse anwählen
  • Reiter “Associated Handles”: In das Suchfeld den Dateinamen eingeben
  • Prozess finden und direkt von hier aus beenden

via

Ubuntu: Launcher, Menü, … weg

Während eines apt-get update wurde ich auf den Login-Screen geworfen und musste mich neu einloggen. Begrüßt wurde ich von meinem Desktop-Hintergrund, dem Kram auf dem Desktop, sowie: nichts anderem.

Langes Hin und Her, letztlich sogar ein Upgrade von 14.04 auf 16.04, aber die Lösung war schließlich:

Quelle

Mµ Uno (2016), ein Erfahrungsbericht*

Anfang April habe ich ein Mµ Uno gekauft (warum?), hier nun ein Update zu meinen Eindrücken. Viele Grüße an Markus! 🙂👋

Vorab: Das ist mein erstes Faltrad, insofern möchte ich hier nicht endgültig bewerten. Aber es gibt einige Punkte, auf die ich nächstes mal achten würde. Keine Ahnung, vielleicht sind die ja “immer” so, aber vielleicht auch nicht. Vielleicht ist es auch eine Frage des Preises; mit gut 500 € ist das Rad eher im unteren mittleren Segment – auf jeden Fall nicht teuer.

Bereich Vorderrad

Die Handbremse ist im “originalen” Design nicht vorgesehen, sondern für den deutschen (? europäischen?) Markt angebaut, weil hier zwei Bremsen vorgeschrieben sind. Das merkt man, die Bremsleistung ist schlecht. Außerdem teilt sich die Bremse die Befestigung mit dem von mir nachgerüsteten Schutzblech, was schlecht ist, denn beim Bremsen verzieht sich das Schutzblech. Alle paar Tage muss man es “richten”.

Schöner wäre: Eine Bremse, deren Arme je an einer Gabelscheide angebracht sind. Dazu müssen entsprechende Befestigungsmöglichkeiten aber vorhanden sein, was sie hier nicht sind:

Bereich Hinterrad

Die Bremsleistung der Rücktrittsbremse ist ebenfalls schlecht.

In die Gabel passt kein Standard 20” Schutzblech (vorher messen!). Ich nutze jetzt ein SKS mini20, aber ich hatte auch schon 20”er hier, die nicht gepasst haben:

Und wenn man auf dem Rad sitzt und fährt, führt die auf dem Rad und den Speichen wirkende Last offenbar dazu, dass die Speichen sich aneinander reiben und “knackende” Geräusche machen…

Schöner wäre: Ein vormontiertes Schutzblech. Und: Probefahren auf einem eingefahrenen Rad! Übrigens erlauben die meisten Falträder nur 100 kg Last – Fahrer inklusive Klamotte und Gepäck!

Bereich Kette

Das Tretlager scheint schon langsam schlapp zu machen; zu merken an einem “Knacken” beim Treten, das man nur spürt, nicht hört. Der Kettenschutz (dieses Plastik über den Kettengliedern) dagegen ist gut!

Die Übersetzung könnte etwas zugfreudiger sein. Man kann den Zahnkranz tauschen, aber das ist natürlich schon ein etwas größerer Eingriff.

UPDATE 9.8.: Das Rad hat einen Ständer, das ist gut!

Bereich Lenker

Die ergonomischen Griffe mit vergrößerter Fläche für die Handballen sind mir zwar zu weich, aber besser, als normale Griffe. Solche würde ich wieder haben wollen, gerne aber aus Kork (?), die sind stabiler. Gibt’s aber nachzukaufen, so what.

Der Bremshebel ist zu klein.

Bereich Sattel

Die Sattelstütze ist rund, was schlecht ist, weil man sie dann bei jedem Klappvorgang ausrichten muss. Schöner, und das habe ich schon an Klapprädern gesehen, ist eine asymetrische Form, die einfach immer gerade ausgerichtet ist.

Die Markierung an der Sattelstütze ist sehr hilfreich, die gibt es auch nicht immer. Hier ist sie etwas klein. An der Sattelstütze lagert sich schwarzer Staub ab, keine Ahnung, ob das vom Fett oder der Lackierung stammt. Das macht die Markierungen noch schlechter lesbar:

PS am Rande: Einige Hersteller raten von gefederten Sätteln ab, weil durch die Schwingung zusätzliche Last entsteht – vgl. 100 kg Limit von oben. Naja, für mich zu spät 🙃

Klappmechanismus

Mit das Wichtigste. Zur Sattelstütze habe ich ja bereits was geschrieben. Aber auch die Scharniere insgesamt sind nur mittel vertrauenswürdig. So sind bsplw. die Kanten, an denen die Klammerung greift, abgeschrägt. Ich stelle mir vor, dass die Klammern da leichter abrutschen, zumindest/vor allem, wenn das mal noch stärker abgenutzt ist:

Dazu kommt: Das Lenkerscharnier muss alle zwei Wochen nachjustiert werden, da es Spiel hat, das man sogar beim Fahren spürt… keine Ahnung, wie lange man die betreffenden Schrauben weiter anziehen kann.

UPDATE 9.8.: Am Hinterrad ist ein Magnet, der hält die beiden Rahmenhälften zusammen. Der Lenker rastet an so einem Plastikteil ein. Beides zusammen führt dazu, dass das Rad in zusammengeklapptem Zustand gut zusammenhält – nichts ist nerviger, als wenn die einzelnen Komponenten auseinanderdriften, wenn man im Bahnhof schnell das Gleis wechseln will. Zu beachten ist außerdem, dass der Lenker “nach außen” klappt, also nicht zwischen den Rahmenhälften liegt, das macht den zusammengeklappten Zustand in sich stabiler. Beim 2016er Modell (meinem) ist das der Fall, bei früheren Modellen nicht.

Insgesamt muss ich sagen: Das gute Stück klappert und knackt hier und da, dabei ist das Rad erst vier Monate alt. Ich poste hier ein Update, wenn sich was Gravierendes tut – aber schon dass ich das nach vier Monaten so ankündigen muss, finde ich bedenklich. Schade, denn insgesamt fährt es sich gut!

*Haha: Erfahrungsbericht!

Mikrotik hAP lite als WLAN Adapter

Mehr für’s Geld geht nicht: Für etwas über 20 Euro habe ich mir einen Mikrotik hAP lite geholt, ein WLAN-Router mit vier Ports – absolut professioneller Software (“RouterOS”, das ist quasi der Aufhänger dieses Posts). Hier gibt’s eine Demo.

Der konkrete Anwendungsfall: Ich möchte über die LAN-Buchsen meinen Fernseher, Receiver, Bluray-Player und ein Raspberry in’s WLAN bringen. Ja, das geht auch einfacher, aber a) nicht günstiger, und b) ist das auch ein bisschen ein Bastelprojekt. Man liest ausschließlich Gutes über RouterOS, insofern wollte ich mir das mal ansehen. Und falls das was kann, würde ich mittelfristig meinen alten Netgear-Router durch einen hAP ac ersetzen – wohl der günstigste WLAN-Router mit Gigabit-Ports. Das wird dann übrigens weitere schöne Möglichkeiten eröffnen, denn mehrere Mikrotik-Router lassen sich von einem “Master” aus verwalten; das Stichwort heißt CAPsMAN.

Aber ich schweife ab. Nur noch kurz: Die Lernkurve von RouterOS ist steil. Man liest oft “grundlegende Netzwerkkenntnisse sind nötig”, aber das ist nur die halbe Wahrheit: Man muss auch wissen, wie RouterOS aufgebaut ist, und es gibt kein Handbuch. Und es gibt ein Undo; verkonfiguriert man sich und erreicht das Webinterface nicht mehr, fängt man von vorne an (Strom trennen und bei gedrücktem Reset-Knopf wieder anschließen. Gedrückt halten, bis die LED blinkt).

Ein erstes Setup habe ich mit den beiden Büchern “RouterOS by Example” von Stephen Discher und “Learn RouterOS” von Dennis Burgess hinbekommen, schließlich brauchte ich aber diese Anleitung. Leider gibt es viele… irreführende? veraltete? How-Tos im Netz, insofern hier meine Abwandlung. Ich nutze dafür RouterOS v6.30.4.

0. Prep

  • WLAN am Notebook aus
  • hAP per Ethernet an’s Notebook anschließen. Ich habe nicht Port 1 benutzt, weil der für’s WAN vorgesehen ist. IP-Adresse automatisch beziehen!
  • hAP einschalten
  • Browser öffnen
  • zu 192.168.88.1 verbinden (nach dem Booten braucht der hAP manchmal ~10 Sekunden)
  • User admin, kein Passwort

1. Security Profil anlegen

Das meinte ich damit, dass man wissen muss, wie RouterOS funktioniert: Man wird nicht nach dem Passwort gefragt, wenn man sich zu einem WLAN verbindet, sondern man wählt ein vorher konfiguriertes Profil für das WLAN-Interface bevor man sich verbindet.

  • “Wireless” öffnen (links in der Seitennavi)
  • Tab “Security Profiles” öffnen
  • “Add new”, “Name” vergeben, “WPA” und “WPA2” Schlüssel des Ziel-WLANs hinterlegen, mit “OK” speichern und schließen.

2. WLAN-Bridge löschen

  • “Bridge” (links in der Seitennavi)
  • Tab “Ports”
  • Interface “wlan1” öffnen, löschen

3. DHCP-Client einrichten

Ich wollte eigentlich auch den Geräten am Mikrotik von meinem zentralen DHCP-Server eine IP zuweisen lassen. Das habe ich noch nicht hinbekommen (ich vermute die Einstellung aber stark unter “DHCP Relay” statt “DHCP Client”). Stattdessen bekommt der hAP eine IP aus dem WLAN, verteilt an seine Clients aber selber Adressen. Na gut, was solls.

  • “IP” (links in der Seitennavi)
  • im Submenü dann “DHCP Client”
  • bestehende Einträge rauswerfen!
  • neuen Eintrag für das Interface “wlan1” anlegen, “Apply”, “OK”

4. NAT-Einstellungen

  • “IP” -> “Firewall” (links)
  • Tab “NAT”
  • bestehenden Eintrag öffnen, “Out. Interface” auf “wlan1” ändern

5. WLAN-Mode

  • “Wireless” (links)
  • Tab “Interfaces”, “wlan1” öffnen
  • “Mode” auf “station”, unten das Security Profile auswählen, “Apply”
  • “Scan” (oben in der Tableiste) starten
  • Das Ziel-WLAN auswählen, verbinden

6. Last but not least

Zu “Quick Set” (links) wechseln, hier sollte unter “Wireless” (linker Bereich) eine bestehende WLAN-Verbindung (“Status: connected to ess”, und “ess” ist nicht der Name meines WLAN) und unter “Wireless Network” (rechter Bereich) eine IP-Adresse angezeigt werden; letzteres kann einige Sekunden dauern. Gibt es diese Bereiche nicht, steht das Dropdown oben rechts nicht auf CPE, d.h. es ist vorher schon etwas massiv falsch gelaufen.

Internet sollte jetzt erreichbar sein.

Spock: “unexpected token” in multi-line condition

Folgendes setup:

Folgender Fehler, wenn man das finale “true” weglässt:

Spec expression: 1: unexpected token:  @ line 1, column 685.

Man beachte: Der unerwartete Token ist leer 😠 Das Ganze ist eine “known limitation, namely that multi-line conditions don’t always work”, siehe.

Mockito: Parametrisierte Übergabeparameter prüfen

Den Typ eines Parameters prüft man so:

Aber was, wenn man auf einen bestimmten Übergabeparameter und dessen parametrisierten Typ prüfen will?

Quelle, und, und.

Selenium: Test, ob ein Element komplett im Viewport ist

PS: viewport.intersects(element) würde prüfen, ob das Element mindestens teilweise im Viewport liegt.