openSUSE 11.2 – UMTSmon mit Huawei UMTS USB-Stick einrichten

Das Netbook ist nicht nur zum Arbeiten für unterwegs konzipiert, sondern man kann damit auch über ein UMTS USB-Stick im Internet surfen und Emails abrufen. Die Einrichtung einer UMTS Verbindung unter openSUSE 11.2 ist nicht schwierig und lässt sich in wenigen Schritten einrichten.

Ich verwende ein Netbook Medion Akoya Mini E1210 und das Huawei UMTS USB-Stick E172 mit einem Branding von Vodafone. Jedoch als Internet-Provider habe ich Simyo gewählt. Da dieser ein kundenfreundlichen Tarif hat und keine Ports bzw. Dienste gesperrt sind.

Bevor wir UMTSmon benutzen können, müssen wir erst einige Vorarbeiten erledigen. Daher verwenden wir bei unseren Schritten die Konsole mit root-Rechten. Später benötigen wir die Konsole nicht mehr.

Für Besitzer eines Huawei UMTS USB-Stick ist der nachfolgende Schritt notwendig:
Zuerst installieren wir für den Huawei UMTS USB-Stick ein spezielles Package. Denn es sollte unter anderem verhindert werden, dass das UMTS-Stick als Storage erkannt und eingebunden wird.

Der Download des Package erfolgt über meinen Repo-Zweig. Diese Maßnahme halte ich für sinnvoll, weil man nie weiß, ob der Maintainer irgendwann das Repo schließt bzw. löscht. Der Link zu meinem Repo lautet:
http://download.opensuse.org/repositories/home:/Freespacer:/huawei_umtsmodem/
Wenn man dem Link folgt, wird man feststellen, dass das Package auch für openSUSE 11.0 und 11.1 gebaut wurde, falls jemand ältere openSUSE-Systeme verwendet.

Installation des Packages unter openSUSE 11.2 (32-bit):

zypper in http://download.opensuse.org/repositories/home:/Freespacer:/huawei_umtsmodem/openSUSE_11.2/i586/huawei_umtsmodem-1.0.0-2.1.i586.rpm

Installation des Packages unter openSUSE 11.2 (64-bit):

zypper in http://download.opensuse.org/repositories/home:/Freespacer:/huawei_umtsmodem/openSUSE_11.2/x86_64/huawei_umtsmodem-1.0.0-2.1.x86_64.rpm

(Falls sich die Links kurzfristig geändert haben, dann hinterlasst mir bitte ein Kommentar. Ich werde es schnellstmöglich abändern. Danke.)

Als nächstes müssen wir unseren aktuellen Benutzer der Gruppe dialout und uucp zuordnen. (username) ist mit dem aktuellen Benutzername zu ersetzen:

usermod -A dialout,uucp (username)

Anschließend setzen wir noch die korrekten Rechte für die Programme pppd und usb_modeswitch:

chown root:root `which pppd` && chmod u+s `which pppd`
chown root:root `which usb_modeswitch` && chmod u+s `which usb_modeswitch`

Jetzt müssen alle laufenden Programme geschlossen und die Desktop-Umgebung neugestartet werden, damit die zugeordneten Gruppen beim Benutzer in der neuen Sitzung wirksam werden. Dies kann man sehr einfach mit der Tastenkombination STRG+ALT+Rücklöschtaste (2x Rücklöschtaste tippen) auslösen.

Für Besitzer eines Huawei UMTS USB-Stick ist der nachfolgende Schritt abermals notwendig:
Wir öffnen erneut die Konsole. Aber hier arbeiten wir nicht mehr mit root, sondern mit dem derzeitigen Benutzer und lassen uns die USB Device-Schnittstellen anzeigen.

ll /dev/ttyUSB*

Bei mir kommt folgende Ausgabe:

crw-rw---- 1 root dialout 188, 0  9. Dez 00:00 /dev/ttyUSB0
crw-rw---- 1 root dialout 188, 1  9. Dez 00:00 /dev/ttyUSB1

