Das Ende einer Ära: Leb wohl PC

Dieser Tage wird das Ende einer Ära zelebriert. Heute vor 30 Jahren erblickte der IBM 5150 Personal Computer das Licht der Welt. Geboren mit 16KB Arbeitsspeicher und einer 16bit 8088 CPU getaktet mit 4,77 MHz hast du seit dem die Welt grundlegend verändert. Dein Design war maßgeblich für kommende Generationen und nie werde ich deine schlapprigen 5,25 Zoll Disketten oder die 10 MB große Festplatte vergessen, mit der wir das gesammelte Wissen der Menschheit gesichert haben.

Moment mal, Auszeit! Mein erster Computer war der Commodore C-64! Mit meinem Brotkasten und seinen 64KB RAM habe ich meinen ersten Taschenrechner in BASIC programmiert und ansonsten den ganzen Tag Giana Sisters gespielt.
Wie die BBC aber treffend berichtet, kommt die Ära des PC nun zu einem Ende. Das klassische Konzept mit Extra-Tastatur, Maus, Bildschirm und Rechner ist nur noch ein Kapitel im Buch der Geschichte. Wer heute etwas auf sich hält, hat sowieso mehrere Personal Computer. Da ist ein Tablet PC genauso ein PC wie das neuste Smartphone oder ein modernes Netbook.
Ach was soll all der Terz. Es ist vorbei. Dreißig Jahre sind ja auch mehr als genug. Wollen wir ewig in der Vergangenheit leben? Wir brauchen mehr Tablet PCs, mehr Smartphones, mehr Bandbreite, mehr Technologie, mehr Strom, mehr Macht, mehr seltene Erden!
Also ihr da draußen, kauft mehr, senkt eure Sparquote, konsumiert endlich! Der Trend geht zum Dritt-Smartphone. Sorry IBM 5150, du dachtest das wäre ein Post über deine vormalige Glorie? Ja, damals warst du toll. Aber heute strebt die Menschheit nach technischer Ubiquity und da passt so ein grauer schwerer Kasten wie du einfach nicht mehr ins Bild. Leb wohl PC. Nichts ist langweiliger als über Uralt-Hardware zu schreiben!
....
Schweißgebadet wachte ich aus einem Alptraum auf. Mein altes Laptop- und PC-Arsenal stand weiterhin einträchtig im Wohnzimmer. Das Ende einer Ära? Das ich nicht lache. Erst einmal E-Mails mit dem ollen Inspiron 4000 checken, bevor ich eine Runde VVVVVV zocke. Außerdem, ich bin ein Homo Oeconomicus. Keine Schulden, weniger Konsumieren und das angesparte Geld in griechische Staatsanleihen investieren ist genau der richtige Weg...ok, na gut, vielleicht ist Ökonomie doch etwas differenzierter. 😉

Solarized: dircolors mit 256 Farben für rxvt-unicode

Seit zwei Monaten nutze ich Ethan Schoonovers Farbschema "Solarized" für meinen Terminalemulator rxvt-unicode und meinen bevorzugten Editor Vim. Ich bin seither sehr zufrieden mit dem neuen Aussehen des Terminals. Verzeichnisse und verschiedene Arten von Dateien werden dadurch einfach besser hervorgehoben. Am liebsten wäre mir aber anstatt der 16 ANSI Farben das komplette 256-Farben-Thema gewesen. Obwohl ich damals die richtige TERM-Variable in .Xdefaults gesetzt hatte, passierte leider rein gar nichts.
Doch dann geschah es.
Als ich vor ein paar Tagen aptitude search rxvt ausführte, entdeckte ich plötzlich das Paket rxvt-unicode-256color. Autsch und Sorry. 😳 Irgendwie muss mir entgangen sein, dass es mehrere Rxvt-Unicode-Pakete bei Debian gibt und stillschweigend hatte ich angenommen, dass man den 256-Farben-Modus in der .Xdefaults an- und ausschalten kann.
Hat man rxvt-unicode-256color erst einmal installiert und die Variable

urxvt*termName:        rxvt-unicode-256color

in der .Xdefaults gesetzt, muss man nichts weiter tun als die Datei dircolors.256dark von seebis git Repositorium herunterzuladen und wie im alten Beitrag beschrieben nach ~/.dir_colors kopieren und dann von ~/.profile mit dem eval Befehl aufzurufen. Danach sind dann die Farben der Dateien und Verzeichnisse mit 256 Farben solarisiert.

Auch die Farben in Vim sehen dann gegenüber der alten 16 Farben ANSI Version natürlich verändert aus.

