Home / LinuxUser / 2001 / 09 / Dr. Linux

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

War doch klar...
(233 Punkte bei 16 Stimmen)
Re: War doch klar...
(162 Punkte bei 6 Stimmen)
Re: Skype für 64-Bit-Prozessor u. Suse 12.1
(161 Punkte bei 4 Stimmen)
Kubuntu verliert Finanzierung
(130 Punkte bei 4 Stimmen)
Offen fürs Geschäft
(80 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Fernsehdoktor und Kernprobleme

Dr. Linux

01.09.2001 Mit dem Erscheinen neuer Linux-Distributionen häuft sich in den Newsgroups die Frage: "Was bedeutet eigentlich char-major-[1…255]?" Die Antwort auf diese und andere Fragen gibt der folgende Artikel.

Dr. Linux:

Komplizierte Organismen, wie Linux-Systeme es nun einmal sind, haben so ihre ganz eigenen Wehwehchen. Dr. Linux: beobachtet die Patienten in den Linux-Newsgruppen, stellt an dieser Stelle Rezepte für aktuelle Probleme aus und alternative Heilmethoden vor.

Welche Library?

Ich wollte auf meinem System ein neues Netscape installieren, bekomme aber Fehlermeldungen über fehlende Shared Libraries:

$ ./netscape-installer
 error while loading shared libraries: cannot open shared library: cannot
 load shared object file: No such file or directory

Wie bekomme ich heraus, welche Bibliotheken gebraucht werden?

Dr. Linux: Wenn Anwender Schwierigkeiten mit fehlenden Shared Libraries bekommen, sind folgende Problem-Konstellationen denkbar:

  • Sie installieren eine Programm-Version, die so neu ist, dass die benötigte Bibliotheksversion (noch) nicht im System verhanden ist.
  • Im Gegenteil kann das Programm so veraltet sein, dass Sie die zugehörigen Library-Versionen auf dem aktuellen System nicht finden.
  • Auch der Fall, dass die fehlende Bibliothek tatsächlich nicht installiert ist, tritt auf. Um festzustellen, welche Bibliotheken fehlen, benutzt man den Befehl ldd Programm. Das nicht startende Programm geben Sie dabei am besten mit Pfadnamen an.

Wenn Sie die ldd-Anfrage auf die Datei ./netscape-installer richten, führt das Ergebnis allerdings nicht sofort ans Ziel:

not a dynamic executable (nicht dynamisch ausführbar)

Gehen wir also etwas systematischer vor. Ein Blick ins Installer-Verzeichnis gibt folgende Auskunft:

perle@maxi:~/netscape-installer > ls -l
 total 172
 -rw-r--r--    1 perle    users        4725 Nov 22  2000 README
 -rw-r--r--    1 perle    users        7671 Dec  2  2000 config.ini
 -rw-r--r--    1 perle    users        2206 Dec  2  2000 installer.ini
 -rwxr-xr-x    1 perle    users       19308 Nov 22  2000 license.txt
 -rwxr-xr-x    1 perle    users        1521 Nov 22  2000 netscape-installer
 -rwxr-xr-x    1 perle    users      126032 Nov 22  2000 netscape-installer-bin

Zunächst einmal wollen wir wissen, um was für Dateien es sich handelt. Dazu benutzen wir das Kommando file, das Dateitypen identifiziert und das Ergebnis gleich auf der Kommandozeile ausgibt. Der Aufruf ist denkbar einfach:

perle@maxi:~/netscape-installer > file netscape-installer
 netscape-installer: Bourne shell script text

Es handelt sich bei dieser Datei also nicht um ein Binärprogramm, sondern um ein Shell-Skript, das den eigentlichen, übersetzten Netscape-Code erst startet. Dieser versteckt sich in netscape-installer-bin, was uns das Kommando file bestätigt:

perle@maxi:~/netscape-installer > file netscape-installer-bin
 netscape-installer-bin: ELF 32-bit LSB executable, Intel 80386, version 1,
 dynamically linked (uses shared libs), stripped

Dass sich hinter ausführbaren Dateien ein Skript verbirgt, dessen Inhalt Sie sich mit einem beliebigen ASCII-Editor ansehen können, kommt recht häufig vor. Bei der Auflistung eines Verzeichnisses geht jedoch durchaus nicht sofort eindeutig hervor, ob es sich um ein Skript bzw. ein Binärprogramm handelt, da Dateinamenerweiterung wie z. B. .bat für Linux-Skripte unüblich sind. Nur manchmal werden in der Skriptsprache Perl geschriebene Programme mit .pl und Shell-Skripte mit .sh gekennzeichnet.

Bleibt noch zu demonstrieren, was der Befehl ldd ausgibt, wenn er auf ein kompiliertes Programm angewendet wird:

perle@maxi:~ > ldd ~/netscape-installer/netscape-installer-bin
         libgtk-1.2.so.0 => /usr/lib/libgtk-1.2.so.0 (0x40025000)
         libgdk-1.2.so.0 => /usr/lib/libgdk-1.2.so.0 (0x40155000)
         libgmodule-1.2.so.0 => /usr/lib/libgmodule-1.2.so.0 (0x4018c000)
         libglib-1.2.so.0 => /usr/lib/libglib-1.2.so.0 (0x4018f000)
         libdl.so.2 => /lib/libdl.so.2 (0x401b4000)
         libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x401b8000)
         libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x401c6000)
         libnsl.so.1 => /lib/libnsl.so.1 (0x402a9000)
         libutil.so.1 => /lib/libutil.so.1 (0x402bf000)
         libresolv.so.2 => /lib/libresolv.so.2 (0x402c2000)
         libm.so.6 => /lib/libm.so.6 (0x402d5000)
         libstdc++-libc6.1-1.so.2 => /usr/lib/libstdc++-libc6.1-1.so.2 (0x402f4000)
         libpthread.so.0 => /lib/libpthread.so.0 (0x4033c000)
         libc.so.6 => /lib/libc.so.6 (0x40352000)
         libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x4046f000)
         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