Der erste Eintrag mit 188, 0 ist der PPP-Port, der zweite Eintrag 188, 1 ist der AT-Port. Beim Erststart von UMTSmon müssen wir ihm genau diese Devices mitteilen, damit er weiß, wie er das Modem ansprechen kann.

Mit dieser Erkenntnis starten wir nun UMTSmon mit folgendem Befehl:

# umtsmon -s <at>[,ppp]
umtsmon -s /dev/ttyUSB1,/dev/ttyUSB0

Jetzt kann man ein Profil nach den Vorgaben des Providers erstellen. Wichtig ist hier der APN (Access Point Name) und die Zugangsdaten. Nachdem diese Vorarbeit erledigt ist, kann man später UMTSmon ohne Probleme über das Menü starten.

Viel Spaß beim Surfen. ;-)

openSUSE 11.2 – Überflüssige RPM-Packages aufspüren

Das Kommandozeilen-Installationstool zypper ist sehr mächtig. Jedoch hat es leider auch eine Schwäche. Es kann bei der Deinstallation eines Package nicht automatisch weitere verwaiste Packages deinstallieren. (Diese Funktionalität ist für die nächste openSUSE Version geplant)

Im Repo von Packman gibt es ein Tool namens rpmorphan. Dieses Tool spürt verwaiste Packages auf und bietet diese ggfs. zur Deinstallation an. Das Packman-Repo lässt sich leicht über die YaST2-Repoverwaltung hinzufügen. Eine Anleitung gibt es hier: http://de.opensuse.org/YaST/Software/Community_Repositories

Nachdem man Packman eingebunden hat, kann man rpmorphan über YaST2 oder per zypper in der Konsole installieren:

zypper in rpmorphan

Das Tool kann man im GUI-Modus wahlweise über den Menü-Eintrag oder in der Konsole starten (letzteres sollte man besser vorziehen):

rpmorphan -gui

Es lässt sich auch ohne GUI-Modus ausführen, in dem man den Schalter -gui weglässt.

rpmorphan ohne weitere Schalter (Voreinstellung: Libraries) listet alle verwaisten Library-Packages auf und man kann hier nochmal die einzelnen Packages durchgehen, die man löschen kann/will/möchte. Hier ist ein wenig Vorsicht geboten. Da die Auswahl auch Entwicklungspakete und Codecs betreffen, sollte man selber nochmal abwägen, ob das Package doch noch gebraucht wird.

Wir können aber auch unsere Auswahl der verwaisten Packages mit folgenden Schaltern beeinflussen:

-guess-perl
    berücksichtigt Perl-Module
-guess-python
    berücksichtigt Python-Module
-guess-pike
    berücksichtigt Pike-Module
-guess-ruby
    berücksichtigt Ruby-Module
-guess-common
    berücksichtigt gemeinsame Packages
-guess-data
    berücksichtigt Packages, in der Daten für ein Package enthalten ist.
-guess-doc
    berücksichtigt Packages, in der Dokumentationen vorkommen.
-guess-dev
    berücksichtigt Development-Packages
-guess-lib
    berücksichtigt Library-Packages (Voreinstellung)
-guess-all
    berücksichtigt alle oben genannten Packages

z.B. mit folgendem Befehl können wir rpmorphan alle verwaisten Perl-, Python- und Ruby-Module auflisten lassen:

rpmorphan -guess-perl -guess-python -guess-ruby

Wenn man z.B. innerhalb der letzten 2 Tagen ein Package mit all seinen Abhängigkeiten installiert hat, kann man auch mit diesem Schalter -install-time das Zeitfenster definieren:

rpmorphan -guess-all -install-time 2

Auch die Auflistung in einem Zeitfenster, in dem auf eine Datei eines Packages nicht zugegriffen wurde, ist auch hier -access-time möglich. Jedoch muss man vorweg warnen, dass es je nach Anzahl der installierten Packages eine Menge Daten auswerten muss und dadurch eine Weile dauern kann. In diesem Beispiel ist der letzte Zugriff vor 30 Tagen:

rpmorphan -guess-all -access-time 30

Hat man einige Packages ausfindig gemacht, die man löschen will. Dann kann man dies mit zypper bequem ein oder mehrere Packages anhand der Package-Namen löschen:

zypper rm (package)

Welche Schalter es noch gibt, lässt sich wie folgt abrufen:

rpmorphan -help

openSUSE 11.2 – Weitere Nameserver eintragen

Traditionsgemäß hatte man in die Datei /etc/resolv.conf mehrere Nameserver eingetragen. Jedoch ist ein direktes Bearbeiten dieser Datei nicht empfohlen, weil in openSUSE 11.2 eigene Konfigurationstool bzw. der NetworkManager die Einstellungen in /etc/resolv.conf überschreiben kann.

Ein Blick in die Datei /etc/resolv.conf sagt eigentlich schon alles:

### /etc/resolv.conf file autogenerated by netconfig!
#
# Before you change this file manually, consider to define the
# static DNS configuration using the following variables in the
# /etc/sysconfig/network/config file:
#     NETCONFIG_DNS_STATIC_SEARCHLIST
#     NETCONFIG_DNS_STATIC_SERVERS
#     NETCONFIG_DNS_FORWARDER
# or disable DNS configuration updates via netconfig by setting:
#     NETCONFIG_DNS_POLICY=''
#
# See also the netconfig(8) manual page and other documentation.
#
# Note: Manual change of this file disables netconfig too, but
# may get lost when this file contains comments or empty lines
# only, the netconfig settings are same with settings in this
# file and in case of a "netconfig update -f" call.
#
### Please remove (at least) this line when you modify the file!

Jetzt denkt man gerade, dass man doch einfach in YaST2 in die Netzwerkeinstellungen geht und dort die Nameserver einträgt. Weit gefehlt, da die Option „Benutzergesteuert mithilfe von NetworkManager“ von vornherein aktiviert ist, können auch keine weiteren Nameserver eingetragen werden.

Der NetzwerkManager ist standardmäßig in KDE 4.3.x im „Systemabschnitt der Kontrollleiste“ geladen und läßt sich dort bequem per Rechtsklick über „Verbindungen verwalten“ konfigurieren und weitere Nameserver im jeweiligen Konfigurationsabschnitt hinzufügen.

Wenn man aber ein externes Einwahlprogramm wie UMTSmon verwendet, dann nutzen diese Einstellungen im NetworkManager rein gar nichts. Also, muss man hier zum Teil händisch vorgehen.

1.  YaST2-Kontrollzentrum starten.

2. Im YaST2-Kontrollzentrum “Editor für /etc/sysconfig” starten.

3. Auf der linken Seite den Pfad folgen:
Network / General / NETCONFIG_DNS_STATIC_SERVERS

4. Die IP-Adresse des Nameservers eintragen. Falls es mehrere Nameserver sind, bitte mit Leerzeichen trennen und abschließend auf “OK” klicken (Evtl. die Eingabe nochmal bestätigen lassen)

Nach dieser Arbeit wird die Datei /etc/resolv.conf automatisch aktualisiert und die Nameserver sind nun fest eingetragen.

openSUSE 11.2 – YaST2 soll nach der Installation wieder die Softwareauswahl anzeigen

Ein weiterer Tipp erwartet euch wieder. :wink: Einigen von uns ist es sicherlich aufgefallen, dass sich das Fenster von YaST2 nach einer Softwareinstallation schließt. Unter Umständen kann es nervig sein, weil man evtl. das eine oder andere Paket noch nachinstallieren möchte bzw. man auch in die Dateiliste schauen kann, was eigentlich alles installiert wurde.

Um diesen kleinen Missstand zu beseitigen, gibt es eine Einstellung in der YaST2 aufgefordert wird, die Softwareauswahl nach der Installation erneut anzeigen zu lassen.