Mir gefällt Solarized als Farbthema weiterhin ausgezeichnet gut und wer nicht so auf dunkle Themen steht, sollte sich auch einmal die helle Version von Solarized anschauen, auf die sich spielend leicht in jedem Editor umstellen lässt.

Sicherer Datentausch: Ein sftp-Server mit chroot

Vor zwei Jahren wollte ich mehrere 100 MB an Fotos mit ein paar Freunden teilen, die sich nach einem gemeinsamen Urlaub angesammelt hatten. Damals waren Dropbox und ähnliche Dienste noch nicht ganz so präsent wie heute. Außerdem war es eine gute Gelegenheit mehr über FTP- und SSH-Server zu lernen und manch bekennenden Windowsnutzer ordentlich zu verwirren: "Ja, du musst ssh benutzen. Es gibt keine andere Möglichkeit um an die Fotos zu gelangen." haha 😈
Zu dieser Zeit sollte es unbedingt ein sftp-Server sein, da ich für viele andere Aufgaben sowieso schon ssh einsetzte. Damit spart man sich das Einrichten eines zusätzlichen ftp-Servers und erhält gleichzeitig noch eine sichere Methode zum Datenaustausch dazu.
Die folgende Anleitung beschreibt die Einrichtung eines ssh-Servers, der für eine Gruppe von Benutzern nur als sftp-Server zugänglich sein soll. Alle User werden dabei in einer chroot-Umgebung eingesperrt und Shell-Zugriff verwehrt um die Sicherheit auf dem Server zu erhöhen. Als Beispiel dient mir der Benutzer mika und die Gruppe freunde. Das HowTo sollte mit jeder auf Debian basierenden Distribution funktionieren und sich mit jeder anderen nachvollziehen lassen.

Installation

aptitude install ssh

Anlegen der für sftp berechtigten Nutzer und der Gruppe freunde

adduser mika
addgroup freunde
adduser mika freunde

Absichern des Chroot Verzeichnisses

chown root.root /home/mika

Mikas Heimverzeichnis sollte im Besitz von root sein, damit er effektiv darin eingesperrt ist und er standardmäßig keine Dateien auf dem Server hochladen kann. Da aber ein Datenaustausch auch manchmal in umgekehrter Richtung sinnvoll sein kann, genügt es, einen Ordner wie upload in diesem Verzeichnis zu erstellen und ihn Mika mit

chown mika.mika /home/mika/upload

zu überantworten.

Konfiguration von /etc/ssh/sshd_config

Notwendige Sicherheitsvorkehrungen

    • Port 42123

Der Standardport für SSH ist 22. Mit dieser Variablen lässt sich der Listen Port z.B. auf 42123 für den Server ändern. Das macht den Server zwar kein bisschen sicherer (security through obscurity), hilft aber unter Umständen die Existenz des ssh-Servers zu verschleiern.

    • PermitRootLogin no

Wenn ein Angreifer root werden möchte, muss er mit dieser Einstellung mindestens noch das Passwort eines weiteren Users auf dem Server kennen.

    • PermitEmptyPasswords no

SSH-Nutzer ohne Passwort sind natürlich ein Unding. Obwohl ich mir gut vorstellen kann, dass man das als eine weitere Möglichkeit zu "Was man mit alten Computern machen kann" hinzufügen könnte. Anstatt selbst zu lernen wie man in den eigenen alten Rechner einbricht, könnte man das doch auch andere tun lassen... 😉

    • Subsystem sftp internal-sftp

Das aktiviert sshds internen sftp-Service. Normalerweise verweist Subsystem sftp auf eine ausführbare Binärdatei wie z.B. /usr/lib/openssh/sftp-server. Diese muss durch den internen Dienst ersetzt werden.
Am Ende der /etc/ssh/sshd_config sollte dann folgender Match-Eintrag hinzugefügt werden.

Match group freunde
      ChrootDirectory /home/%u
      X11Forwarding no
      AllowTcpForwarding no
      ForceCommand internal-sftp

Der Match-Block gilt nur für die Gruppe freunde und jeden Nutzer, der sich darin befindet. Mika kann sich deswegen nur per sftp mit dem Server verbinden und landet danach im festgelegten Chroot-Verzeichnis. Der Shell Zugriff mit ssh wird effektiv unterbunden. Das Chroot muss nicht zwangsläufig mit Mikas Homeverzeichnis übereinstimmen und kann beliebig gewählt werden. Der Parameter %u wird durch den eingeloggten Nutzer ersetzt.

Der erste Test

Jetzt ist es an der Zeit den OpenSSH-Server neuzustarten. Als SFTP-Klienten eignen sich später z.B. das Firefox Addon Fireftp, Filezilla, WinSCP für Windows oder ganz einfach das Kommandozeilenprogramm sftp.

/etc/init.d/ssh restart

Danach sollte der sftp-Zugriff für Mika am Beispielrechner 192.168.0.200 funktionieren.

sftp -P 42123 mika@192.168.0.200

und der ssh-Zugriff verwehrt werden

ssh -p 42123 mika@192.168.0.200

DynDNS.org

Es ist zwar schön, dass der Server nun in unserem internen Netzwerk funktioniert, aber irgendwie müssen die Freunde von außerhalb darauf zugreifen können. Die meisten werden sicherlich eine dynamische IP vom Provider zugewiesen bekommen, weshalb es Sinn macht einen kostenlosen DNS-Dienst wie z.B. dyndns.org zu benutzen, um eine leicht zu merkende URL wie z.B. 4freunde.dyndns.org zu erhalten.
Nachdem man sich bei dyndns.org angemeldet hat, muss man dem Dienst auf irgendeine Art noch mitteilen wie die aktuelle IP-Adresse des Heimservers lautet. Dazu bietet sich z.B. ddclient an. Bei der Installation wird man nach Login und Passwort bei dyndns.org gefragt und kann ansonsten die Standardeinstellungen verwenden.
Sollte man eine Firewall einsetzen oder wie ich einen Router mit eingebauter Firewall haben, dann muss nur noch der SSH-Dienst mit Hilfe von PortForwarding an den Zielserver und Port 42123 weitergeleitet werden. Danach kann sich dann Mika von überall auf der Welt mit

sftp -P 42123 mika@4freunde.dyndns.org

auf dem Heimserver einloggen.

Last but not least - Denyhosts

Wenn man seinen Server eine Weile laufen lässt und spaßeshalber mal die Datei /var/log/auth.log öffnet, fallen einem die regen Zugriffsversuche auf...die allesamt nicht von den Freunden stammen. Willkommen im Internet! John Doh und Nihao versuchen mit Brute-Force-Attacken in den ssh-Server einzubrechen. Eine wirksame Methode das zu unterbinden ist z.B. denyhosts oder noch besser gleich den SSH-Port ändern und auf SSH-Schlüssel umstellen.
Bei Debian konnte ich nach der Installation mit den Voreinstellungen sehr gut leben. Die Datei /etc/denyhosts.conf ist aber hervorragend kommentiert und lässt sich leicht an die eigenen Wünsche anpassen. Das Programm registriert fehlgeschlagene Logins und setzt die IP Adresse des Angreifers nach einer festgelegten Anzahl von Versuchen in die Datei /etc/hosts.deny, womit jeder weitere Loginversuch verwehrt wird. Es gibt noch viele weitere Möglichkeiten einen Mißbrauch zu verhindern. Ich fand damals diesen Heise-Artikel zum Thema sehr lesenswert. Wenn man sehr restriktiv ist und vielleicht sogar die IP-Adresse der Freunde kennt, kann man auch alle Zugriffe mit Hilfe von /etc/hosts.allow und /etc/hosts.deny verbieten und nur ausgewählte IPs erlauben.
SSH ist ein ausgesprochen vielseitiges und nützliches Werkzeug. Als Beweis, dass ich nicht der Einzige bin, der positive Erfahrungen mit ssh gemacht hat, hier mal ein Link zu keros Artikel "sperr mich ein baby".

Meine Quellen

Vorerst kein Erfolg mit Atom Zombie Smasher

Ich hatte vor kurzem das neue Humble Indie Bundle Nr. 3 angespielt. Später stellte ich dann fest, dass zu den fünf ursprünglichen Spielen noch weitere sieben dazu gekommen waren. Die Marketingstrategie hat offensichtlich gewirkt. Das Spielepaket ist noch bis 01.00 Uhr morgen früh zu haben, doch schon jetzt lässt sich sagen, dass mit knapp 368.000 verkauften Bundles und 2.14 Millionen Dollar der bisher größte Umsatz erzielt werden konnte.
Als letztes und zwölftes Spiel gab es Atom Zombie Smasher gratis dazu. Leider habe ich heute Abend vergeblich versucht es zum Laufen zu bringen. Das Problem scheint aber nicht unbekannt zu sein. Im Forum gibt es mehrere Threads wie diesen oder diesen von Linuxnutzern, die ebenfalls mit mono, openal und cfsml zu kämpfen haben.
Scheinbar gibt es einige Abhängigkeitsprobleme. Für Debian müssen die Pakete für Mono (mono-runtime), OpenAL und alle libcsfml Pakete nachinstalliert werden. Das ausführbare Startskript im Ordner atomzombiesmasher/data muss so angepasst werden, dass nicht die mitgelieferte Mono-Datei sondern die systemeigene benutzt wird.