Fehlt auf Ihrem System z. B. die libm.so.6, so liefert ldd die Meldung => not found anstelle des Pfades zur Library:

[…]

         libresolv.so.2 => /lib/libresolv.so.2 (0x402c2000)
         libm.so.6 => not found
         libstdc++-libc6.1-1.so.2 => /usr/lib/libstdc++-libc6.1-1.so.2 (0x402f4000)[…]

Ich glotz' TV

Ich benutze Xawtv zum Fernsehen auf meinem Linux-System. Nun hätte ich die TV-Programme gerne in einer bestimmten Reihenfolge im Channel Window angezeigt. (Das ist das Fenster, das die verfügbaren Programme zur Auswahl per Mausklick präsentiert.) Mit dem Channel Editor ist das eine mühselige Arbeit, da alle Details wie Kanäle und Sendernamen nochmal eingegeben werden müssten. Eine Konfigurationsdatei namens Xawtv.config o. ä. kann ich im System nicht finden.

Abbildung 1: Xawtv im Einsatz

Dr. Linux: Wenn ein Linux-Anwender eine Software individuell konfiguriert hat, liegt die zugehörige Konfigurationsdatei (fast) immer in seinem Home-Verzeichnis. Normalerweise werden solche Dateien und Verzeichnisse als Dot-Dateien angelegt. Das sind Dateien/Verzeichnissse, deren Namen ein Punkt (.) vorangestellt ist. Sie werden auch als versteckte Dateien bezeichnet, da sie in Datei-Managern, aber auch von ls nicht ohne Weiteres angezeigt werden.

Wenn Sie auf einer Kommandozeile den Befehl ls ("(auf)listen") mit der Option a wie alle absetzen, bekommen Sie auch die Punkt-Dateien präsentiert. Das Flag l liefert zusätzlich eine lange Ausgabe, die mehr Informationen bietet.

