asunder mit ogg-Vorbis-Unterstützung

Vor kurzem habe ich asunder installiert, weil ich ein paar Audiodateien von einer CD auf meinen Laptop übertragen wollte. Als OptDeps ist vorbis-tools: for ogg support gelistet. War bei mir auch bereits installiert. Beim Start meckerte asunder aber direkt rum:

'oggenc' wurde nicht gefunden. Asunder benötigt diese Applikation jedoch zum Erstellen von OGG-Dateien.

Das Erstellen von OGG-Dateien ist daher nicht möglich.

Weiterlesen

Veröffentlicht unter Arch Linux, OSBN, Tipps&Tricks, Uncategorized | 3 Kommentare

Zeit für eine Umorientierung

Dieser Blog hat jetzt eine Weile vor sich hin geschimmelt, jetzt ist es an der Zeit, ihn mal grundlegend zu überarbeiten. Die „Über mich“-Seite ist seit geschätzt zwei Jahren nicht mehr gültig, weil sie mich nicht mehr abbildet (ich archiviere sie, falls da jemand noch Interesse dran hat). Außerdem benutze ich gar kein Gentoo mehr, sondern Arch Linux, und eigentlich wird der Blog auch damit zukünftig nur am Rande zu tun haben.

Stattdessen soll das Ganze ein hübsches Sammelsurium meiner Gedanken zu allen möglichen Themen werden:

  1. technische Themen, die Arch Linux, Ubuntu, oder Software im Allgemeinen ins Auge fassen, darunter technische/geekige Lösungen für Probleme, die wir ohne Computer alle gar nicht hätten,
  2. Kommentare zu irgendwelchen Ereignissen in der Welt, die vielleicht für den einen oder anderen von Interesse sein könnten,
  3. sprachliche Perlen (denn ich bin Sprachwissenschaftler mit einem ausgeprägten Interesse an „korrekter“ Sprache (was immer das heißen mag)),
  4. computerlinguistische Themen, die teilweise politisch interessant sind (Hate-Speech-Erkennung finde ich besonders interessant), aber auch Algorithmen,
  5. Weiteres, wenn es mir interessant genug vorkommt.

Das heißt allerdings auch, dass mein Blog nicht länger wirklich in den OSBN passt, fürchte ich. In Teilen vielleicht schon, aber in anderen wieder nicht. Nun möchte ich den OSBN nicht mit Beiträgen zuspammen, die dort nichts zu suchen haben. Allerdings hoste ich nicht selbst, deswegen kann ich nicht kontrollieren, dass nur bestimmte Beiträge dort landen (vielleicht sollte ich das mal demnächst angehen). Ich verliere also einige Leser über den Umstand, dass ich OSBN verlasse. Das ist zwar schade, aber momentan die einzige Lösung, die ich dafür sehe (wenn jemand natürlich eine Idee hat, darf er die gern mit mir teilen).

Veröffentlicht unter OSBN, Uncategorized | 6 Kommentare

Alte Über-Mich-Seite

Dies ist die „archivierte“ Version meiner Über-Mich-Seite. Die aktuelle Version findest du hier.

Lieber Leser,

ich heiße dich auf meinem Blog herzlich willkommen! Sicher möchtest du ein bisschen über den Kopf hinter diesen Texten und Gedanken erfahren. Genau dafür ist diese Seite da 🙂

Ich heiße Alex, studiere in Gießen und benutze seit etwa Oktober 2011 Linux, also ungefähr seit Erscheinen von Ubuntu 11.10 Oneiric Ocelot, das ich noch selbst verwendet habe. Mit dem Erscheinen der LTS-Version, 12.04 Precise Pangolin, war ich seither unterwegs, probierte aber auf unterschiedlichen Medien verschiedene Linux-Distros aus (darunter Vector Linux, eine Slackware-basierte Distribution, und Puppy Linux). Mein Lieblingsdesktop ist XFCE, obwohl ich Ubuntus Unity tatsächlich praktisch fand. Nach einigem Hin und Her habe ich mich schließlich einer großen Herausforderung gestellt: Ich bin auf Gentoo umgestiegen, was etwa im September 2013 gewesen sein dürfte. Auch hier verwende ich XFCE.

Was mich wahrscheinlich unter den Gentoo-Usern relativ einzigartig machen dürfte, ist, dass ich gar nicht von informatisch informierter Seite her komme und reiner Desktop-User/Anwender bin (was nicht heißt, dass ich dem Terminal abgeneigt wäre, im Gegenteil!). Ich hatte mich vor Ubuntu nie großartig für Computer interessiert, habe aber seither Blut geleckt 😀 Ich studiere auch nichts Informatisches (nähere Informationen gibts hier), sondern betrachte die ganze FLOSS-/Linuxcommunity bisher von außerhalb. Allerdings gefällt sie mir sehr gut und ich hoffe, mit meinem Blog und meinem Beitragen die Community bereichern zu können und noch ein paar bislang Unbelehrte doch noch belehren zu können. Bei einigen Menschen ist mir auch das schon gelungen!