#!/bin/sh
cd `dirname $0`
# tell game where to find the libraries.
#export MONO_PATH=$MONO_PATH:./
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./
export MONO_WINFORMS_XIM_STYLE=disabled
MONO_LOG_LEVEL="debug" mono ./release.exe "$@"

Wichtig ist, dass die erste "export"-Zeile kommentiert bleibt und ./ vor mono entfernt wird. Bei einigen hat das scheinbar geholfen. Andere wie ich schauen bisher in die Röhre. Einer der Entwickler scheint aber schon dabei zu sein das Spiel für Linux neu zu packen und zumindest die README so zu erweitern, dass man ohne lange Suche weiß, welche Abhängigkeiten zu installieren sind. Ich verzichte deswegen auch auf die weitere Lösungssuche und warte auf eine gepatchte Version. Vielleicht hilft aber irgendjemand dieser kleine Hinweis schon weiter.

SSH der unverzichtbare Alleskönner

Ich wollte schon länger etwas zu SSH schreiben, denn im Grunde genommen gehört es zu den von mir am meisten benutzten Anwendungen mit Linux. Der OpenSSH- oder Dropbear- Server ist auf jedem meiner Rechner installiert und seit längerer Zeit nutze ich die Secure Shell nicht nur zur Administration des heimischen Rechenzentrums, sondern auch zum Kopieren von Dateien und Mounten entfernter Dateisysteme.
Zu SSH gibt es glücklicherweise schon mehr als genug Informationen im Internet, weswegen ich nicht allzu viel Worte darüber verlieren möchte. Vor einiger Zeit bin ich zufällig schon auf einen Blogeintrag gestoßen, der mir die ganze Arbeit abgenommen hat und den ich wegen seiner übersichtlichen und verständlichen Vorstellung interessanter SSH-Befehle gerne weiterempfehlen möchte.
Der Post heißt "6 nützliche Dinge, die man mit ssh tun kann" und findet sich auf daniel-ritter.de.
Ich denke jeder, der Linux eine längere Zeit benutzt, wird mir zustimmen, dass SSH ein echtes Allroundtalent ist. Insbesondere kann ich mir mit SSH den Overhead eines Samba- oder NFS-Servers sparen. Das scp-Kommando lässt sich genauso wie cp einsetzen um Daten verschlüsselt zwischen zwei Rechnern auszutauschen.
Als Ergänzung eignet sich besonders bei Debian und Ubuntu sshfs , mit dem sich ein entferntes Dateisystem verschlüsselt einhängen lässt. Man sollte nur darauf achten, dass man nach der Installation des Pakets mit dem Benutzer in der Gruppe fuse vertreten ist. Das Einbinden des Dateisystems ist dann genauso einfach wie das Einloggen am SSH-Server.
Zusätzlich hat Daniel noch den SSH-Tunnel und SSH als Socks-Server vorgestellt, mit dem auch in unsicheren Netzen eine sichere Verbindung zu einem Rechner des Vertrauens hergestellt werden kann und mit diesem sich dann z.B. im Internet surfen lässt.
Außerdem gibt es noch die Möglichkeit die Darstellung von X11-Anwendungen auf einem entfernten Rechner an den lokalen Computer weiterzureichen. Hierzu verbindet man sich mit der Option -X mit dem entfernten Rechner und zusätzlich muss X11Forwarding "yes" in /etc/ssh/sshd_config gesetzt sein.
Schließlich existiert sogar noch die Möglichkeit einen sftp-Server als Subsystem von SSH laufen zu lassen, womit man sich auch das Einrichten eines zusätzlichen FTP-Servers sparen kann. Dazu bald mehr.
Wer SSH noch nicht ins Herz geschlossen hat, sollte jetzt damit anfangen. Es lohnt sich. 😉

Auf dem Laufenden bleiben mit Mailinglisten