perle@maxi:~ > ls -al 
 total 1876
 drwx——   44 perle    users        4096 Jul  2 16:25 .
 drwxr-xr-x    7 root     root         4096 Jun 26 14:11 ..[…] 

 -rw-r--r--    1 perle    users        1090 Jul  2 15:06 .xawtv[…] 

Abbildung 2: Rechts zeigt der Konqueror versteckte Dateien an, links nicht

Natürlich gibt es auch bei allen Datei-Managern eine Möglichkeit, sich die versteckten Dateien anzeigen zu lassen. Im Konqueror von KDE 2.1.x geht das beispielsweise über Ansicht / Versteckte Dateien anzeigen (Abbildung 2).

Die Konfigurationsdatei für Xawtv heißt schlicht .xawtv und lässt sich in einen beliebigen Editor laden.

Ihr Aufbau ist einfach und übersichtlich. Hinter einigen Konfigurationanweisungen stehen Sender und Sendeplätze, die Sie bereits eingerichtet haben, untereinander. Mittels Editor-Funktionen wie Ausschneiden und Einfügen erledigen Sie das Ändern der Programm-Reihenfolge sehr schnell.

Bei dieser Gelegenheit lassen sich auch alle "überflüssigen" Sender auskommentieren. (Listing 1 zeigt ein Beispiel.)

Wenn Sie diese irgendwann doch wieder aktivieren möchten, entfernen Sie einfach das Kommentarzeichen (#), und der Sender steht zur Verfügung, ohne dass Sie einen lästigen Suchlauf starten bzw. Xawtv neu konfigurieren müssen.

Listing 1

Auszug aus der

~/.xawtv
[…]

 [defaults]
 norm = PAL
 input = Television
 capture = over[…]

 [BBC]
 channel = SE14
 [CNN]
 channel = SE12
 # Kommentare, denen ein # vorangestellt
 # ist, werden nicht weiter beachtet.
 #
 #[DSF]
 #channel = S23
 [PHOENIX]
 channel = SE19
 [n-tv]
 channel = SE5
 [N24]
 channel = S25[…]
Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

580 Hits
Wertung: 0 Punkte (0 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 03/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Duden Korrektor unter 64-Bit
Duden Korrektor unter 64-Bit
Tim Schürmann, 06.02.2012 10:36, 0 Kommentare

Der Duden Korrektor bietet eine äußerst nützliche Rechtschreib- und Grammatikkorrektur für LibreOffice und bringt in der aktuellen Version 8 e...

Aktuelle Fragen

Ubuntu 11.10 Compiz 3D Cube flackern
Moritz Obenauer, 12.02.2012 12:25, 0 Antworten
Hallo! Ich habe Ubuntu 11.10 mit Unity und den Compiz 3D Cube ein gerichtet. Er funktioniert...
Suse 12.1 Bootvorgang bleibt seit Update stehen
Wimpy *, 12.02.2012 09:22, 2 Antworten
Seit Update auf Kernel 3.1.9-1.4-desktop i686 bleibt der Bootvorgang stehen. Es erscheint der gr...
N24 Stick (Huawei E173) und Ubuntu 11.04
Patrick Obenauer, 11.02.2012 11:54, 1 Antworten
Hallo zusammen! Ich benutze einen alten Laptop, der mit Ubuntu 11.04 flott und problemlos läuft....
Wie kann man beim Einsatz von Compiz die Fenster-Dekoration einstellen?
GoaSkin , 10.02.2012 20:12, 0 Antworten
Hallo, ich nutze Linux Mint mit dem Gnome-Derivat Mate. Da die Distribution Compiz nicht autom...
rndc reload zone - failed bad zone
Ludwig jun. B., 06.02.2012 16:08, 2 Antworten
Schönen guten Tag, ich habe folgendes Problem. Immer wenn ich folgendes Kommando ausführen bek...