/dev/blog/ID10T

Advertisement

Linux - auf mehrere Strings in einer Zeile greppen

• Linux • Comments

Linux ist toll. Für jedes Problem findet man schnell eine Lösung, die meistens sogar auf der Hand liegt oder einem zumindest nach Erklärung sofort einleuchtet. So auch bei diesem Kurztipp. Will man eine Datei nach mehreren Strings durchsuchen, habe ich zwei favorisierte Methoden.

Pcregrep

Weiß man, in welcher Reihenfolge die Strings in der Zeile vorkommen, kann man das Programm pcregrep nutzen, insofern es denn installiert ist oder nachinstalliert werden kann. Damit kann man dann perlähnliche Regular Expressions nutzen, die das ganze Konstrukt sehr einfach machen. Um beispielsweise den Benutzer "m3adow" mit der bash als Shell in der Passwd zu suchen, reicht dann ein:

getent passwd | pcregrep "m3adow.*bash"

Da pcregrep wie gesagt perlähnliche RegEx nutzt, ist es sehr mächtig.

Piping

Weiß man nicht genau, in welcher Reihenfolge die Strings in der Zeile vorkommen, hat pcregrep nicht auf dem System und kennt sich auch nicht mit Regular Expressions aus, kann man immer noch die "Lösung des kleinen Mannes" nutzen und mehrere greps hintereinander pipen.

getent passwd|grep "m3adow"|grep "bash"

Das ist zwar nicht so effizient, da grep mehrfach aufgerufen wird, klappt aber auf jeden Fall.
Falls ihr noch andere Methoden habt, dieses Problem zu lösen, freue ich mich, diese in den Kommentaren zu lesen. :-)

CM10.1 Nightlies mit TabletUI und MultiuserUnterstützung

• Android • Comments

Meine Spielerin #2 und ich besitzen und benutzen zusammen ein Motorola Xoom*. Weil ich ein großer Fan von Custom-ROMs, insbesondere des Cyanogenmods bin, läuft dort natürlich auch CM drauf, natürlich die neuste Version CM10.1, die es für das Xoom bisher nur als Nightlies gibt. Leider ist bei unserer Version mit 3G (der Modellname ist Everest) im Default der Multiusermodus, der für Android 4.2 angekündigt wurde, wegen irgendwelchen Problemen deaktiviert worden. Da mich aber sowohl die Benachrichtigungen als auch die Apps meiner Geliebten wenig interessieren, will ich diesen unbedingt haben. Eventuelle kleinere Probleme nehme ich dafür in Kauf. Außerdem gefällt es mir auch nicht, dass das Cyanogenmodteam dem Xoom eine "Phablet"-Ui verpasst hat. Die sieht im Standard so aus:
2013-05-06-xoom-phabletui

Eine obere Notificationbar auf einem Tablet? Halte ich für sinnfrei, will ich nicht. Hier also meine Vorgehensweise. Ich empfehle, euch genaustens an die Schritte und die Reihenfolge zu halten, da es sonst Probleme geben könnte, vor allem bei der Multiuserunterstützung. Diese Vorgehensweise dürfte in begrenztem Maße auch für die meisten anderen Tablets und Smartphones funktionieren. Nach meiner Erfahrung sind ROMs ohne integrierte Google Apps empfehlenswert.

  1. Das gewünschte ROM herunterladen und flashen. Die neusten CM10.1 ROMs für das Xoom Everest findet ihr hier. Für andere Xoom Versionen, schaut in den Thread auf XDA-Developers. Je nachdem welches ROM vorher installiert war, ist ein Wipe des Caches und des Dalvik Caches ausreichend, ansonsten ist ein Full Wipe notwendig.
  2. Android booten, die App "4.2 Multiple User Enabler" runterladen und installieren.
  3. Nachdem ihr die App installiert habt, führt sie aus, "Enable the feature" und bestätigt die Superuser-Berechtigungen.
    2013-05-06-4-2-multiple-user-enable
  4. Rebootet anschließend ins Recovery, wipet Dalvik-Cache und Cache.
  5. Dann wieder ins Android-System zurück. Legt nun alle Benutzer an, die ihr auf eurem Tablet haben wollt. Versucht auch direkt, euch mit diesen einzuloggen. Wenn dabei ein unzähmbarer Haufen an Absturzberichten kommt, funktioniert meine Methode für euch eventuell nicht oder ihr habt die Reihenfolge nicht eingehalten. Bei meinem Xoom funktionierte aber alles.
  6. Wechselt nun wieder in das Recovery und flasht eure Google Apps.
  7. Startet das Tablet anschließend wieder in das System und checkt, ob ihr euch mit allen Benutzern an eurem Google Konto anmelden könnt (wenn gewünscht).
  8. Nun kommen wir zur TabletUi. Dafür benötigen wir den Autopatcher.
    Ich empfehle die Nutzung der neusten Version von github, da ich bei den älteren Versionen Probleme mit dem Patchen hatte.
  9. Patcht euer Rom mit dem tabletUI-Mod. Wie ihr das macht, hängt von eurem Betriebssystem ab, ist aber im Autopatcher-Thread ausreichend erklärt.
    Wenn ihr schon dabei seid, würde ich zusätzlich noch den Openpdroid-Mod empfehlen, der es einem per Zusatzapp ermöglicht, anderen Apps Rechte zu verwehren. So oder so erhaltet ihr am Ende zwei Dateien, eine update-* und eine restore-*.
  10. Kopiert beide Dateien auf euer Tablet und flasht die update-* via Recovery. Macht anschließend wieder ein Wipe von Cache und Dalvik-Cache.
  11. Startet ins System und prüft bei allen Benutzern, ob alles erwartungsgemäß funktioniert.

Fertig! Ihr habt nun (hoffentlich) ein System mit Multiuser-Unterstützung und einer vernünftigen UI für ein Tablet.

2013-05-06-xoom-tabletui

Falls ihr doch Probleme habt, fragt hier oder je nach Schritt besser in dem jeweiligen XDA-Developers Thread.

SSH: Das Leben erleichtern mit einer config-Datei

• Linux • Comments

Hier wieder ein kleiner Happen für zwischendurch, während ich an ein paar längeren Artikeln schreibe (deren Veröffentlichungsdatum soon™ ist).

Ich habe schon seit Jahren mit Linux und SSH zu tun. Immer wieder habe ich mich darüber geärgert, Aliases für jede Verbindung anlegen zu müssen, um Servername, Benutzername, SSH-Port und Private Key passend aneinanderzubringen. Vor Kurzem habe ich von der Möglichkeit gelesen, eine config-Datei unter ~/.ssh/ zu erstellen, wodurch sich die ganze Sache schonmal etwas vereinfacht hat. Wie gesagt legen wir im .ssh-Unterordner unseres Homeverzeichnisses eine config-Datei an. Diese kann man etwa so befüllen:

Host Server1
    HostName foo.bar.org
    Port 1122
    IdentityFile ~/.ssh/foobar.rsa
    User Foo
Host Server2
    HostName bar.foo.org

Die Parameter sind meiner Meinung nach selbst erklärend. Nun kann ich mich durch eine simple Eingabe von

ssh Server1

mit dem Server unter dem angegebenen Hostname mit dem angegebenen Port, dem eingestellten Private Key und dem genannten Benutzer verbinden.
Natürlich kann man die config-Datei für viel mehr benutzen, etwa individuelle Hosteinstellungen oder globale Benutzereinstellungen, aber für mich ist das momentan die nützlichste Funktion.
Frage an meine Mitleserschaft: Wie macht ihr das mit der Verwaltung von SSH-Verbindungen? SSH-Agent, Aliases oder vielleicht eine ganz andere Methode? Ich bin für jede Vereinfachung offen. :-)

Kurztipp: Doppelklickproblem bei Mäusen beheben

• Hardware • Comments

Wie ich vorletztes Jahr berichtet hatte, habe ich mir eine Razer Deathadder Lefthanded Edition* gekauft. Insgesamt bin ich eigentlich auch ziemlich zufrieden mit der Maus, doch hatte ich die letzten Wochen das Problem, dass einzelne Mausklicks hin und wieder als Doppelklick erkannt wurden. Da das auf Dauer ziemlich nervig wird, habe ich eine Lösung dafür gesucht und in Form dieses Videos auch gefunden.

Da ich kein Motorenöl zur Verfügung hatte, habe ich Olivenöl genommen, das funktioniert auch.
Jetzt ist meine Deathadder wieder gewohnt angenehm zu benutzen. :-)
*=Reflink

OT: Fast schon SDSL, leider

• Rants • Comments

Schön, wenn der Upload höher ist, als der Download. Nicht so schön, wenn das dadurch kommt, dass man eigentlich 50 MBit/s Download und 10 MBit/s Upload haben sollte, aber nur eine der beiden Versprechungen annähernd erfüllt wird. :-(

Wie man sieht, wurde der Test am Samstag abend um viertel vor acht gemacht. Tagsüber variierte die Rate zwischen 35 MBit/s und 7 MBit/s. Ich habe nun eine Supportanfrage aufgemacht und bin auf die Antwort gespannt. Gegenwärtig empfehle ich niemandem, sich bei O2 VDSL zu besorgen, da das Netz dies offenbar nicht stabil ausliefern kann, zumindest nicht im Rhein-Main Gebiet.

Advertisement