Wenn man auf der Suche nach Neuigkeiten oder Informationen zu Linux ist, landet man zwangsläufig irgendwann in einem dieser hilfsbereiten Foren, wo man nach der ersten Frage von einem altgedienten Mitglied erfährt, man möge doch bitte erst einmal mit Google nach einer Lösung suchen. Ironischerweise kommt man gerade von dort, womit sich der Kreis erneut schließt.
Beherzigt man dann die obligatorische Empfehlung "lmgtfy" und durchstreift erneut das Internet, stößt man mitunter auf diese persönlich eingefärbten Blogs, die zu jeder Neuigkeit ihren eigenen Senf dazugeben müssen. Gerade immer dann, wenn man nur an harten Fakten interessiert ist!
Die beste Lösung ist, sofort einer oder mehrerer Mailinglisten beizutreten, wo es Informationen aus erster Hand direkt von den Entwicklern gibt.
Bei Debian ist das nicht weiter schwer. Das Thema Mailingliste ist gut dokumentiert. Man muss nur noch aus der Vielzahl an Listen wählen und kann sich dann direkt mit der eigenen E-Mailadresse über ein Onlineformular registrieren. Es gibt sowohl Listen für Benutzer als auch Entwickler. Wenn man gerne zu seinem Lieblingsthema auf dem Laufenden sein möchte sind die öffentlichen Entwicklerlisten am interessantesten.
Für Ubuntu und jede andere gute Distribution gibt es ein solches Kommunikationsmedium natürlich auch.
Mit einem modernen E-Mail-Client bleiben auch hochfrequentierte Mailingslisten weiterhin überschaubar. Claws Mail bietet z.B. unter der Rubrik "Nachrichten" die Möglichkeit sich auch direkt von einer Mailingliste an- oder abzumelden. Mit Hilfe von Filtern lassen sich dann gezielt Informationen finden.
Der große Vorteil von Mailinglisten ist, man muss nicht permanent ein Forum auf Neuigkeiten überwachen. Die brennendsten Themen kommen immer direkt per Mail auf den Schirm. Auf jeden Fall ist es eine gute Möglichkeit über Trends und Meinungen informiert zu werden oder selbst ein Stück dazu beizutragen, damit die eigene Linuxdistribution besser wird. Schließlich lebt FOSS hauptsächlich von einer Sache - Mitmachen.

Freud und Leid mit der Mattscheibe

Es folgt ein Geständnis oder Bekenntnis, womöglich gar ein Outing. Ich schaue kein Fernsehen mehr, zumindest nicht auf die traditionelle Art. Was hat das mit Linux zu tun? Nun wahrscheinlich fast gar nichts und doch ein wenig. Um zu erklären, warum ich die konventionellen Pfade verlassen habe, muss ich etwas ausholen.
Mein erster Kontakt mit dem Medium Fernsehen war irgendwann in den 80iger Jahren. Damals konnten wir bei uns zu Hause genau vier Programme empfangen. Nein, wir lebten nicht im Wald, ernährten uns von Beeren und betrieben den Fernseher mit einem Fahrraddynamo. Es gab einfach noch keine privaten Sender geschweige denn PayTV, dass in Deutschland sowieso seit jeher ein Schattendasein fristet. Das war die Zeit des Öffentlich-Rechtlichen-Fernsehens als alles Schaubare auf ARD, ZDF und den Dritten Programmen lief und sogar das legendäre A-Team zur besten Sendezeit bei ARD über den Bildschirm flimmerte.
Die Zeit verging und irgendwann kamen dank Kabel die ersten privaten Sender dazu. Zuerst sei da natürlich RTL erwähnt, wo ich zum ersten Mal Knight Rider, der Inbegriff der 80iger Jahre Serien, sehen konnte. Schon damals zeichnete sich RTL durch einen eher ungewöhnlichen Programmmix aus, den man aus heutiger Sicht vielleicht als Vorbote für die kommenden Jahre sehen mag.
Erinnert sich noch jemand an Pronto Salvatore? Wer hätte auch auf Rot getippt?

Ohne Flachs lief der Hütchen- und Kartenspieler Salvatore zur besten Sendezeit zwischen zwei Spielfilmen oder direkt vor den Nachrichten im privaten Fernsehen. Wäre das heute eigentlich noch "politisch korrekt"? Ich weiß es nicht. Fest steht nur, dass danach das Angebot im deutschen Fernsehen weiter zunahm und als Kind war ich natürlich später glühender Fan von Tele 5 und seinen diversen Animesendungen.
In nur zehn Jahren vervielfachte sich dann das Fernsehprogramm. Leider nahm die Qualität nicht im gleichen Maße wie die Quantität zu. Bis zum Ende der 90iger gehörten noch Sender wie VIVA Zwei und dessen alternative Formate wie "Fast Forward" zu meinen persönlichen Favoriten. Auch das endete leider mit der Abschaltung von VIVA Zwei und des späteren Programmwechsels von Musikinhalten zu "Reality TV".
Anfang des neuen Jahrtausends wurde ich dann zunehmend desillusionierter. War es erst ein Sender, der eine Talkshow nach amerikanischen Vorbild sendete, steigerte sich die Zahl später auf mehr als ein halbes Dutzend. Seelenstriptease vor laufender Kamera und niveaulose Unterhaltung auf Kosten anderer als Geist der Zeiten. Als "Richterin Babara Salesch" schließlich für ihre "Verdienste" 2002 sogar noch den Deutschen Fernsehpreis zuerkannt bekam, waren meine Erwartungen an Fernsehen auf einen Tiefpunkt gesunken. Selbst Oliver Kalkofe konnte mich mit seinem beißenden Sarkasmus nicht vor dem weiteren Abstumpfen bewahren.
Schließlich verlagerte sich mein Medienkonsum vom klassischen Fernseher immer mehr ins Internet. Heute beziehe ich fast alle meine Informationen nur noch hieraus. Dienste wie Youtube oder Vimeo und das immer weiter verbreitete Streaming auch bei Nachrichtensendungen ersetzen den Fernseher. Linux spielt hier als Betriebssystem natürlich eine wichtige Rolle. Neben den bekannten Streamingdiensten nutze ich z.B. das in Java programmierte Mediathekview, um mir Sendungen des öffentlich rechtlichen Fernsehens auf dem PC anschauen zu können. Das Ganze lässt sich ohne Schwierigkeiten auch auf betagteren Laptops ausführen.
Wie der Name des Programms schon andeutet, greift die Anwendung auf die Mediathek der einzelnen Sender zu.


Innerhalb von Mediathekview lässt sich nach Suchbegriffen filtern. Die einzelnen Sendungen lassen sich dann mit Hilfe von VLC, Mplayer oder flvstreamer entweder direkt anschauen oder auch zuerst auf die Festplatte herunterladen. Der Mplayer Knopf fehlt standardmäßig, lässt sich aber in sekundenschnelle selbst erstellen. Hierzu müsst ihr nur zu Einstellungen->Button->Einrichten wechseln, den bestehenden Eintrag für den VLC-Button duplizieren und das Wort vlc in den Formularfeldern durch Mplayer ersetzen. Fertig.

Einziger Makel an der Mediathek ist die unsägliche Depublizierung der Medieninhalte nach zumeist sieben Tagen. Wenn man sich ein staatliches und durch GEZ-Gebühren finanziertes Fernsehen leistet, sollte man dessen erarbeitete Inhalte auch öffentlich zeigen dürfen. Entweder man schafft das Öffentlich-Rechtliche-Fernsehen zu Gunsten der privaten Sender ganz ab oder man liefert den Kunden und Gebührenzahlern die Ware, für die sie bezahlt haben.
Ansonsten leistet mir gerade für Youtube Minitube gute Dienste, wenn ich nicht per Browser vorbeischaue oder gezielt und ressourcensparend mit der elinks,youtube-dl und mplayer Methode auf Videos zugreife.
Ich kann es nicht genauer erklären, aber klassisches Fernsehen ruft bei mir keine Entzugserscheinungen hervor. Ich halte das Zusammenstellen und die Suche nach Informationen im Internet auch nicht für besonders schwierig oder gar anstrengend. Wenn in den kommenden Jahren die Bandbreite weiter ansteigen wird, können auch Medieninhalte in weit höherer Qualität gestreamt werden, weshalb ich nicht glaube, dass diese Methode für mich in den nächsten Jahren an Attraktivität verlieren wird.

Transmission: Mein anderer Bittorrent-Favorit

Ich bin Ubuntu dankbar dafür, dass es mich seinerzeit zu Transmission geführt hat. Ich erinnere mich auch nur noch dunkel daran, wie der grafische Client davor hieß, den Ubuntu als Standard auslieferte und die schwergewichtige Anomalie namens Azureus, die noch viel früher meinen Desktop zierte, möchte ich am liebsten vergessen. Seitdem Transmission seinen ersten Auftritt bei Ubuntu hatte, bin ich wunschlos glücklich, wenn es um Bittorrent-Aufgaben geht. Mittlerweile habe ich aber mit Rtorrent eine würdige Alternative für die Konsole gefunden, die effektiv und anspruchslos ihre Dienste verrichtet.
Wenn ich aber gefragt werde, welchen Bittorrent-Client ich empfehlen würde, dann wäre Transmission immer noch erste Wahl. Die Vorteile sind unverkennbar. Auch wenn Rtorrent ein wahres Biest ist, die meisten Leute werden erst einmal die Augen verdrehen, wenn sie eine Ncurses-Konsolenanwendung sehen. Transmission hingegen lässt sich auch für nicht eingefleischte Linuxgeeks schmackhaft machen. Die GUI ist intuitiv und alles funktioniert sofort nach der Installation, ohne dass man sich durch diverse Untermenüs oder Handbuchseiten arbeiten müsste. Zusätzlich ist Transmission für alle bekannten Betriebssysteme verfügbar sei es Linux, Windows, FreeBSD oder MacOS und genau deshalb konnte ich meine Schwester als bekennenden Apple Fan auch von dieser kleinen Anwendung überzeugen. 😉
Transmission kann aber noch mehr. Wer Ubuntu installiert kommt, ohne es vielleicht zu wissen, mit transmission-gtk in Kontakt. Dabei gibt es aber auch eine grafische QT-Oberfläche, ein Webfrontend und, wer hätte es gedacht, auch eine Konsolenvariante. Als Alternative zu Rtorrent bietet sich deshalb z.B. eine Installation von transmission-daemon oder transmission-cli an.
Ersteres lässt sich dann direkt über den Browser ansteuern. Standardmäßig lauscht der Transmission-Daemon auf Port 9091 und mit dem Benutzer und Passwort "transmission" hat man dort direkten Zugriff auf all seine Bittorrent Aufgaben.

Transmission-cli dagegen ist eine reine Konsolenanwendung. Im einfachsten Fall startet man den Download mit transmissioncli meinTorrent.torrent. Natürlich gibt es noch diverse weitere Optionen, die man an den Befehl anhängen kann, womit sich dann unter anderem die Upload- und Downloadrate und Verschlüsselung einstellen lassen.
In vielen Fällen wird die Konsolenanwendung vollkommen ausreichend sein um sich ein Torrent auf den Rechner zu laden. Rtorrent bietet aber mit der ncurses Oberfläche eine flexiblere Möglichkeit um diverse Optionen des Clients auszuführen. Für Transmission-Cli gibt es eine vergleichbare Oberfläche, die in Python programmiert worden ist. Solange Python > 2.6 installiert ist, sollte es mit transmission-remote-cli möglich sein auch ohne Browser direkt auf den transmission-daemon zuzugreifen und alle wichtigen Einstellungen vorzunehmen. Leider funktioniert diese ncurses Oberfläche nicht mit der aktuellen 2.03 Version in Debian Unstable. Sobald 2.30 dort eintrifft liefere ich einen Screenshot und ein paar Sätze dazu nach.
Alles in allem lässt sich Transmission an alle individuellen Bedürfnisse anpassen und sowohl GUI Fans als auch Puristen kommen auf ihre Kosten.

Der Stromeditor sed und ein kleines Skript namens vils

Vor zwei Monaten hatte ich kurz zwei Methoden abseits grafischer Programme vorgestellt, wie man mit Hilfe der Bash und dem Texteditor VIM mehrere Dateien umbenennen kann. Als ich wenige Wochen später mit einem Freund über das gleiche Thema sprach und dabei die eher ungewöhnliche VIM Methode vorstellte, musste ich mir sagen lassen: "Mit einem Texteditor? Das ist ja umständlich. Warum hast du nicht sed benutzt?" 😐 Pah, gibt es denn keine Sonderpunkte mehr für kreative Lösungen. 😉
Mein Ziel mit der Kategorie "Leben auf der Konsole" ist weniger, Abhandlungen über Programmiersprachen und gute Praxistipps für Systemadministratoren zu schreiben. Ich glaube letztere würden sich sowieso langweilen, während andere alle Vorurteile über den typischen Linuxnutzer bestätigt sähen. Ich widme dem Ganzen trotzdem gerne ab und zu meine Aufmerksamkeit, weil sehr viele Probleme sich mit Linux auf unterschiedliche Weise schon von Haus aus lösen lassen. Außerdem habe ich mit der Zeit festgestellt, dass einfache Lösungen, Eleganz und Effektivität sich bei Konsolenanwendungen nicht zwangsläufig ausschließen müssen, eher das Gegenteil ist der Fall.
Bei GNU sed verhält es sich ähnlich. Es gibt schon tonnenweise gute Informationen im Internet. Als Lektüre empfehle ich z.B. sed, awk und reguläre Ausdrücke.
Um das alte Beispiel mit dem Umwandeln von Groß- in Kleinschreibung aufzugreifen, das lässt sich mit sed so lösen:
Als Testlauf

for DATEI in *.jpg ; do NEUEDATEI=`echo $DATEI | sed -e 's/(.*)/L1/'` ; echo "$DATEI wird umbenannt in $NEUEDATEI" ; done

Und so gehts richtig

for DATEI in *.jpg ; do NEUEDATEI=`echo $DATEI | sed -e 's/(.*)/L1/'` ; mv "$DATEI" $NEUEDATEI ; done

Mehr Beispiele gibt es auch hier und hier. Wie der letzte Link zeigt, gibt es tatsächlich mehr als nur eine Möglichkeit Dateinamen von Groß- nach Kleinschreibung oder umgekehrt zu ändern.
Jeder kann nun für sich entscheiden, ob die VIM-Methode oder sed einfacher war. Bei wenigen Dateien verschwende ich auf so etwas sowieso keine Anstrengungen und ändere es schnell per Hand. Wenn aber Tausende von Dateien geändert werden müssen, lohnt sich der Blick auf sed und eine simple Schleifenkonstruktion.
In meinem alten Beitrag hat andre noch auf ein kleines Skript namens vils hingewiesen, welches es auch direkt für Arch Linux in AUR und für FreeBSD oder direkt als Download zu geben scheint. Ruft man vils auf, werden automatisch alle Dateinamen in einem Verzeichnis im Editor der Wahl angezeigt. Dort können sie verändert werden und werden nach dem Abspeichern im Editor exakt so umbenannt. Das Skript nimmt einem also das ls | vim - und das Hinzufügen von Shell Befehlen wie mv innerhalb von vim ab. Leider scheint es nur für die zsh Shell zu funktionieren, ist aber eine praktische Sache, wenn man oft Dateien umändern muss und dafür gerne einen vielseitigen Texteditor wie Vim benutzt.
Fazit: Es gibt wie so oft immer mehr als eine Lösung für das gleiche Problem.

Qualitätssicherung in Debian Testing: Warum ist nach dem Update Paket XY verschwunden?

Nachdem ich gestern ein normales Update gemacht hatte, funktionierte plötzlich das AWN-Dock nicht mehr richtig. Genauer gesagt waren meine zusätzlich installierten Applets für den schnellen Zugriff auf Nautilus und der Ausschaltknopf verschwunden. Als ich gründlicher nachforschte stellte ich fest, dass zwar das Kernpaket avant-window-navigator erneuert worden war, die Pakete mit den Extraapplets aber veraltet waren und nicht mehr funktionierten.
Um dem Problem auf die Spur zu kommen, hilft hier meistens eine Suche mit dem Webfrontend bei debian.org zur Beantwortung der Frage weiter: "Warum ist Paket X noch nicht in Testing?" Gibt man im Suchfeld den Namen des betreffenden Pakets ein, erscheint im Falle von awn-applets-c-extras:

  • binary package awn-applets-c-extras is part of source package awn-extras-applets
    • awn-extras-applets has no old version in testing (trying to add, not update)
    • Ignoring medium urgency setting for NEW package
    • awn-extras-applets (source) has new bugs!
  • Dependency analysis (including build-depends; i386 only):
    • awn-extras-applets depends on vala-awn which is not available in testing
    • vala-awn is not available in Debian

Schaut man sich danach die gemeldeten Bugs im Quellpaket von awn-extras-applets an, findet man dort einen sogenannten "failed to build from source"-Bug (FTBFS), was nichts anderes bedeutet, als dass das Paket mit den momentanen Abhängigkeiten sich nicht fehlerfrei kompilieren lässt und ein schwerwiegender Fehler vorliegt. Deswegen wurde der Fehlerbericht an den Entwickler des Pakets (Upstream) weitergeleitet, der sich zuerst um die Lösung kümmern muss, bevor die Extraapplets wieder in Testing installierbar sein werden.
In diesem Fall greift automatisch die Qualitätssicherung von Debian. Debian Testing lässt nur Pakete ohne FTBFS-Bugs aus Unstable einfließen. Da von dem Bug die Hauptanwendung avant-window-navigator aber nicht betroffen ist, lässt sie sich weiterhin benutzen.
Einen sehr guten Überblick über alle Abhängigkeitsprobleme bietet auch Debians Webseite zur Qualitätssicherung.
Für mich war damit die Frage beantwortet, warum plötzlich die Applets nicht mehr alle funktionierten. Deswegen muss ich nun wieder über das Gnome-2-Menü oder Tastenkürzel Nautilus aufrufen und den Rechner herunterfahren. Ja, das Leben kann so hart sein. 🙄 Aber besser so als dafür Qualität und Zuverlässigkeit zu opfern.