Hier die Step-By-Step Anleitung:

1.  YaST2-Kontrollzentrum starten.

2. Im YaST2-Kontrollzentrum „Editor für /etc/sysconfig“ starten.

3. Auf der linken Seite den Pfad folgen:
System / Yast2 / GUI / PKGMGR_ACTION_AT_EXIT

4. Im DropDown-Feld „restart“ wählen und auf „OK“ klicken (Evtl. die Eingabe nochmal bestätigen lassen)

openSUSE 11.2 – proprietären Grafik-Treiber ATI Catalyst 9.11 als RPM installieren

Hinweis: Dieser Artikel ist veraltet. Ein neuer Artikel befindet sich hier: openSUSE 11.2 – proprietären Grafik-Treiber ATI Catalyst 9.12 als RPM installieren

Als ich den proprietären ATI-Treiber als RPM bauen und installieren wollte, bricht der Bau der RPM immer ab bzw. wird mit einem Absturz des Installers quittiert. :evil: Nach einiger Zeit hatte ich den Bogen raus, wie man diesen RPM doch bauen und auch installieren kann. Es gibt ein Fehler in einem Skript des Installers,  der für den Bau der RPM zuständig ist. Er konnte die kompilierten Dateien nicht mehr finden und folglich auch keine RPM bauen. :roll:

Hier die Step-By-Step Anleitung für die Konsole für den 32/64-bit System:

1. den Installer des proprietären Treiber von ATI herunterladen:
http://support.amd.com/us/gpudownload/linux/Pages/radeon_linux.aspx?type=2.4.1&product=2.4.1.3.5&lang=English

2. den Inhalt vom Installer in ein Verzeichnis auspacken:

sh ./ati-driver-installer-9-11-x86.x86_64.run --extract ati-9.11

3. Eine Patch-Datei namens „ati-9.11.patch“  mit folgendem Inhalt erstellen:

diff -rup ati-9.11-orig/packages/SuSE/ati-packager.sh ati-9.11/packages/SuSE/ati-packager.sh
--- ati-9.11-orig/packages/SuSE/ati-packager.sh 2009-11-12 07:07:59.000000000 +0100
+++ ati-9.11/packages/SuSE/ati-packager.sh      2009-12-05 14:47:05.932631343 +0100
@@ -91,7 +91,7 @@ s!%ATI_DRIVER_BUILD_ROOT!${TmpDrvFilesDi
 END_SED_SCRIPT

     #Build the package
-    rpmbuild -bb --root ${TmpDrvFilesDir} --target ${ARCH} ${TmpPkgSpec} > ${TmpPkgBuildOut} 2>&1
+    rpmbuild -bb --buildroot ${TmpDrvFilesDir} --target ${ARCH} ${TmpPkgSpec} > ${TmpPkgBuildOut} 2>&1

     #Retrieve the absolute path to the built package
     if [ $? -eq 0 ]; then

Update: Es wird empfohlen die Patch-Datei direkt herunterzuladen: ati-9.11.patch

Hier der Weg über die Konsole:

wget http://www.sebastian-siebert.de/downloads/ati-9.11.patch

4. Patchdatei anwenden:

patch -p0 <ati-9.11.patch

5. In den ausgepackten Verzeichnis wechseln:

cd ati-9.11

6a. Den Bau der RPM manuell anstoßen (32-bit):

./ati-installer.sh 8.671 --buildpkg SuSE/SUSE112-IA32

6b. Den Bau der RPM manuell anstoßen (64-bit):

./ati-installer.sh 8.671 --buildpkg SuSE/SUSE112-AMD64

7. das frisch gepackte RPM installieren:

rpm -ihv fglrx64_7_4_0_SUSE112-8.671*.rpm

Damit dürfte jetzt wieder der Treiber funktionieren und die 3D-Effekte unter Linux etwas ausreizen. :wink:

Ich bin für Kommentare und weitere Tipps dankbar. :wink: