glxinfo # Mit diesem Befehl kann geprüft werden, ob die Grafikbeschleunigung 3D durch ’direct rendering’ unterstützt wird. Der Befehl muss in einer Konsole innerhalb der grafischen Oberfläche X11/xorg (KDE, Gnome, Fluxbox, usw. ) ausgeführt werden.
glxinfo | less # Auf diese Art kann in der Ausgabe gescrollte werden. Mit ’q’ wird ’less’ wieder beendet. Wichtig ist, dass in der Zeile ’direct rendering: Yes’, wie im Beispiel ’Yes’ steht.
glxgears # Mit diesem Befehl wird ein Fenster geöffnet mit einer 3D Demo bestehend aus sich drehenden Zahnrädern. Auf der Konsole werden die Frames pro Sekunde ausgegeben (oder umrechnen auf Sekunden). Das Fenster sollte auf die volle Größe des Bildschirmes gezogen werden. Der Wert sollte dann noch mindestens 25 Frames pro Sekunde betragen. Bei meinem Netbook wird dies gerade noch erreicht. Unter 25 Frames/s ruckeln grafische Spiele und unter 10 Frames/s wird es wirklich eine Qual. Aus dem Wert läßt sich auch entnehmen, dass das Netbook mehr für die Büroarbeit taugt, als für animierte Computerspiele.
Bei einigen Programmen kann es sein, dass die Menüs für die Einstellung der Eigenschaften nicht erreichbar sind. Leider wurden bei der Programmierung oft die Scrollfunktion am Fensterrand nicht mit eingebaut. Abhilfe ist hier nur mit einem größeren virtuellen Bilschirm (’virtual screen’) zu erreichen. Mit der Maus am Bildschirmrand kann so der sichbare Ausschnitt verschoben werden. Im Englischen wird das als ’panning’ bezeichnet. Erreicht wird dies durch den Befehl .
Benötigt wird mindestens die Version 1.3 der Anwendung ”xrandr“.
Bei jüngeren Distributionen wurde die automatische Erkennung der Grafikhardware und des Bildschirmes wesentlich erweitert. Für ettliche Grafikkarten ist dies bereits bei der grafischen Oberfläche (X11/xorg) eingebracht. Das geht sogar soweit, dass gar keine Datei ’xorg.conf’ mehr vorhanden ist. Falls eine ”xorg.conf“ Datei vorhanden ist, müßte die ’Section ”Screen” ’ um einen Eintrag, wie z. B. ’Virtual 1280 1024’, erweitert werden. Beim eeepc mit Sidux und dem Treiber “intel”, wird bei einer erstellten “xorg.conf” eine Option “Virtual” trotzdem ignoriert. Hier geht es nur mit “xrandr” ab Version 1.3.
Wenn keine xorg.conf vorhanden ist, dann kann diese mit verschiedenen Befehlen erzeugt werden. Falls bereits eine solche Datei vorhanden ist, sollte diese vor dem Befehlaufruf unbedingt gesichert werden, da diese sonst überschrieben wird.
Es folgt ein Beispiel eines Versuches zur Erweiterung eines Modes mit “xrandr”. Wenn “Virtual” entsprechend in der “xorg.conf” eingetragen wurde, sollte der untere Eintrag eigentlich funktionieren. Bei mir funktionierte es nicht, da der Intel Treiber anscheinend diese Angabe ignoriert. Es wird eine Fehlermeldung ausgegeben, die eigentlich nicht weiterhilft.
Zwischen Monitor und Grafikkarte gibt es einen Standard über den Daten von Monitor geholt werden können und die Monitormoden werden automatisch ermittelt. Es gibt leider auch Monitorhersteller und auch Grafikkartenhersteller, die machen manchmal Fehler bei der Umsetzung des Standards. Die Fehlerbehebung wird dann im Treiber realisiert (z.B. bei Windows). Der Automatismus kann hier auch eine notwendiges manuelles Eingreifen über die xorg.conf oder xrandr verhindern, wenn diese Angaben ignoriert werden und ein solcher Fehler vorliegt.
Wenn es Probleme mit der grafischen Darstellung gibt, können eventuell die folgendenen Schritte weiterhelfen. Zuerst sollte eine vorhandene “xorg.conf” gerettet werden. Anschließend sollte eine “xorg.conf” gemäß der Anleitung in diesem Kapitel erstellt werden. Als Versuche sollten als Treiber “vesa” und in Folge “vga” oder “svga” probiert werden. Die meisten Optionen sollten auskommentiert oder weggelöscht werden. Wenn das nicht hilft X11/xorg zum Laufen zu bringen, kann es oft der Fall sein, dass weitere Stunden des Probierens vergebens sind. Bei neuer Hardware hilft es oft einfach zu warten und in einem halben Jahr mit einer aktuelleren Linuxversion es erneut zu versuchen (oder mittels Verwendung Linux aus dem Zweig “unstable”).
Mittels “lspci” ist herauszubekommen, welche WLAN-Karte im Rechner steckt. Bei dem ASUS eeepc ist das eine “Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) (rev 01)”. Mittels “lsmod” ist herauszubekommen, welche Treiber geladen sind. Über Suche im Internet hatte ich herausgefunden, dass es ein Treiber mit “ath” im Namen sein muss. Also durchsuchte ich die Ausgabe nach diesem Schlüsselwort mittels “grep” und erhielt, dass der “ath9k” Treiber geladen ist.
Die WLAN-Karte funktioniert zwar mit dem Treiber, aber häufig findet ein Wiederaufbauen der Verbindung statt. Bei meiner Beobachtung fand ich heraus, dass die Signalstärke immer viel zu niedrig angegeben wird. Es liegt hier anscheinend noch ein Problem bei der Steuerung von einstellbaren Verstärkungsstufen des WLAN Chipsatzes vor.
Da die Linux Programmierer leider nur selten Informationen von Seiten der Hardwarehersteller bekommen, müssen diese oft mittels Probieren herausfinden, wie die Hardware geht um einen Treiber zu bauen. Das verschlingt eine Menge an Zeit und daher ist Linux bei der Hardware-Unterstützung öfters leider immer etwas hinterher. Bei Problemen reicht es oft ein halbes Jahr zu warten und mit einer aktuelleren Distribution es erneut zu versuchen. Hin und wieder lassen sich auch Hinweise auf die Vermutung finden, dass gewisse Betriebssystemhersteller mit einigen Hardwareherstellern Exklusivverträge geschlossen haben könnten, die eine Weitergabe oder Freigabe solcher Informationen nicht zulassen würden.
Wir Endnutzer werden es vermutlich nie erfahren, ob diese Vorwürfe stimmen. Einen kleinen Einfluß auf diese Dinge hat der Endnutzer und Käufer allerdings noch durch sein Konsumverhalten. Er kann Produkte meiden, für die es auch keine Treiber für Linux gibt. Auf diese Art und Weise kann auch ein Nicht-Linux-Nutzer die freie Linux-Welt unterstützen.
Auf der anderen Seite bekommt auch ein Nicht-Linux-Nutzer somit in der Regel auch in den Genuß von einigen Vorteilen, die er beim Kauf meistens nicht erkennen kann, aber sich im Betrieb bewähren. Er bekommt so einen Rechner mit solider Hardware, wo in der Regel auch mehr Fehler gefunden wurden, die dann auch in die Treiber von anderen (marktführenden) Betriebssystemen eingeflossen sind. Es läuft öfters auch Hardware für die es offene und freie Treiber für Linux gibt etwas stabiler als Hardware mit nur proprietären Treibern für Linux.
Auf meinen Rechnern (Freunde und Bekannte) bei denen alle Komponenten unter Linux unterstützt wurden, hatte ich tatsächlich mit dem Betriebssystem Windows kaum sogenannte “Blue Screens” und eine Neu-Installation des Betriebssystems war deshalb auch nicht notwendig geworden. Oft waren bei Linux unterstützer Hardware auch viel eher Treiber für mehrere Betriebssystemgenerationen von Windows vorhanden nach meinen Erfahrungen.
Aus diesem Grund kann ich einem überzeugten Windows-Nutzer durchaus empfehlen sich bei der Auswahl seiner Hardware von einem überzeugten Linux-Nutzer beraten zu lassen. Und wenn alle Stricke reißen sollten, dann funktioniert auf jeden Fall noch eine Linux-LiveCD um z.B. wichtige Daten zu retten. Wenn der Virenscanner eine Datei nur noch löschen kann, da der Virus sonst nicht entfernt werden kann, wenn das Betriebssystem nicht mehr hochfahren kann, wegen einem Virus oder defekter Sektoren, seien hier als Beispiele genannt. Nach diesem Exkurs gehen wir wieder über zum eigentlichen Thema.
Wenn die WLAN-Karte funktioniert kann mit folgendem Befehl herausgefunden werden, welche Netze in der Umgebung vorhanden sind. Mit “grep” habe ich aus der sonst umfangreichen Ausgabe gezielt einige Zeilen herausgesucht, die wohl zuerst von Interesse sind. Der Befehl “iwlist” bzw. “/sbin/iwlist” funktioniert meistens auch als “user”.
iwlist wlan0 scanning | grep "ESSID\|Channel\|Quality\|Cell"
Manchmal ist es auch notwendig die Verbindung zu beenden und wieder neu Aufzunehmen. Der Befehl “ifdown” und “ifup” funktioniert meistens nur als “root”.
ifdown wlan0 ; sleep 2 ; ifup wlan0
Mit den Befehlen “iwconfig” und “ifconfig” ohne Parameter/Optionen als “root” wird eine Übersicht ausgegeben, aus der auch entnommen werden, kann welche LAN/WLAN es gibt und wie diese lauten (eth0 oder eth1, wlan0 oder wlan1, usw.).
Bei der Distribution Sidux wird im Menü unter Internet die Anwendung “ceni” zur Netzwerkkartenkonfiguration LAN und WLAN aufgerufen. Es wird hier zuerst ein kleines Fenster geöffnet, wo das “root”-Passwort abgefragt wird. Dann öffnet sich eine Konsole/Terminal mit einer textkonsolenbasierten Menüführung. Etwas unpraktisch finde ich hier, dass die Anwendung jedesmal neu aufgerufen werden muss, wenn ein anderes Netz als Zugang gewählt wird. Aber “ceni” funktioniert dafür auch auf einer “root”-Konsole ohne grafische Oberfläche.
Nach der Einrichtung mit “ceni” einer WLAN-Verbindung wird auch versucht beim Booten diese bereits einzurichten. Ist das WLAN-Netz nicht vorhanden werden einige Versuche durchgeführt bis der Boot-Vorgang fortgesetzt wird.
Allerdings hat der vorhandene Treiber kleine Macken im Betrieb. Bei der Anzeige sind die Empfangsstärken zu gering. Ein paar Meter entfernt werden nur -80 dB angezeigt und ganz nahe am Router -40 dB. Aus dem Grunde gibt es öfters ein Verlieren der Verbindung mit einer Wiederaufnahme der Verbindung. Gemäß einer Antwort auf der Fehlerliste “bugzilla” soll es mit einem neuen Treiber von “linuxwireless.org” funktionieren.
Das ausführliche Listing des Fehlers ist unter folgendem Link zu finden und darunter sind die wichtigsten Auszüge aufgelistet, deren Kommentare (engl.) nur wenige Ergänzungen benötigen.
Also gibt es drei Möglichkeiten die neuen Versionen mit eingebauten Patches auf den Rechner zu bekommen.
Die erste Methode wäre auf einen höheren Kernel zu aktualisieren. Dies würde mit “apt-get dist-upgrade” funktionieren. Dabei würde aber auch das ganze Betriebssystem und seine Anwendungen auf eine neue Version gebracht werden. Bei Debian kann auf diese Art und Weise das Linux auf die nächste Version ohne Neuinstallation gezogen werden. Es werden aber dabei auch tiefergehende Änderungen (z.B. Pakete/Anwendungen die weggefallen sind) durchgeführt, die nicht immer erwünscht sind. Da dies nicht gewünscht wurde, kam diese Methode hier nicht in Betracht.
Die zweite Methode wäre Herunterladen der “compat-wireless” Quellen (fast 3 MB) und das Übersetzen mittels “make” und “make install”.
Die dritte Methode wäre das Verwenden von “git”, bei der die Quellen geladen werden und eine kleine Kernelentwicklungsumgebung dabei ist. Git erlaubt es mehrere lokale Branches zu haben, die voneinander komplett unabhängig sein können. Die Installation benötigt allerdings 400-500 MB zusätzlichen Platz auf der Festplatte, ist aber auch die flexibelste Methode.
Theoretisch ließe sich das wieder rückgängig machen, aber da die Megabytes schon heruntergeladen wurden, wurde nun gemäß der Anleitung fortgesetzt.
Da nun in der Anleitung fehlte, dass in einem angelegten Zweig (Branch) mit den Quellen gearbeitet werden müsste, wurde nun doch zur anderen Methode übergegangen.
In dem Falle konnte die Unachtsamkeit noch nachgeholt werden, dass die Einschränkung auf die Atheros Treiber vergessen wurde, da “make install” noch nicht ausgeführt wurde.
Und nun wurde es eindeutig besser mit dem WLAN. Die Signalstärken passten und die Verbindung war viel stabiler geworden. Zur Information sind hier noch die Pfade der Treiber angegeben. Wenn “make” nicht geht, kann es sein dass die wesentlichen Kernel Headers/Quellen fehlen. Bei Debian basierten Distros sollten folgenden Pakete installiert sein:
Interessant ist noch zu erwähnen, dass sowohl das ursprüngliche, wie auch das neue Treibermodul sich in unterschiedlichen Unterverzeichnissen befinden.
Beim Wiederaufwecken des Rechners oder zwischendurch einen anderen Zugang (LAN oder UMTS-Stick) verwenden, kann es manchmal passieren, dass das WLAN nicht zur Mitarbeit zu bewegen ist. In dem Falle findet iwlist und ceni keine vorhandenen Netzwerke. Mittels Entladen und wieder Laden des WLAN-Treibermoduls kann dies auf der Konsole ohne Rechnerneustart wieder behoben werden.
Bei dem Drucker handelt es sich um einen Multifunktionsdrucker der am LAN-Anschluss des DSL-Routers hängt. Der Vorteil dieser Installation ist, dass Jeder Nutzer dieses Gerät über das WLAN/LAN Netz erreichen kann. Der Brother Drucker war zwar etwas teurer als vergleichbare Geräte, da dieser keinen Chip in den Patronen hat um über den Patronenverkauf den versteckten Rabatt (Dumpingpreis) wieder hereinzuholen.
Ein Chip in den Patronen ist also vielmehr eigentlich nur störend und daher können viel einfacher auch billige Noname-Patronen verwendet werden, wenn ein solcher Chip nicht verbaut ist. Die Differenz hatte sich schon in den ersten zwei Jahren über die günstigeren Patronen amortisiert. Ohne Chip sind auch die Marken-Patronen von Brother billiger in der Herstellung und können somit auch günstiger verkauft werden. Daher ist meine Empfehlung an den Verbraucher nur Teile zu kaufen, die keine ähnlichen Blockaden, wie einen solchen Chip besitzen.
Bei der Installation des Druckers ist es auf jeden Fall sinnvoll sich in das Verzeichnis INSTALL ein entsprechendes Unterverzeichnis anzulegen. In dieses werden heruntergeladenen Treiber und am Besten auch die Anleitungen abgelegt.
Wenn der Browser die Dateien als Postscript druckt (*.ps), dann können mit folgendem kleinen Script alle Dateien am Schluß in einem Rutsch in ein PDF umgewandelt werden.
Die Druckertreiber sind alle auf der Konsole zu installieren und es wird die Shell “csh” oder “tcsh” benötigt.
Also sind diese noch nachzuinstallieren. Die Shell “tcsh” hat umfangreichere Funktionen. Da beide Anwendungen nur wenig Platz brauchen wurden beide installiert.
Mit der Eingabe von “csh” und “tcsh” wird die jeweilige Shell gestartet, die durch die Engabe von “exit” wieder verlassen werden kann. Aber Vorsicht, wenn “exit” noch einmal eingegeben wird dann wird die Konsole verlassen bzw. geschlossen.
Um herauszufinden, welche Variante hier zutrifft, kann das vorhanden sein der Pfade mittels “ls” geprüft werden.
Mit einem Browser kann das Web-Interface des Drucksystems “cups” unter der Adresse http://localhost:631 erreicht werden. Bei Unix/Linux ist die interne Kommmunikation auch auf IP basiert. Mit dem Begriff “localhost” ist die interne IP gemeint (IP V4 127.0.0.1), das heißt http://127.0.0.1:631 hätte das gleicht bewirkt. Bei der IP V6 ist diese Adresse etwas länger und schwieriger zu merken. Wenn “localhost” verwendet wird, ist es egal ob wir ein IP V4 oder IP V6 Netz haben.
Bei älteren Distributionen mußten die Passworter für den Printer-Zugang neu gesetzt werden und bei der Setzung des Passwortes wurde auch automatisch erzwungen, dass dieses bestimmte Kriterien erfüllt, wie z.B. kein Teil eines Namens (user und root) darf enthalten sein. Hier mußte mit “lppasswd -g sys -a root” erst die entsprechenden Passwörter gesetzt werden. Bei neueren Distributionen auf einem Desktop-PC werden die Passworter nun übernommen oder zumindest das Passwort des “root”. Zu prüfen ist das indem http://localhost:631/admin/ eingeben wird oder der Reiter Administration des CUPS-Menüs gewählt wird. Es erscheint ein Abfragefenster für Nutzernamen (hier “root” eingeben) und Passwort. Solange die Browseranwendung nicht gänzlich beendet wird, wird das Passwort nicht erneut abgefragt. Wenn ein falsches Passwort eingeben wurde, dann kommt keine Abfrage mehr. Hier muss erst die Browseranwendung geschlossen werden und neu gestartet werden. Bei dem hier verwendeten Sidux funktionierte das Passwort des “root” auch bei CUPS. Also war hier nichts weiter zu tun.
Da sich auf dem Rechner eine 32bit Version des Betriebsystems befindet, können die Schritte für eine 64bit Version ausgelassen werden. Es sind noch einige Angaben zu Ubuntu angegeben, das auch auf Debian basiert. Für Ubuntu wäre noch “sudo aa-complain cupsd” notwendig, aber den Befehl gibt es bei Sidux Linux nicht und auch keinen Paketnamen, der so lautet. Vermutlich ist das eine Besonderheit bei Ubuntu. Ebenfalls gibt es die Pfade “/var/spool/lpd” und “/usr/share/cups/model” bei dem Rechner nicht. Wenn der Drucker nicht geht, merke ich mir das vor für einen eventuellen weiteren Lösungsversuch.
Hier stößt der Nutzer bereits auf einige Ungleichheiten bei den Distributionen, die leider manchmal das Leben schwer machen können. Einige sind der Meinung, dass hier “viele Köche den Brei verderben”. Die Ursache ist eigentlich nur diese, dass die vielen freiwilligen Linuxprogrammierer sich in der Welt räumlich weit und erteilt befinden. Ein Einigungsprozess auf eine vollkommen einheitliche Linie von Anfang an wird dadurch erschwert. Wenn es notwendig ist, findet sich meist eine Gruppe Programmierer einer Distribution zusammen und programmiert eine Lösung. Wo anders in der Welt passiert das auch und diese lösen das etwas anders.
Eine Vereinheitlichung findet so öfters erst später statt. Oft ist es auch nicht vorhersehbar, welche Lösung die bessere ist. Erst in Folge des Fortschreitens weiterer Anwendungen ergibt sich das oft. Das ist auch ein Grund für die Vielfältigkeit bei Linux.
Zuletzt ist bei den Voraussetzungen noch zu prüfen ob das Paket “psutils” installiert ist. Herausfinden konnte ich dass “cupsutils” bereits installiert war. Also müssen die “psutils” nachinstalliert werden.
Nun sind die Vorbereitungen abgeschlossen und es kann losgelegt werden. Zuerst sind die passenden Treiber von der Brother Homepage herunterzuladen. Für Sidux werden die *.deb-Pakete benötigt. Für Fedora und Suse werden die *.rpm-Pakete benötigt. Es kann durchaus sinnvoll sein, beide Paketvarianten herunterzuladen, fall eine der anderen Linuxvarianten später auch auf dem Rechner auf einer anderen Partition oder in einer virtuellen Umgebung (z.B. vmware, virtual pc) installiert werden sollte. Es ist sinnvoll diese in ein Verzeichnis, wie zum Beispiel “INSTALL/sw/printer_MFC5440” abzulegen und zu archivieren.
Nun wird die Anleitung heruntergeladen in unser Unterverzeichnis und auch in dieses gegangen “cd INSTALL/sw/printer_MFC5440”. Aus der Brother Homepage habe ich die relevanten Abschnitte in folgenden Block kopiert:
Nach der Fehlerausgabe muss ich also doch noch das Verzeichnis “/var/spool/lpd” erstellen. Da in der Anleitung “mkdir /var/spool/lpd” steht (nicht sudo mkdir) versuche ich es erst als user. Es ist nicht immer gut alle Verzeichnisse als “root” zu erzeugen, da diese per Standardeinstellung nicht für den “user” schreibbar sind. Das kann zu unverhofften Schwierigkeiten führen.
Als “user” ging es nicht da “mkdir /var/spool/lpd” zu einer Fehlermeldung führte “mkdir: cannot create directory /var/spool/lpd: Permission denied”. Also mußte ich das Verzeichnis als ’“root” oder mit sudo ”mkdir /var/spool/lpd“ erzeugen. Mit ”sudo“ konnte ich das Verzeichnis nicht erstellen, da ich im ”sudoers“-File etwas zu ergänzen vergessen hatte, nähmlich auch das Verzeichnis ”/bin/“ mit anzugeben ”Sorry, user dieterd is not allowed to execute ’/bin/mkdir /var/spool/lpd’ as root on client3“.
Nach dem das fehlende Verzeichnis erstellt wurde, klappte die Installation anstandslos. Nun muss noch die Konfigurationsdatei bearbeitet werden. Nach kurzem testen konnte verifiziert werden, dass diese ”/etc/printcap“ lautet.
Als erstes sollten die Konfigurationsdateien angesehen werden, zumindest überflogen werden. Ab und zu stehen dort auch wichtige Informationen. So wie es bei meinem Fall war. Somit würde ich mir also jedesmal mit CUPS hier meine Eintragungen wieder zerschießen.
Also muss ich mir auch noch ”/etc/cups/printers.conf“ ansehen.
Da ich noch keinen Drucker installiert hatte, könnte das auch richtig sein, dass es diese Datei noch nicht gibt. Hier sind vielleicht ein paar wichtige Worte zu dem warum notwendig.
Wenn ich hier ein reines Konsolensystem aufgezogen hätte, dann müßte ich diese Datei gemäß den Angaben auf der Homepage editieren. Aus dem Grunde habe ich den Abschnitt auch in mein Dokument hineinkopiert. Bei einer grafischen Oberfläche, wo der Rechner auch mehr Resourcen hat, kann CUPS verwendet werden, das auch eine grafische Verwaltungoberfläche bietet. Bei einer nachträglichen Installation von CUPS sollte diese die Angaben auf der Textebene mit übernehmen. Allerdings verläßlich ist das nicht und somit ist das auch eine der Dateien, die vor einer solchen Aktion gesichert werden sollte.
Wenn CUPS bereits installiert ist (und läuft), dann überträgt dieses die Konfiguration auf die darunterliegende Konsolenebene. In dem Falle wird die ”/etc/printcap“ überschrieben. Ob es einen Ergänzungsmode bei CUPS von der Konsolenebene in die grafische Ebene beim Starten gibt, ist meiner Ansicht nach zu verneinen. Das dürfte der Hochfahrgeschwindigkeit beim Booten zum Opfer gefallen zu sein.
Es könnte allerdings sein, dass der ”cupswrapper“ beim Installieren hier noch etwas übernimmt. Aus den Überlegungen heraus könnte es noch Sinn machen die Datei trotzdem zu editieren. Aber dann darf bevor der cupswrapper nicht installiert wird, auf gar keine Fall bei CUPS im Browser im Adminstriermode irgendetwas konfiguriert werden.
Wer hier die Testseite drucken will, muss wissen, dass er hier die Datei ”/etc/printcap“ editieren muss, und dann den Printserver lpr neustarten muss. Gedruckt wird dann aus der Konsole oder ggf. funktionert es auch aus der grafischen Oberfläche (lp oder lpd als Druckweg wählen.)
Nach dem Test ist der Druckertreiber ”lpr“ erfolgreich installiert. Also ist nun der cupswrapper zu installieren. Übrigens, wenn die Fehlermeldung mit dem fehlenden Verzeichnis übersehen worden wäre, würde hier auch ausgegeben werden, dass der Treiber installiert ist. Beim cupswrapper habe ich das explizit nachgewiesen.
Also wird ”cupswrapper“ installiert, wie oben beschrieben. Als experimentierfreudiger Linux-User versuche ist es wieder ohne die Option ”–force-all“.
Aus der Fehlermeldung ist zu entnehmen, dass das Verzeichnis ”/usr/share/cups/model“ fehlt und auch zu erstellen ist. Die Angabe, dass dieses Verzeichnis nur für Ubuntu zu erstellen wäre, stellte sich also als nicht ganz richtig heraus. Nach dem Test mit ”dpkg -l | grep Brother“ wären jetzt die Treiber ”lpr“ und ”cupswrapper“ installiert.
Übrigens, wenn die Fehlermeldung mit dem fehlenden Verzeichnis übersehen worden wäre, würde auch ausgegeben werden, dass alle Treiber installiert wären. Beim ”cupswrapper“ habe ich das explizit nachgewiesen. Es gibt noch einen kleinen leicht übersehbaren Hinweis, dass etwas bei der Installation nicht geklappt haben könnte. Im vorherigen Listing steht am Zeilenanfang ”iF“ statt ”ii“.
Wichtig ist, dass nach dem beheben des Fehlers die Installation noch einmal durchgeführt werden muss. Wenn es immer noch Probleme geben sollte, dann sollte die Option ”–force-all“ in Betracht gezogen werden. Für einen Anfänger kann das unter Umständen eine große Hürde sein.
Als ”user“ ließ sich das Verzeichnis nicht erstellen. Als ”root“ oder mit ”sudo“ konnte das Verzeichnis mit ”mkdir /usr/share/cups/model“ erstellt werden. Auf jeden Fall muss nun nochmal die Installation (eventuell besser mit –force-all) durchlaufen.
Und nun erfolgt noch der Test mit ”dpkg -l“, ob die Pakete installiert sind. Wer ganz aufmerksam ist, sieht vielleicht dass nun am Anfang jeweils ”ii“ steht und vorher je einmal ”ii“ und ”iF“. Die Ursache war der Fehler bei der Installation. Das ist auch noch ein kleiner Hinweis, der allzuleicht übersehen wird.
Nun gibt es eine Datei ”/etc/cups/printers.conf“. Wenn ich die Daten bereits eingetragen hätte in der ”/etc/printcap“, wären diese vielleicht übernommen worden.
Wie oben zu entnehmen ist, wurde die Datei ”printers.conf“ bereits mit Standardwerten vorbefüllt. Diese würden benötigt, wenn der Drucker am USB-Anschluss hängen würde. Hier ist dieser aber im Netzwerk am LAN-Anschluss des DSL-Routers angeschlossen. Im folgenden werden mit CUPS die entsprechende Konfiguration durchgeführt.
Ich bin positiv überrascht, dass CUPS meinen Drucker im Netzwerk gefunden hat und diesen auch als Option bereits anzeigt. Wenn die IP-Adresse manuell eingegeben werden muss, müssen alle führende Nullen weggelassen werden. Die Stellen werden sonst als Oktalzahlen interpretiert. Eine Superfalle um einen Drucker leider niemals zum Laufen zu bringen. Also bitte 192.168.2.22 und niemals 192.168.002.022 eingeben.
Im nächsten Menü wird für den ”Brother MFC-5440CN CUPS v1.1(en)“ als Blattgröße A4 eingestellt.
Allerdings ist der Drucker nun 2x bei CUPS eingetragen. Papier A4 ist bei beiden einzutragen.
Brother_MFC-5440CN Brother MFC-5440CN KO_HOME Brother MFC-5440CN CUPS v1.1 Idle - ”Ready to print.“
MFC5440CN MFC5440CN Brother MFC-5440CN CUPS v1.1 Idle
Die Datei ”/etc/cups/printers.conf“ gibt Auskunft was passiert ist. Es wurde eine Druckerkonfiguration des gleichen Druckers mit Standardwerten am USB-Anschluss zusätzlich übernommen. Die Eintragungen blieben zu meiner Überaschung in der ”/etc/printcap“ unberührt, trotz des Hinweises, dass diese von CUPS überschrieben werden. Bei der Auswahl der Drucker muss also aufgepasst werden, damit nicht alles an den falschen Drucker, das heißt nicht existenten Drucker am USB-Anschluss gesendet wird. Diese Dateien werden im Drucker-Spoolerverzeichnis aufgehoben. Daher sollte auch bei CUPS die ”Jobs“-Seiten im Browser aufgerufen werden und nachgesehen werden, ob sich dort unerledigte Aufträge angesammelt haben. Die Spooler-Verzeichnisse sollten auch mit einem Dateimanager angesehen werden, ob hier Datenschrott liegt, wenn der Platz auf der Festplatt sich dem Ende zuneigt.
Das Drucken der ”Test Page“ hat auf Anhieb funktioniert. Wenn der Testdruck nicht klappt ist eine der ersten Adressen zum Nachsehen die Job-Verwaltung bei CUPS mit dem Web-Browser. Vorhergehende hängende Jobs können hier im Wege stehen und jedeglichen Ausdruck um den Drucker zu testen blockieren.
Das Kapitel Drucker ist eines der Kapitel, in dem ich bewußt “etwas ungeschickt” angefangen habe zu installieren oder konfigurieren. Da nur so aufgezeigt werden kann, wo und welche Hinweise zu finden sind, um wieder auf den richtigen Weg zu kommen. Im Anschluß folgt noch die knappeste Form der Auflistung, der Schritte für die Druckerinstallation. Diese enthält natürlich keine Hiweise, was vorher geprüft werden sollte und wie mit dem Ergebnis zu verfahren wäre.
Als nächstes werden die Treiber für die Scanner-Funktionen installiert. Zunächst wird nachgesehen auf der Beschreibung auf der Homepage, was zu tun wäre. Es gibt dort eine Zusammenstellung, welche Vorbereitungen getroffen werden müssen, damit für die folgende Treiberinstallation alle vorausgesetzten SW-Komponenten und Konfigurationen bereits vorliegen. Die Anleitungen sind sehr oft nur in Englisch verfügbar. Einige Anwender kann dies auch wieder vor Herausforderungen stellen, für die sie Hilfe von versierteren Linux-Nutzern benötigen.
Voraussetzung ist, dass sane und sane-utils installiert sind. Gemäß Prüfung sind diese bereits vorhanden. Auf dem Rechner ist auch keine extra Firewall aktiv (Port 54925), und ein Paket “scan-key-tool” gibt es anscheinend bei Sidux nicht. Der Drucker ist in der Liste ”brscan2 models“. Von der Homepage werden die entsprechenden Treiber heruntergeladen in das Verzeichnis ”INSTALL/sw/printer_MFC5440”.
Nach dem die Voraussetzungen geprüft wurden, wird die Installationsanleitung für den Treiber unter die Lupe genommen.
Wenn die IP-Adresse manuell eingegeben werden muss, müssen alle führende Nullen weggelassen werden. Die Zahl wird sonst als Oktalzahl interpretiert. Eine Superfalle um den Drucker nicht zum Laufen zu bringen. Also bitte 192.168.2.22 und niemals 192.168.002.022 eingeben. Ob das Multifunktionsgerät erreichbar ist, prüfe ich mit “ping”. Das zweite Beispiel zeigt die fatale Wirkung der führenden Null in der IP-Adresse.
Nun wird wieder versucht den Treiber zu installieren auf der Konsole als “root”. Die Ausgabe zeigt, dass alles funktioniert hat.
So sieht die Ausgabe aus, wenn noch nichts konfiguriert wurde.
Nun soll mit brsaneconfig2 der Scanner konfiguriert werden. Das Ganze scheitert, wenn die Namen nicht genau stimmen. Gut ist, wenn diese aufgeschrieben wurden. Dies sollte eigentlich so selbstverständlich sein, dass es keines Hinweises mehr bedarf. Aus der “/etc/cups/printers.conf” oder CUPS im Browser kann dieser auch abgelesen werden
Der Scanner ist nun erfolgreich installiert. Nun wird “xsane” gestartet. Wenn xsane keine Quelle findet, beendet es sich sofort wieder. Auf der ersten Seite wird unter den Quellen das Multifunktionsgerät angezeigt und somit war die Installation erfolgreich. Bei Bildschirmdarstellungen mit weniger als 768 Zeilen werden bei einem der Fenster nicht die unteren Buttons erreicht. Auch hier ist die Verwendung von “xrandr” zum grafischen Bildschirm scrollen (engl. “panning”) unerläßlich.
Alternativ kann auch mit “sane” von der Konsole gearbeitet werden. Die Probe einen Stadtplan auf A4 mit 200dpi (dots per inch - ca. 2,5cm) funktionierte auf Anhieb. Eine gescannte Datei in Farbe ergibt eine nicht gerade kleine Datei. Damit lassen sich schnell Festplatten füllen, wenn nicht auf eine geeignete Komprimierung geachtet wird und auch schwarz/weiß verwendet, wenn es möglich ist.
Zu letzt sei hier wieder die knappeste Kurzform der Installation aufgeführt. Anzumerken sei noch, dass ich den Rechner seit Beginn der Druckerinstallation nicht einmal habe Neustarten müssen.
Und zuletzt sind die Treiber für die FAX-Funktionen zu installieren. Eine kleine Warnung soll hier noch gegeben werden für den unbedarften Surfer im Internet, der alle möglichen Programme und Anwendugen aus allen möglichen Quellen installiert. Auch wenn Linux ein sehr sicheres Betriebssystem ist, gibt es in Verbindung gerade mit einem FAX auch Möglichkeiten den Geldbeutel abzuzocken.
Über Umwege (z.B. Java auf Seiten, oder Installation einer Zugangssoftware (sogar für Mac und selten auch für Linux) für bestimmte Seiten (hier nicht näher genannt, Bereich der Grauzone) könnte ein FAX am Computer dazu verwendet werden, um parallel eine kostenpflichtige Telefonnummer anzurufen. Aus diesem Grund gibt es FAX-Geräte, bei denen der Mithörton (das unangenehme Piepsen) nicht vollständig abschaltbar ist. Der Mißbrauch ist allerdings in der Regel nur nutzbar, wenn der Treiber für das FAX-Gerät installiert ist. Wenn das FAX-Kabel des Druckers gezogen ist, dann ist die Gefahr auch deutlich reduziert, aber wenn der Drucker zum FAX empfangen später wieder angesteckt werden kann, dann ist die Maßnahme wiederum widersprüchlich.
Die FAX-Nutzung sollte auf dem Netzwerk nicht freigegeben werden, wenn es nicht unbedingt erforderlich ist. Wer also mit dem Rechner im Internet hier nicht näher genannte Seiten besuchen möchte, oder Seiten die mit Pop-ups dieser Seiten öfters verseucht sind, installiert aus Sicherheitsgründen keine FAX-Treiber und vermeidet auch Internetbuchungen mit Kontodaten oder Kreditkarten (In Ausnahmefällen wird ein anderer Browser verwendet, der keine Daten aus der anderen Browseranwendung übernimmt oder noch besser eine Live-Distribution auf einer CD/DVD).
Auch auf normalen Seiten kann eine Werbung für dubiose Angebote erscheinen, oder auch Spam-Emails enthalten Links auf solche Seiten. Wer sich ansehen möchte, wo diese Hinführen, kopiert die Links in einen Textbrowser, entfernt aus dem Link irgendwelche Zahlenfolgen/Buchstabenfolgen (aus dieser Ergänzung entnimmt der Versender, dass seine Nachricht angesehen wurde und es den Empfänger gibt. Es kommt in Zukunft mehr Spam an) und verwendet zum Ansehen solcher Seiten eine Linux-Live-File CD/DVD (keine USB-Stick Variante) ohne Profil/Ergänzungsspeicherungen auf der lokalen Festplatte. Das wären meine Sicherheitsratschläge für diese Fälle.
Eigentlich ist das ein Tabuthema, über das nicht gesprochen wird und erst recht nicht geschrieben wird. Die Betroffenen werden es daher auch nicht erzählen und vorziehen zu zahlen. Auf einem längeren Lehrgang für einen Kameraden dessen Kreditkartendaten mißbraucht wurden und er Ärger bei der Sperrung hatte, bestand die Notwendigkeit eben aus solchen dubiose Internet-Seiten Informationen zu holen. Bei Bier und Spezi am Abend entstanden die hier geschilderten Vorsichtsmaßnahmen.
Zunächst wird der LPR Treiber installiert, damit auch Faxen von der Konsole aus möglich ist.
Nicht so schön ist, dass die Fax-Nummer in einer Konfigurationsdatei eingetragen werden muss.
Anschließend wird der CUPS Treiber installiert um auch von der grafischen Oberfläche aus ein Fax zu versenden.
Vor der Installation des Sticks am USB-Port hatte ich im Internet recherchiert, welche Möglichkeiten es der Installation für den USB-UMTS/GRPS Stick von ALDI gibt.
lsusb # Der Befehl ’lsusb’ sollte zuerst ohne den Stick ausgeführt werden. Anschließend wird der Stick angesteckt und ’lsusb’ nochmal ausgeführt werden. Bei einige Distributionen benötigt ’lsusb’ unter Umständen ’root’-Rechte. Wenn der Stick erkannt wird, wie in folgenden Listings, dürften die weiteren Schritte funktionieren.
Die Recherche ergab, dass es zwei Methoden gibt den Stick zu verwenden. Eine Methode geht über Anwendungen, die eine grafische Oberfläche benötigen (’umtsmon’, ’usb-modeswitch’) und die andere Methode über die Konsole (’wvdial’, ’usb-modeswitch’). Zur ersteren Methode konnte ich aus Blogeinträgen entnehmen, dass diese bei Sidux nicht mehr im Repositorium ist, da ’umtsmon’ dort nicht mehr enthalten ist.
Mit ”sudo“ konnte später ein Verzeichnis nicht erstellt werden bei der Druckerinstallation, da ich im ”sudoers“-File etwas zu ergänzen vergessen hatte, nähmlich auch das Verzeichnis ”/bin“ mit anzugeben ”Sorry, user dieterd is not allowed to execute ’/bin/mkdir /var/spool/lpd’ as root on client3“. Zur Editierung des ”sudoers“-File sollte ”vim“ als Editor verwendet werden. Der Grund liegt darin, dass die Datei nur von ”root“ beschrieben werden kann und nur Leserechte gesetzt sind. Aus dem Editor ”vim“ kann mit ”:exitਐ‘ das übersteuert werden. Bei ”vim“ führt die Eingabe eines Buchstabens ”i“ zum Übergang in den Editormode (insert/einfügen). Mit der Escape-Taste wird dieser verlassen. Mit dem Zeichen ”:“ wird der Befehlsmode in der untersten Zeile erreicht.
Die Kofigurationsdatei ist zu finden unter: /etc/qt3/umtsmonrc
Die andere Möglichkeit ist über ppp (point to point protocol) mit wvdial. Hier sind im Prinzip die Pakete, wie bei ’umtsmon’ auch zu installieren notwendig. Die Verbindungsdaten müssen in eine Datei ”wvdial.conf“ eingetragen werden. Mit Pfadangabe ist diese normalerweise unter ’/etc/wvdial.conf’ zu finden. Es ist aber sinnvoller eine eigene wvdial.conf anzulegen und als Option bei dem Befehlsaufruf mitzugeben. Somit ist sichergestellt, dass nicht aus Versehen über den Stick gesurft wird, wenn er noch angesteckt ist, da ”ppp“ bzw. ”wvdial“ über ein anderes Programm angestoßen wurde.
Offen war noch, wie die Bestätigungs-SMS abgeholt werden kann von dem Stick. Bei ”www.linux-community.de“ fand ich im Januar 2010 die Information: “Umtsmon kann keine Kurznachrichten anzeigen”. “Empfangen werden sie aber trotzdem”. “Du kannst die SIM-Karte in ein Handy einlegen, um die Nachrichten anzuschauen oder zum Beispiel mit KMobiletools darauf zugreifen. Vodafone Mobile Connect kann SMS-Nachrichten verschicken und anzeigen.
Mit dieser Anwendung sollen sms empfangen und eingesehen werden. Nach der Installation wurde der UMTS-USB-Stick angeschlossen und die Anwendung ’kmobiletools’ gestartet. Im Menü war diese nicht unter Internet sondern Utilities zu finden. Es erschien zunächst ein Textmeldungsfenster mit einer Anleitung. Bei nur 600 Zeilen wird der ok-Button nicht erreicht. Nach dem Drücken des ok-Button, erfolgt eine Fehlermeldung und es erscheint das Konfigurationsmenü. Hier habe ich ”/dev/ttyUSB0“ als Mobil-Phone-Device angegeben und ”apply“ gedrückt. Bis auf den Batteriestatusfehler scheint alles zu funktionieren. Die SMS-Liste ist leer. Das Windows-Programm hatte wohl die SMS beim Lesen auch jweils auf der Karte gelöscht. Das Senden von einer Test-SMS zu einem anderen Mobiltelefon in beide Richtungen hat einwandfrei funktioniert. Mit der Anwendung kann somit die Bestätigungs-SMS der Tagesflatrate angesehen werden.
Mit den obigen Einstellungen wird der Stick zwar erkannt, aber es gibt immer noch ein Verbindungsproblem bei umtsmon und wvdial. Nun wird systemmatische Fehlersuche versucht.
Der erste Fehler bei ”usb_modeswitch“ mit den tiefergehenden höheren Ausführungsrechten ist somit behoben. Es kann sein, dass das auch mit der Installation als ”root“ oder ”user“ zusammen hing. Es gibt hier also zwei mögliche Fehlerquellen. Werden bei der Installation Dateipfade neu erstellt, dann kann es sein, dass als ”root“ auf den Pfad zugegriffen werden kann. aber als ”user“ nicht . Diese Fehler sind schwer aufzuspüren. Umgekehrt kann es sein, dass Dateien angelegt werden, die tiefergehende höhere Berechtungen erfordern, die als ”user“ bei der Installation nicht eingerichtet werden. Diese Fehler sind schwer aufzuspüren. Die Einrichtung des Surf-Sticks ist hierfür ein gute Beispiel, auf das ich stieß und hiermit dokumentiere.
Nun wird umtsmon noch einmal gestartet und es ergibt sich ein anderer Fehler (The remote system is required to authenticate itself but I couldn’t find any suitable secret (password) for it to use to do so.).
Nach dem es immer noch nicht geht, versuche ich also wieder den anderen Weg mit wvdial. Im Internet fand ich noch ein weiteres Beispiel, das ich von o2 auf die Aldi-Flatrate umschrieb. Das folgende Listing funktioniert nun im Betrieb (mit deaktivierter PIN). Angemerkt sei noch, dass wvdial vielleicht auch bei einer der vielen Änderungen, die ich mit anderen Beispielen versucht hatte, funktioniert hätte, wenn der Fehler bei usb_modeswitch früher behoben gewesen wäre. Also gibt es hier wieder eine Fehlermöglichkeit, die schwer zu finden ist.
Und wieder wird ein Versuch mit umtsmon gestartet, und zeigt ohne Änderungen ein anderes Verhalten. Mit einem Erfolgreichen wvdial sind irgendwelche Dateien angelegt oder geändert worden, die umtsmon es ermöglichen wieder ein paar Schritte weiter zu kommen. Die PIN aktivieren/deaktivieren funktioniert allerdings unter “umtsmon”. Das sind wieder Fehler die wirklich schwer zu finden sind.
Und so würde die Konfigurationsdatei für O2 aussehen:
Bei der Inbetriebnahme wurde, vorher unter einem anderen Betriebssystem unter Verwendung der mitgelieferten Anwendung die Tagesflatrate gebucht.
Ein Versuch wäre noch gksu zu verwenden, aber das brachte auch keinen Erfolg.
Bei der Suche im Internet fand ich, dass es noch eine weitere Anwendung für Mobiltelefone/UMTS-Sticks namens “gammu” gibt. Mit entsprechenden Modembefehlen können dabei weitere Funktionen für die Buchungen und Statusabfragen genutzt werden.
Jede Anwendung hat Stärken und Schwächen beim Surfen mit einem Mobiltelefon oder einem USB-UMTS-Stick. Leider decken die Anwendungen nicht alles meines Erachtens in einer Anwendung ab, so dass hier mehrere Anwendungen zugleich benutzt werden müssen. Vor allem trifft dies zu, wenn mit einzeln zu buchenden Tarifen, wie zum Beispiel eine Tagesflatrate das Internet genutzt wird.
Mit den vier erwähnten Anwendungen ist möglich, alle wichtigen Funktionen auszuführen ohne ein anderes Betriebssystem oder Mobiltelefon bemühen zu müssen.
Auf der Konsole kann durch einmaliges Drücken von “ctrl-c” die Anwendung “wvdial” kontrolliert beendet werden. Wenn obige Zeichenfolgen bei gammu nicht gehen, dann hilft es diese in Anführungszeichen setzen.
Manchmal ist es notwendig wvdial ein zweitesmal zu starten. Falls vorher eine WLAN-Verbindung exestiert hat, kann es notwendig sein, diese mittels “ifdown wlan0” zu beenden. Die Anwendungen (Browser) versuchen sonst meistens noch den falschen Weg ins Internet zu benutzen.
Die Inbetriebnahme des DVB-T USB-Sticks verlief auch nicht ganz glatt, wie das folgende Vorgehen belegt. Zuerst wurde der Stick während der Rechner betrieben wurde angeschlossen. Es wurde der Bildschirm schwarz und der Rechner mußte neu eingeschaltet werden. Das Verhalten ist reproduzierbar. Der Stick zieht beim Einstecken einen zu hohe Strom, so dass eine Schutzschaltung des Netbooks anspricht. Dies passiert unabhängig vom Betriebssystem.
Also wurde das Netbook mit bereits angeschlossenem DVB-T-Stick gebootet. Der Player Kaffeine zeigt zunächst nichts an betreffend des Sticks. Auf einigen Internetseiten zu DVB-T unter Linux wurden verschiedene Pakete genannt, die ich nachinstallierte und nachprüfte, ob die neueste Version bereits auf dem Rechner ist. Die folgenden Schritte sollten zunächst nicht nachgeahmt werden. Gegen Ende des Kapitels steht eine Lösung, die vorher erst versucht werden sollte.
Damit sind indirekt die meisten Abhängigkeiten auf der Anwendungsebene der DVB-T Player aufgelöst.
Nachdem obiges nicht funktionierte suchte ich im internet nach “bttv” und fand heraus, dass “bttv” bzw. “bttv2” (v4l, v4l2) teilweise etwas davon in den Kernel integriert wurde und im ladbaren Modul “bttv” befinden. Da das Modul nicht automatisch geladen wird, muß dieses manuell geladen werden.
Im Player Kaffeine wird das Gerät nun erkannt. Die Kanalsuche lief erfolgreich durch und die Programme konnten angesehen werden. Allerdings gibt es ein Problem mit “suspend to memory/disk” mit aktivem DVB-T-Stick. Die grafische Oberfläche X11 kommt erst beim zweiten Weckversuch wieder hoch und der Stick wird nicht mehr erkannt.
Vermutlich hätten die folgenden Schritte gereicht, was im nachhinein leider nicht mehr getestet werden kann. Es sollte zunächst nur die Treiber Datei “*.fw” geholt werden und das Modul “bttv” geladen werden. Nur wenn das mit dem DVB-T-Stick dann noch nicht funktioniert, sich im Internet nichts besseres finden läßt, sollten die bis zu dieser Stelle beschriebenen Schritte nachzuvollziehen in Erwägung gezogen werden.
Anmerkung: Mit einem “msi digi vox mini II” und “kaffeine” funktionierte das Fernsehsehen ebenfalls. Ohne Linux hätten meine Kollegen auf die erste Halbzeit der WM leider verzichten müssen, da das Programm des marktführenden Betriebssystem sich weigerte den Sendersuchlauf erneut durchzuführen.
Der ASUS eeepc hat eine interne Web-Cam. Unter dem SIP-Phone Program Ekiga (ehemals gnome-meeting) wurde bereits festgestellt, dass diese unterstützt wird und funktioniert.
Die Ausgabe von “v4l-info” ergibt, dass es sich um eine integrierte USB-Kamera handelt. Als Anwendung wird v4l2 verwendet. Das Kameravideo kann mittels “mplayer” angesehen werden. Sollen Bilder mit der maximalen Auflösung der Web-Cam geschossen werden, dann wird die Anwendung “fswebcam” benötgt.
Das WebCam-Video können auch mit VLC (Auswahl “Open Capture Device” und dort “Video for Linux 2”) angesehen werden und Bilder können auch mit xsane von der WebCam geholt werden. Die beiden Anwendungen fswebcam und mlpayer bieten nach meinen Erfahrungen mehr Möglichkeiten.