Falls du sonst irgendwelche Fragen an mich hast, kannst du mir gern schreiben. Ich bin meistens in freenode im IRC zu finden (Nick: Luyin), per Jabber erreichbar (luyin@jabber.ccc.de), ansonsten reagiere ich auch auf Emails an onkel-pflaume@web.de.

Ich wünsche dir viel Vergnügen beim Lesen meines Blogs und hoffe, dass wir uns bald in den Kommentaren wiedersehen 🙂

Herzliche Grüße,

Alex

PS:
Ich habe auch einen öffentlichen GPG-Email-Schlüssel für dich, Fingerprint:
78A6 ED59 620D C69A 9AEC 627B AF41 C6DE AF03 316E
Der Schlüssel ist auf den Keyserver pool.sks-keyservers.net hochgeladen.
Bitte hilf mit, die Nutzung von Email-Verschlüsselung zu verbreiten, um Abhörung entgegenzuwirken!

Veröffentlicht unter Uncategorized | 1 Kommentar

Wie ich zu Arch Linux gekommen bin

Hier ist lange nichts passiert, weil ich schwer mit Privatleben, Uni etc. beschäftigt war. Auch dieser Post wird eher kurz, weil es hier immer noch ziemlich rund geht. Aber ich will nicht, dass der Blog ganz verkommt.

Durch einen Eintrag auf dem Planeten (https://bbs.archlinux.de/viewtopic.php?id=28351) (https://planet.archlinux.de/) bin ich auf die Idee gekommen, auch mal meinen PC-Werdegang zu beschreiben, der heute bei Arch Linux angekommen ist.
Erste Erfahrungen mit Computern überhaupt habe ich mit Windows 3.1 am Arbeits-Laptop meines Vaters gemacht. Ahnung hatte ich damals noch von nichts und habe auch hauptsächlich Solitär gespielt. Meinen ersten eigenen Computer bekam ich, als ich etwa 10 war. Als Betriebssystem war Windows 95 oder 98 drauf.

Diesen Computer habe ich ziemlich häufig „kaputt“ gemacht, indem ich an Einstellungen rumexperimentiert habe. Dummerweise konnte ich mir damals noch nicht selbst helfen, weswegen ein computeraffiner Bekannter meiner Eltern das Gerät regelmäßig auslieh und ihn wieder reparierte. Dabei beliefen sich Reparaturen auch teilweise auf völlig banale Dinge wie eine zu grobe Auflösung, durch die man die Buttons einzelner Fenster nicht mehr sehen und so das Fenster nicht mehr bedienen konnte.

Auf diesem Computer habe ich hauptsächlich gespielt, später, als auch die Schule Wind davon bekam, dass in vielen Privathaushalten diese elektronischen Wunderwerke zu finden waren, kamen dann die typischen Office-Anwendungsfälle hinzu – Referate, Präsentationen und Aufsätze. Etwa in dieser Zeit hatten wir auch einen Computer-Workshop in der Schule, wo wir den Umgang mit Excel und Word lernten. Nichts Aufregendes.

Der nächste Computer war nötig, als der alte irgendwann nicht mehr mitspielte. Ich weiß nicht mehr genau, wann ich den bekam, aber er war mit Windows XP ausgestattet.

Kurz vor Beginn meines Studiums erhielt ich dann einen Laptop mit Windows Vista. Zu diesem Zeitpunkt hatte ich schon etwas mehr Verständnis (schon mal Knoppix benutzt; die PCs in meiner Schule waren mit irgendetwas SUSE-artigem ausgestattet; etc.), aber Reparaturen jedweder Art hätte ich nicht hinbekommen. Immerhin war ich zu diesem Zeitpunkt schon der Computerexperte in der Familie, wobei sich die Expertise auf googlen und lösen beschränkte.

Weil Vista katastrophal zu bedienen war (es war zwar eine deutliche Verbesserung seit XP zu spüren, aber teilweise war die Umsetzung mangelhaft; außerdem wurde der Laptop sehr bald maßlos langsam und war kaum noch zu bedienen), informierte ich mich, ob ich nicht das kurz darauf erschienene Windows 7 auf den Laptop spielen könnte. Es stellte sich heraus, dass das sehr wahrscheinlich nicht möglich gewesen wäre, weil die Hardware dafür nicht ausreichte. Also spielte ich wieder Windows XP auf. Das war bis dahin meine erste eigene Betriebssystem-Installation. Es dauerte fast einen ganzen Tag, aber am Ende war ich recht zufrieden.

Als bei dem Laptop der Bildschirm begann kaputtzugehen und er nur noch über externen Monitor nutzbar war, wurde er für die Nutzung in der Uni unbrauchbar. Ein neuer Laptop musste her. Zu diesem Zeitpunkt hatte ich von einem Freund erfahren, dass er Ubuntu installiert hatte und damit auch recht zufrieden war. Ich beschloss, das ebenfalls zu versuchen, bestellte den Laptop ohne vorinstalliertes Betriebssystem und installierte Ubuntu 11.10, Oneiric Ocelot. Mit dieser Ubuntu-Version packte mich die Begeisterung für Linux-Systeme, auch wenn ich damals noch wenig davon verstand, wie weit Ubuntu mit seiner Eigenentwicklung Unity von der Grundlage Linux entfernt ist. Ich begann aber, mich darin einzulesen, zu experimentieren und das Terminal kennen- und lieben zu lernen.

Auf einem anderen alten Laptop testete ich nebenher regelmäßig diverse andere Ubuntu-Varianten wie Xubuntu und andere Distributionen wie Vector Linux (ein Slackware-Derivat).

Um mehr über Linux zu lernen, installierte ich nach ein paar Jahren Ubuntu-Erfahrung (seither habe ich nie wieder Windows gehabt, allerdings habe ich Windows 7 noch auf den Uni-Rechnern genutzt) Gentoo auf meinem Haupt-Laptop. Das hat mich viel gelehrt und mich vor allem dazu angeleitet, mir selbst zu helfen. Seither ist auch XFCE mein Standard-Desktop.

Nachdem ich mit Gentoo eine Weile experimentiert hatte, störte mich daran hauptsächlich, dass Updates so lange dauerten und so viel Rechenkapazität kosteten. Das liegt natürlich an der Natur von Gentoo als Meta-Distribution, bei der der größte Teil der Pakete direkt aus dem Quellcode gebaut wird. So kehrte ich zum weniger komplizierten Xubuntu zurück. Dort merkte ich aber schnell, dass ich auch nicht immer glücklich war, denn oft gab es die neuste Software nur in PPAs oder musste sonstwie umständlich beschafft werden. Auch störten mich die standardmäßig gesetzten Einstellungen oft, wodurch ich mich wieder auf die Suche nach einer „aufgeräumteren“ Distribution umsah. Der Blick fiel zu diesem Zeitpunkt schon recht häufig auf Arch Linux; einige Bekannte setzten es erfolgreich und glücklich ein. Arch ist klein, simpel, schnell, minimalistisch… genau wie ich es brauchte. Was mich abschreckte, waren die Berichte, dass man Zeit für Fehlersuche brauche.

Ich entschied mich dazu, es erst einmal in einer VM zu versuchen; so konnte ich jederzeit produktiv arbeiten, aber trotzdem herausfinden, wie der Umgang mit Arch so war. In dieser Umgebung lernte ich die Grundlagen von Pacman und stellte die wichtigsten Parameter (Umgebungsvariablen, Desktop-Einstellungen) ein, um herauszufinden, was alles installiert und eingerichtet sein muss, damit ich damit zufrieden bin. Nach etwa 2 Monaten (schätze ich, denn ich weiß es nicht mehr) fühlte ich mich bereit genug, den Sprung auf das echte System zu wagen und setzte Arch auf dem Laptop neu auf (natürlich habe ich bei jeder bisher genannten Änderung home gesichert. Nur falls ihr das lest und darüber nachdenkt, euer System zu wechseln 😉 ). Seither bin ich auf Arch unterwegs, das ist jetzt etwa ein halbes Jahr her. Natürlich hab ich das ein oder andere Mal irgendetwas Doofes gemacht und musste dann von einem Live-System chrooten, um es zu reparieren, oder ein entferntes Paket neu installieren, weil irgendetwas nicht mehr funktionierte. Aber ich habe es bisher nicht bereut.

Theoretisch könnte ich mir vorstellen, wieder ein Ubuntu-basiertes System zu benutzen (aber sich nur mit XFCE); allerdings habe ich momentan keine Veranlassung dazu.

Gerade ist mir noch eingefallen, dass ich durch Rechner an meinem Arbeitsplatz auch mit Mac OS X in Berührung gekommen bin. Ich habe die unixoide Ähnlichkeit zu den mir bekannten Linux-Systemen durchaus als positiv wahrgenommen, allerdings würde ich mir keinen kaufen.

Wie seid ihr zu euren heutigen Systemen gekommen und was nutzt ihr so?

Herzliche Grüße,

Luyin

Veröffentlicht unter Arch Linux, OSBN, Umstieg | Verschlagwortet mit , , , , | Kommentar hinterlassen

Kurztipp: Eingabezeile in LibreOffice Calc per Tastenkombination erreichen

Wer gelegentlich in einer Tabellenverarbeitung arbeitet, hat sicherlich schon mal Unterschiede bemerkt, je nachdem ob man direkt in der ausgewählten Zelle tippt oder die Eingabezeile nutzt. Kopiert man beispielsweise eine URL direkt in die Zelle, wird sie bei LO Calc als normaler Text eingefügt, dagegen als Hyperlink erkannt, wenn man in die Eingabezeile kopiert.

Wenn man nun viele URLs in Zellen kopieren will, stört es vielleicht, dass man jedes Mal erst in die Eingabezeile klicken muss. Dafür gibt es Abhilfe: Unter Extras → Anpassen → Tastatur findet sich etwas versteckt der Eintrag „Eingabezeile“. Den kann man sich auf eine bequeme Tastenkombination legen. Ich habe mich für F3 entschieden:

calc_hotkeysDie andere im Screenshot zu sehende Tastenkombination ist eine Standardbelegung, die man natürlich ebenfalls verwenden kann.

Veröffentlicht unter OSBN, Tipps&Tricks, Workflow | Verschlagwortet mit , , | Kommentar hinterlassen

Externe Programme unter /opt installieren

Auch unter Linux hat man ja manchmal das Bedürfnis oder die Notwendigkeit, ein Programm nicht über die Paketverwaltung zu installieren, sondern von Hand, etwa weil man die neuste Version benötigt, die ihren Weg in die Paketquellen noch nicht gefunden hat, oder weil das Paket überhaupt nicht in der Paketverwaltung existiert.

Das manuelle Installieren solcher Pakete besteht meist daraus, es von der Website des Herstellers herunterzuladen, zu entpacken und ein Startskript auszuführen. Dabei spielt der Ort, an den das Paket entpackt wurde, insofern eine Rolle, als das Programm dann genau dort installiert ist. Ist der Ort nicht verfügbar oder wird der Pfad geändert, ist das Programm ohne manuelle Bearbeitung nicht mehr zu starten.

In der Regel kann man solche Programme im eigenen Home-Verzeichnis entpacken. Vielleicht möchte man aber alle Programme an einem Ort haben, der zum System gehört statt zum User (weil man das Programm allen Benutzern zur Verfügung stellen will, wegen der Ordnung…). Dazu bietet sich der Ort /opt an (siehe auch: Ubuntuusers-Wiki: Verzeichnisstruktur). In diesem Artikel zeige ich anhand des Beispiels PyCharm von Jetbrains, einer Python-IDE, wie eine solche Installation ablaufen kann.

Wie schon erwähnt lädt man das Programmpaket zunächst von der Website der Entwickler herunter. Wichtig ist hierbei, dass man nach dem Download die Paketsignatur verifiziert. Im Falle von PyCharm ist eine sha256-Signatur gegeben. Dazu führt man im Terminal „sha256sum /Pfad/zum/Paket“ aus. Das Ergebnis vergleicht man mit der Angabe der Signatur auf der Website. Nur wenn diese zu 100 % übereinstimmen, darf man fortfahren. Wer das nicht tut und sich irgendwas einfängt, ist selbst schuld.

Als nächstes entpackt man das Paket nach /opt. Im Terminal geht es am unkompliziertesten: Versucht man nämlich, mit der Archivverwaltung nach /opt zu entpacken, erhält man höchstwahrscheinlich einen Fehler: Man habe nicht die erforderlichen Zugriffsrechte, um hier etwas zu entpacken. Das liegt daran, dass /opt dem User root gehört. Man kann damit auf zwei Arten umgehen: Entweder man entpackt das Paket mit root-Rechten oder man legt eine neue Gruppe an, der man den eigenen User (und alle anderen, die auf den Ordner und seinen Inhalt zugreifen dürfen) hinzufügt. Ich zeige hier, wie es mit der zweiten Variante geht. Dazu lege ich eine Gruppe an, die genau so heißt wie das Programm, das ich installieren will:

# addgroup pycharm # Gruppe anlegen
# usermod -aG pycharm meinbenutzer # meinbenutzer wird Mitglied der Gruppe pycharm
# mkdir -p /opt/pycharm # der Zielort wird angelegt
# chown root.pycharm /opt/pycharm # der Zielort erhält die notwendigen Berechtigungen (1)
# chmod g+rw /opt/pycharm # der Zielort erhält die notwendigen Berechtigungen (2)

Anschließend muss man sich mit dem Benutzer einmal ab- und wieder anmelden. Ist man allerdings ohnehin im Terminal unterwegs, kann man es sich leichter machen: Der Befehl

$ newgrp - pycharm

sorgt dafür, dass ich in der aktuellen Shell (also im aktuellen Terminalfenster, nirgends sonst!) automatisch in die neuen Gruppen hinzugefügt werde.

Jetzt kann ich das Paket endlich an den entsprechenden Ort entpacken: Dazu navigieren wir in den Ordner /opt/pycharm und führen

$ tar -vzxf /Pfad/zum/Paket

aus.

PyCharm kann nun mit einem Doppelklick auf die Datei pycharm.sh (oder im Terminal mit „sh /opt/pycharm/pycharm-community-4.5/bin/pycharm.sh“) gestartet werden. Jedes Mal möchte ich das aber nicht machen. Bei PyCharm muss ich das auch nicht, denn ein Eintrag im Anwendungsmenü wird automatisch angelegt. (Eventuell muss man bei einem Upgrade des Programms dann manuell den Dateipfad im Starter anpassen, damit dann auch die richtige, neue Programmversion gestartet wird)
Alternativ oder zusätzlich zu einem Starter im Anwendungsmenü kann man den Pfad /opt/pycharm auch seiner PATH-Variable übergeben, damit man vom Terminal aus automatisch „pycharm“ starten kann. Dazu verweise ich mal wieder auf das Ubuntuusers-Wiki.

 

Ich hoffe, euch damit behilflich gewesen zu sein!

Veröffentlicht unter Applikationen, Howto, OSBN, Terminal | Verschlagwortet mit , , | Kommentar hinterlassen

Neue Fonts installieren

Manchmal hat man für besondere Anlässe oder besondere Texte den Wunsch, keinen gewöhnlichen Font zu benutzen, sondern einen, der den Text ganz besonders zur Geltung kommen lässt.

In diesem Post möchte ich die Installation neuer Fonts unter einem Linux-System beschreiben und ein paar grundlegende Informationen zu Fonts geben.

 

Font oder Schriftart?

Als Font bezeichnet man in der Regel alles, was mit Schriften an einem Computer zu tun hat. Eine Schriftart bezeichnet eher die Schrift, wie sie beim Drucken und handschriftlichen Schreiben verwendet wird. Für die Zwecke dieses Posts können wir die Unterschiede jedoch ignorieren.

Es gibt verschiedene Arten von Fonts, die für verschiedene Anwendungsgebiete entwickelt wurden:

  • proportionale Fonts sind solche, bei denen die Buchstaben nicht breiter sind, als sie sein müssen. Dabei haben schmalere Buchstaben, wie „i“ oder „l“ auch weniger Breite als etwa ein „w“.
    • Serifen-Fonts wurden für den Buchdruck konzipiert. Da sie durch die Serifen für die Augen Linien vortäuschen, erleichtern sie den Lesefluss. Beispiele für Serifen-Fonts sind die aus Windows bekannte Times New Roman oder die Computer Modern, die Standardschriftart von LaTeX.
    • Serifenlose, auch Sans-Serif bezeichnete, Schriften eignen sich besonders gut für den Druck auf Plakaten, wo schon von ferne einzelne Buchstaben deutlich erkannt werden müssen, auf Straßenschildern, und auf Computerbildschirmen. Beispiele sind Arial, die Ubuntu-Schrift, oder DejaVu Sans.
  • dicktengleiche (sic) Schriften, im Bezug auf Computerfonts oft mit „mono“ im Namen, sind nicht proportional. Das bedeutet, dass jeder Buchstabe dieselbe Breite aufweist; ein „i“ ist nicht schmaler als ein „w“ oder ein „b“. Diese Schriften werden bevorzugt in Editoren und Terminalfenstern eingesetzt. Auch eignen sie sich gut zur Darstellung von Zahlen in Tabellen. Beispiele sind Courier und FreeMono. Die meisten Fontpakete bringen je eine Sans-Serif-, eine Serifen- und eine Mono-Schrift mit. Also etwa Liberation (Sans|Serif|Mono).
  • Kunstschriften:
    • Einige Schriften ahmen Handschrift (Schreibschrift) nach, wie Pacifico. Oftmals sieht man diesen bei genauem Hinsehen an, dass es sich nicht um echte Handschrift handelt, weil einige Linien nicht ganz zusammen passen.
    • Einige Schriften existieren, die Kalligraphie nachahmen. Nicht immer wird zwischen diesen beiden Kategorien unterschieden.

Installation

Will man Fonts unter Linux installieren, gibt es dafür zwei Wege: Über die Paketverwaltung oder manuell.

Paketverwaltung

Ubuntu-Pakete finden sich unter Anderem im UU-Wiki-Artikel Schriftarten. Auf anderen Systemen läuft das ähnlich: Hier etwa eine Auswahl an zusätzlichen Fonts für Gentoo, und eine für Arch.

Manuell

Ich persönlich bevorzuge allerdings die zweite Methode, nämlich die manuelle Installation. Diese hat den Vorteil, dass man all seine selbst installierten Fonts an einem Ort hat und den Überblick behält, welche neu hinzu gekommen sind. Es ist zu beachten, dass diese von der Paketverwaltung dann nicht angerührt werden, also auch nicht aktualisiert werden.

Dazu lädt man die entsprechenden TTF-Dateien herunter (verschiedene Links gibts am Ende). Dann kopiert man sie entweder nach ~/.local/share/fonts/truetype für einen einzelnen User oder nach /usr/local/share/fonts/truetype für alle User des Systems.

Sollten die heruntergeladenen Dateien keine TTF-Dateien, sondern OTF oder ein anderes Format haben, kopiert man sie stattdessen nach .local/share/fonts/type1 bzw. /usr/local/share/fonts/type1

Ein paar schicke Terminal-Zeilen gibts auch noch:

# FONT durch den Namen des heruntergeladenen Fonts ersetzen
$ mkdir -p ~/.local/share/fonts/truetype
$ mv FONT ~/.local/share/fonts/truetype

# systemweit:
$ sudo mkdir -p /usr/local/share/fonts/truetype
$ sudo mv FONT /usr/local/share/fonts/truetype

Alternativ kann statt sudo natürlich auch der root-User verwendet werden.

 

Nach der Installation kann man die gewünschte Schrift etwa in LibreOffice verwenden. Dazu muss LibreOffice gegebenenfalls neu gestartet werden.

Schließlich habe ich noch ein paar Links versprochen. Einige weiterführende Links sind wieder bei Ubuntuusers zu finden. Außerdem finde ich Google Fonts sehr empfehlenswert. Hier findet sich eine riesige Auswahl von freien Fonts, die den großen Vorteil haben, dass man sie anpassen und teilen kann, wenn man möchte.

 

 

Veröffentlicht unter Howto, OSBN | Verschlagwortet mit | 2 Kommentare

Kurzer Tipp: Dauerschleife beim Anmeldebildschirm reparieren

Ein absoluter Horror ist es für mich, wenn ich mich plötzlich nicht mehr an meinem Laptop graphisch anmelden kann. So erging es mir gestern: Beim Eingeben des Passworts in Lightdm wurde der Bildschirm schwarz, nur eine Sekunde später kam ich beim selben Eingabeschirm raus wie vorher – Dauerschleife.

Nachdem ich einige Websites durchforstet hatte, fand ich schließlich die Lösung, die sich zwar ein bisschen nach der Devise „mit Maschinengewehren auf Spatzen schießen“ anhört, aber wenigstens geholfen hat:

chmod $USER.$USER -R /home/$USER/

Was tut es?

Alle Dateien und Verzeichnisse unter Linux haben einen Besitzer und eine Gruppe. Im eigenen Home-Verzeichnis sollten die Dateien in der Regel dem Besitzer und der Gruppe gehören, die auch die Hauptgruppe des Nutzers ist. Bei mir also „alex.alex“. Anscheinend gibt es aber manchmal Probleme, die dazu führen, dass Besitzer- und Gruppenzuordnungen nicht mehr stimmen. Bei bestimmten Dateien kann das dazu führen, dass man nicht mehr auf seine Arbeitsumgebung zugreifen kann. Der obige Befehl setzt Benutzer und Gruppe nach dem Schema chmod benutzer.gruppe fest (alternativ kann statt des Punktes auch ein „:“ verwendet werden: chmod benutzer:gruppe usw.).

Der Parameter „-R“ setzt dies rekursiv, das heißt für jedes Unterverzeichnis.

Die Variable $USER schließlich ist der eigene Nutzer. Vorsicht: Wer diesen Befehl nicht mit seinen eigenen Rechten ausführt, sondern z. B. als root, übergibt sein ganzes Home-Verzeichnis an diesen User statt zurück an den eigenen. $USER ist daher oben zu ersetzen durch den eigenen Nutzernamen (wer diesen nicht kennt, führe „whoami“ aus).

Die hier vorgestellte Lösung ist kein Patentrezept, das immer funktionieren muss, und kann auch zu anderen Problemen führen (etwa wenn im Home-Verzeichnis Dateien liegen, die aus welchen Gründen auch immer nicht dem eigenen Besitzer und der eigenen Gruppe gehören). Falls die genannte Lösung also nicht dazu führt, dass ihr euch wieder anmelden könnt, schaut doch mal hier und hier nach.

Veröffentlicht unter Howto, OSBN, Tipps&Tricks | Verschlagwortet mit , , , , | Kommentar hinterlassen

Vampire The Masquerade – Bloodlines mit Wine unter 64-bit Ubuntu installieren

Das ist ein wirklich langer Titel, aber er sagt aus, was das Thema dieses vergleichsweise kurzen Beitrags ist. Bei der Installation unter diesen Bedingungen gibt es nämlich unter Ubuntu ein kleines Problem, sofern man VTMB nicht über Steam bezogen hat (wobei ich jetzt nicht getestet habe, ob das unter Ubuntu überhaupt funktioniert, denn Bloodlines ist nicht als Linux-Game gekennzeichnet), sondern die Retail-Version über Wine zum Laufen bringen will.

Beim Versuch, die Installation normal mit Wine anzustoßen, gibt es nämlich einen Fehler:

wine /media/alex/Bloodlines/Launch.exe

funktioniert zunächst, es öffnet sich das Menü. Klickt man auf Installieren, kommt man zur Sprachauswahl (nur für die Installation), von dort kommt man allerdings nicht weiter, sondern begegnet diesem Fehlercode:

Das ist natürlich sehr unschön. Hintergrund des Fehlers ist, dass Bloodlines Schwierigkeiten hat, mit 64bit-Betriebssystemen umzugehen. Wine hat allerdings eine prima Möglichkeit, das Problem zu lösen:

WINEARCH=win32 wine /media/alex/Bloodlines/Launch.exe

Die WINEARCH-Umgebung kann mit diesem Befehl auf eine 32-bit-Umgebung umgestellt werden. Danach funktioniert die Installation problemlos. Das Spiel läuft seither bei mir flüssig und ohne Beanstandungen.

Veröffentlicht unter OSBN, Spiele, Terminal, Wine | Verschlagwortet mit , | Kommentar hinterlassen

Ruhezustand für *Ubuntu

Wer kennt nicht das Problem? Man muss schnell mal für 1–2 Stunden weg, hat aber gefühlte 100 Fenster offen, die unterschiedlichsten Programme laufen, und man möchte nicht bei der Rückkehr alles wieder einzeln hochfahren, aufrufen etc. Ebenso wenig möchte man den Rechner aber laufen lassen, sei es um Strom zu sparen, sei es damit niemand unbefugt daran geht…
Dazu ist der Ruhezustand (engl.: Hibernation, eigentlich „Winterschlaf“) da. Er schreibt den Zustand des Systems auf die Festplatte des Rechners (weswegen der Ruhezustand gelegentlich auch „Suspend To Disk“ heißt), von wo aus er beim nächsten Hochfahren wieder gestartet werden kann. Der Effekt ist, dass man genau da weiter arbeitet (oder was auch immer tut, wenn man nicht arbeitet 😉 ), wo man aufgehört hat.

Unter Ubuntu-Derivaten ist der Ruhezustand seit 11.10 standardmäßig deaktiviert. Im Ubuntuusers-Wiki findet sich (siehe voriger Link) eine ausführliche Anleitung für diverse Ubuntu-Versionen. Eine alternative Möglichkeit bietet ein einzeiliges Skript, das ich mir mal geschrieben habe.

In diesem Artikel stelle ich nicht nur das Skript vor, sondern leite auch durch den Prozess, ein solches Skript in einem System einzusetzen. Das tue ich hauptsächlich für Anfänger; wer das also schon längst kann, kann den zweiten Teil des Artikel getrost ignorieren.

Das Skript selbst sieht so aus:


#!/bin/bash
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301, USA.

# using kernel konfig to hibernate
echo disk | sudo tee /sys/power/state

Was tut das Skript?

zunächst wird mit dem echo-Befehl die Zeichenkette „disk“ ausgegeben. Die Pipe, der senkrechte Strich, gibt die Ausgabe des Befehls (also hier: das Wort „disk„) an den folgenden Befehl weiter. Dieser muss mit sudo ausgeführt werden, weil auf eine Datei zugegriffen wird, zu der nur root Schreibzugriff hat: Die Datei /sys/power/state. Der Befehl „tee“ dient dazu, etwas in eine Datei zu schreiben, in diesem Fall das durch die Pipe übergebene „disk„. Jetzt könnten einige findige Leser aufmerken und sagen: „Warum kann ich das nicht direkt mit ‚echo‚ machen? ‚sudo echo disk > /sys/power/state‚ ist doch viel komfortabler!“
Leider funktioniert es so einfach nicht, denn durch die Code-Weiterleitung (im Skript durch die Pipe, hier durch ‚>‚) wird der Befehl gewissermaßen an eine neue Instanz übergeben; diese hat aber keine Root-Rechte erhalten. Daher erhält man einen Fehler:

bash: /sys/power/state: Keine Berechtigung.

Der Befehl ‚tee kann allerdings problemlos mit sudo erweitert und dadurch mit den benötigten root-Rechten ausgeführt werden. ‚tee‚ kann auch noch mehr: Wer sich dazu informieren möchte, sollte die manpage konsultieren (man tee).

Jetzt kommt aber der spannende Teil: Dieses Stückchen Code ist bisher nichts wert, weil es nur eine Textdatei ist. Wie macht man aus dieser Textdatei ein Werkzeug, um seinen Rechner zu bedienen?

Zunächst muss der Code gespeichert werden: Man kopiert ihn in eine Textdatei, wozu man seinen bevorzugten Editor verwendet, zum Beispiel gedit. Dann speichert man die Datei unter einem Dateinamen, den man sich merkt, und legt sie an einem Ort ab, von dem man danach auf die Datei zugreifen möchte. Viele verwenden für Skripte den Ort ~/bin (also einen Ordner „bin“ im Home-Verzeichnis), nachempfunden den Systemordnern /bin, /usr/bin usw. Ich persönlich habe meinen Ordner ‚.bin‘ genannt, sodass er im Home-Verzeichnis nicht zu sehen ist, das ist aber nicht nötig. Um diesen Ordner anzulegen, sollte er noch nicht existieren, kann man selbstverständlich ebenfalls das Terminal benutzen, was im weiteren Verlauf vorausgesetzt wird (ich gehe davon aus, dass meine gebildeten Leser in der Lage sind, auf graphischem Weg einen neuen Ordner anzulegen und zu benennen):

mkdir -p ~/bin

Sollte man das Skript seiner Wahl nicht erst selbst in eine Textdatei kopiert, sondern sie von anderer Stelle erhalten haben (von einer Website, von Freunden o. Ä.), dann kann man die Datei nun an den Zielort verschieben. Dazu navigiere man in das Verzeichnis, in dem man die Datei hat (im Beispiel wird das ~/Downloads) und verschiebe die Datei:


cd ~/Downloads
mv ./hibernate.sh ~/bin

Damit aus der Textdatei nun ein Skript wird, muss man eine von zwei möglichen Wegen einschlagen. Zunächst muss man jetzt gar nichts mehr tun: Die Datei kann im Terminal ausgeführt werden, wenn man angibt, mit welchem Interpreter sie ausgeführt werden soll:

/bin/bash ~/bin/hibernate.sh

Dieser Aufruf wird das Skript starten. Allerdings ist es bei Skripten üblich, sie als ausführbar zu kennzeichnen und sich so den Aufruf des Interpreters sparen zu können.
Werfen wir einen Blick in die allererste Zeile des Skriptes. Diese ist auskommentiert, hat aber eine spezielle Form:

#!/bin/bash

Mit dieser sogenannten „Shebang“ (#!) wird dem Kernel signalisiert, dass er in dieser Zeile den Interpreter findet. Der Interpreter selbst führt die Zeile allerdings nicht aus, da das Doppelkreuz die Zeile als Kommentar markiert.

Das allein reicht allerdings noch nicht, um die Datei auszuführen. Beim Versuch, sie im Terminal auszuführen, erhalten wir wieder den Fehler „Keine Berechtigung“. Sie muss zuerst als ausführbar markiert sein. Dies erreichen wir mit dem Befehl chmod:

chmod +x ~/bin/hibernate.sh

chmod manipuliert die Zugriffsrechte einer Datei. Auch hierzu empfielt es sich, einmal die manpage und den Eintrag im Ubuntuusers-Wiki zu lesen. In diesem Fall fügen wir ein Recht hinzu (+), nämlich das des Ausführens (x, von eXecute).

Nun kann das Skript jederzeit durch seinen Namen ausgeführt werden:

~/bin/hibernate.sh
[sudo] password for alex:

disk

So ähnlich dürfte die Ausgabe aussehen. Das „disk“ hier kommt daher, dass wir ja im Code „echo ‚disk‘“ stehen haben. Also wird ‚disk‚ auch ausgegeben.

Wem das immer noch zu umständlich ist, bleiben noch zwei Möglichkeiten, den Prozess zu beschleunigen.
Zunächst kann ein alias definiert werden, ein „Schnellbefehl“, bei dem man weniger tippen muss. Ich habe mich für den Befehl ‚gotosleep‚ verwendet, weil ich durch die Auto-Vervollständigung der Bash dann nur „got“ tippen muss, bevor der Befehl automatisch vervollständigt wird. Es ist aber jeder beliebige Name denkbar, solange er nicht zufällig Name einer eingebauten Bashfunktion ist: Es wäre sehr dumm, sein Skript mit dem Namen ‚chmod‚ zu versehen, denn wie wir gesehen haben, existiert dieser Befehl schon und hat eine wichtige Funktion.

Ein Alias legt man auf folgende Weise an:

alias name='befehl'

In unserem Beispiel wäre das also:

alias gotosleep='~/bin/hibernate.sh'

Diese Zeile so in sein Terminal einzutippen wäre allerdings keine langfristig kluge Lösung, denn beim Schließen verfällt das alias. Man kann die Zeile daher in die dafür vorgesehene Datei ~/.bash_aliases eintragen (anlegen, falls diese noch nicht existiert). Eventuell muss man noch sicherstellen, dass sich folgender Code in der Datei .bashrc befindet, oder ihn gegebenenfalls einfügen:


if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi

Auf diese Weise wird jedes Mal, wenn ein Terminal geöffnet wird, die Datei .bash_aliases eingelesen und damit werden sämtliche aliases, die man dauerhaft verwenden möchte, aktiviert.

Die zweite Möglichkeit, schnell auf seine Skripte zuzugreifen, ist die Verwendung der PATH-Variablen. Dies ist dann von Vorteil, wenn sich in ~/bin einige Skripte angesammelt haben und man nicht für jedes Skript ein eigenes alias schreiben möchte.

Die PATH-Variable ist eine Variable, in der alle Dateipfade abgespeichert sind, die automatisch durchsucht werden. Das heißt, befindet sich der Dateipfad ~/bin/ in der Variablen PATH, muss dieser Teil der Eingabe nicht mehr geleistet werden, sondern man kann direkt den Namen des Skriptes aufrufen:

hibernate.sh

Um einen Pfad in die PATH-Variable hinzuzufügen, muss man zwei Schritte durchführen:

  1. PATH um ~/bin erweitern
  2. die Terminal-Sitzung neustarten oder die Datei, in der PATH festgeschrieben wird, neu einlesen

auf bash-isch heißt das so:


PATH=$PATH:~/bin
export PATH

Dadurch wird in die Variable PATH der Inhalt der alten Variable PATH geschrieben; hinten wird, getrennt durch den Doppelpunkt, der neue Ort mit angegeben. Durch „export PATH“ wird die neue ‚Umgebung‘ der PATH-Variablen aktiviert.
Da wir auch das lieber dauerhaft haben wollen als nur bis zum Ende der Terminal-Sitzung, wird diese Zeile in die Datei .bashrc eingetragen:


PATH=$PATH:~/bin
export PATH

Um diese Änderung sofort gültig zu machen, kann man nun entweder seine Terminal-Sitzung schließen und eine neue starten oder man bindet die Datei .bashrc einfach für die Sitzung neu ein:

source .bashrc

Fertig! Die Ausführung war auf Wunsch einer Freundin, die sich gerade als „Terminalpadawan“ versucht, sehr viel ausführlicher als man das sonst von Blogs so gewohnt ist. Sie hat allerdings den Vorteil, dass einem Anfänger so viel Gesuche zunächst erspart bleibt, da man sich nicht die einzelnen Erklärungen, wie was geht, von verschiedenen Quellen zusammensuchen muss, sondern alles an einer Stelle hat.

Falls jemand Verbesserungsvorschläge, Wünsche, Anregungen etc. an diese Anleitung, das Skript oder zu irgendetwas Anderem haben sollte, nehme ich diese gern in den Kommentaren entgegen und ändere den Blogeintrag ggf. ab. 🙂

Herzliche Grüße,
Alex

Veröffentlicht unter Howto, OSBN, Terminal, Tipps&Tricks | Verschlagwortet mit , , , , , , | 4 Kommentare