Teil V Hardware unter Linux 289 Kapitel 10 Hardware rund um den Linux-Rechner 10.1 Vorbemerkung Mittlerweile ist es möglich, die meisten Hardware-Komponenten mit mehr oder weniger Aufwand in ein Linux-System zu integrieren. Wie dies im Einzelnen zu bewerkstelligen ist und welche Software zur Verfügung steht, kommt in diesem Kapitel zur Sprache. Zur Problematik des Druckens vgl. Ka- pitel 12 auf Seite 329, des Faxens vgl. Abschnitt 6.10 auf Seite 206 und zur Benutzung von ISDN-Geräten vgl. Abschnitt 6.2 auf Seite 169. PCMCIA- Hardware und IrDA-Einrichtung werden in Kapitel 11 auf Seite 313 erläu- tert. 10.2 Steckkarten In einem Standard-PC werden hauptsächlich ISA- ( Industry Standard Ar- chitecture") und PCI- ( Peripheral Component Interconnect") Bus basierte Steckkarten eingesetzt. Der AGP ( Accelerated Graphics Port") stellt eine gewisse Ausnahme dar, da Geräte an diesem Port auch auf dem PCI-Bus sichtbar sind. Sie werden logisch genauso behandelt wie PCI-Bus Karten. ­ PCMCIA-Bus Karten fin- det man vor allem in portablen Rechnern, wie Laptops und Notebooks. Diese Karten und deren Konfiguration werden in Kapitel 11 auf Seite 313 beschrie- ben. 10.2.1 ISA- und PCI-Karten Im Folgenden sollen nun ISA- und PCI-Buskarten genauer betrachtet werden. Anschließend wird die Konfiguration dieser Karten am Beispiel von Sound- karten erklärt. ISA-Karten Die ISA-Karte ist die älteste Form von PC-kompatiblen Steckkarten. Der Bus ist 8 oder 16 Bit breit und wird mit max. 8 MHz getaktet. Viele Mainboards bieten die Möglichkeit, den ISA-Bus höher zu takten ­ das führt aber oft zu Problemen. ISA-Bus Karten können in drei Kategorien unterteilt werden: 291 10. Hardware rund um den Linux-Rechner Legacy-Cards: Diese Karten müssen vollständig von Hand konfiguriert werden. Die Ressourcen, wie IO-Adressen, Interrupts und DMA-Kanäle müssen vom Benutzer anhand von Steckbrücken oder Mikroschaltern auf den Karten eingestellt werden. Der Benutzer muss auch selbst da- für sorgen, dass Ressourcen, wie z. B. IRQ oder DMA-Kanal nicht von zwei oder sogar mehreren Karten gleichzeitig verwendet werden. Die Konfiguration derartiger Karten gestaltet sich daher oft etwas schwierig. Jumperless-Cards: Jumperless-Cards bieten gegenüber der ersten Generati- on von ISA-Karten den Vorteil, dass die Einstellung der Ressourcen nicht mehr über Steckbrücken erfolgt, sondern über ein spezielles Konfigurati- onsprogramm erledigt wird. Dieses Programm ist aber meist nur für DOS verfügbar und kann daher unter Linux nicht verwendet werden. PnP-Cards: Plug-and-Play-Cards sind die logische Fortentwicklung der Jumperless-Cards. Die Karten enthalten Daten über ihre Konfiguration und eine Liste an möglichen Konfigrationen. Ein spezielles Programm oder ein Treiber kann nun die PnP-Karten im System abfragen und alle Karten so konfigurieren, dass sie sich gegenseitig nicht beeinflussen. Solange eine Karte nicht konfiguriert wurde, ist sie für das System fak- tisch nicht vorhanden. Unter Linux wird zur Konfiguration von PnP- Karten das Paket isapnp der Serie ap verwendet. Das Paket stellt die beiden Programme pnpdump und isapnp zur Verfügung. Wie werden PnP-Karten mit den isapnp-Tools aktiviert? Gehen Sie folgendermaßen vor: * Melden Sie sich als Benutzer `root' beim System an. * Falls Sie im Verzeichnis /etc schon eine Datei isapnp.conf vorfin- den, sollten Sie diese zuerst sichern: erde:/ # mv /etc/isapnp.conf /etc/isapnp.conf.bak * Erzeugen Sie mit dem Aufruf erde:/ # pnpdump -c > /etc/isapnp.conf die Datei /etc/isapnp.conf. Der Parameter -c sorgt dafür, dass pnpdump die Ausgabedatei schon derart vorbereitet, dass die PnP-Geräte gleich aktiviert werden. * Mit dem Aufruf erde:/ # isapnp /etc/isapnp.conf aktivieren Sie die PnP-Karten in Ihrem Rechner. ­ Unter SuSE Linux wird diese Aktivierung automatisch bei jedem Systemstart ausgeführt. Mögliche Fehlerquellen Symptom: pnpdump liefert eine Ausgabe der Art: "No boards found". Es kann auch vorkommen, dass eine oder mehrere der installierten ISA- PnP-Karten nicht erkannt werden. Mögliche Erklärungen: * Sie haben keine ISA-PnP-Karte in Ihrem System installiert: Überprü- fen Sie, welche Karten in Ihrem System installiert sind und lesen Sie deren Dokumentation. Fragen Sie ggf. den Händler, von dem Sie Ihren Computer erstanden haben, nach den installierten Karten. 292 10.2. Steckkarten * Die Karte(n) ist/sind defekt: überprüfen Sie den richtigen Sitz der Kar- ten in den Steckplätzen. Testen Sie das richtige Funktionieren der Kar- ten unter einem anderen Betriebssystem. * Es gibt Karten, die entweder als ISA-PnP-Karte betrieben werden kön- nen oder denen feste Ressourcen zugewiesen werden können (Bei- spiel: einige 10 MBit NE2000 ISA-Ethernetkarten). Meist kann mit ei- nem DOS-Programm zwischen den beiden Modi hin- und hergeschal- tet werden. Je nach Konfiguration solcher Karten tauchen diese nicht in der Ausgabe von pnpdump auf. * Einige wenige ISA-PnP-Karten lassen sich augenscheinlich nicht zu- sammen mit anderen ISA-PnP-Karten in einem System betreiben. Es ist dann jeweils nur eine der Karten in der Ausgabe von pnpdump sichtbar. Eventuell lässt sich in einem solchen Fall eine der Karten so konfigurieren (z. B. über Jumper direkt auf der Karte), dass sie nicht mehr als ISA-PnP-Karte betrieben wird, sondern fest eingestellte Res- sourcen verwendet. * Es scheint (sehr vereinzelt) Karten zu geben, die sich nach dem Aufruf von pnpdump einen Reset durchführen. Handelt es sich hierbei z. B. um eine SCSI-Karte und hängt die Root-Partition an diesem Gerät, so kann es zum Absturz kommen. Tritt dieses Problem bei Ihnen auf, so müssen Sie die Karte (sofern möglich) so konfigurieren, dass sie nicht mehr als ISA-PnP-Gerät arbeitet. Oder Sie verzichten auf die Initialisierung der Karte unter Linux ganz und booten das System mit Hilfe von loadlin; in diesem Fall ist die Karte bereits initialisiert. Symptom: Sie erhalten bei der Ausführung des Befehls isapnp oder beim Booten eine Fehlermeldung der Art: * LD setting failed, this may not be a problem. * Try adding (VERIFYLD N) to the top of your script ** Error occured requested `LD2` on or around line 319 * --- further action aborted Lösung: Folgen Sie dem Ratschlag der Fehlermeldung und fügen Sie am Beginn der /etc/isapnp.conf die Zeile (VERIFYLD N) ein, also z. B.: # [...] # (DEBUG) (VERIFYLD N) (READPORT 0x0203) (ISOLATE) (IDENTIFY *) # [...] Symptom: Sie erhalten bei der Ausführung des Befehls isapnp oder beim Booten eine Meldung der Art: 293 10. Hardware rund um den Linux-Rechner [...] /etc/isapnp.conf:66 -- Fatal - resource conflict allocating 16 bytes of IO at 220 (see /etc/isapnp.conf) /etc/isapnp.conf:66 -- Fatal - IO range check attempted while device activated /etc/isapnp.conf:66 -- Fatal - Error occurred executing request ' ' --- further action aborted Lösung: Sie haben wahrscheinlich einen Konflikt zwischen den in der /etc/isapnp.conf ausgewählten Werten und den in Ihrem System bereits verwendeten Ressourcen. Bitte gleichen Sie die /etc/isapnp. conf mit den unter /proc befindlichen Informationen zu den vergebe- nen Ressourcen ab; dies sollte nicht notwendig sein, wenn Sie pnpdump mittels der Option -c die Zuordnung vornehmen lassen. In manchen Fällen kann es zu Schwierigkeiten kommen, wenn im Se- tup des Rechners die automatische Konfiguration von ISA-PnP Ressour- cen durch das BIOS eingeschaltet ist. Schalten Sie diese bitte ggf. ab. Da die Konfiguration mittels pnpdump/isapnp vorgenommen wird, ist diese Setup-Option nicht notwendig. Bei weiterreichenden Problemen sollten Sie die vollständige Dokumentation zum Paket isapnp zu Rate ziehen. Diese finden Sie auf Ihrem System im Verzeichnis /usr/doc/packages/isapnp. Wir werden am Ende dieses Teilabschnittes die Konfiguration einer PnP-Karte anhand einer Soundkarte nochmals im Detail betrachten. PCI-Karten PCI-Bus Karten benötigen normalerweise keinerlei Konfiguration durch den Benutzer. Bei Verabschiedung des PCI-Bus Standards wurde versucht, alle Mängel der alten Bus-Systeme zu beseitigen. Daher wurde auch eine sinnvol- le Autokonfiguration der Karten vorgesehen. Jede PCI-Karte wird beim Start des Rechners durch das BIOS des Rechners aktiviert. Der Benutzer kann die Verteilung der Interrupts oftmals durch Einstellungen im Rechner-Bios be- einflussen. Linux liest beim Start die Konfiguration der PCI-Geräte direkt aus dem PCI-Bios aus und verwendet fortan dieses Daten für jegliche Information über das PCI-Subsystem. Sie können sich über den Befehl erde:/ # lspci -tv einen Liste der von Linux erkannten Geräte am PCI-Bus auflisten lassen: Im folgenden Teilabschnitt werden wir auch eine PCI-Soundkarte konfigurie- ren. 10.3 Soundkarten Auf dem Markt werden derzeit hauptsächlich zwei Typen von Soundkarten angeboten. ISA- und PCI-Soundkarten, wobei letztere die ISA-Karten im- 294 10.3. Soundkarten -[00]-+-00.0 Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge +-01.0-[01]----00.0 Nvidia Corporation Riva TNT +-04.0 Intel Corporation 82371AB PIIX4 ISA +-04.1 Intel Corporation 82371AB PIIX4 IDE +-04.2 Intel Corporation 82371AB PIIX4 USB +-04.3 Intel Corporation 82371AB PIIX4 ACPI +-06.0 Adaptec 7890 09.0 Digital Equipment Corporation DEC- chip 21140 [FasterNet] Ausgabe 10.2.1: Ausgabe des Befehls lspci -tv mer mehr ersetzen. Es ist damit zu rechnen, dass in einiger Zeit keine ISA- Soundkarten mehr produziert werden. Unter SuSE Linux bieten sich derzeit zwei Lösungen zur Unterstützung von Soundkarten an. Einerseits können Sie das Paket opso bzw. das Paket op- sod_up (Demo) oder für Mehrprozessor-Maschinen das Paket opso_smp bzw. das Paket opsodsmp (Demo) der Serie pay installieren. Alternativ können Sie auch die Kernel-basierten Module zur Sound-Unterstützung nut- zen. 10.3.1 OSS und Demo-Versionen von OSS Diese Pakete eignen sich ideal zur Konfiguration von ISA- und ISA-PnP- Soundkarten. Das in unserer Distribution enthaltene Paket opso bzw. das Paket opso_smp ist für SuSE-Kunden bereits registriert und somit voll funk- tionsfähig. Das Paket opsod_up bzw. das Paket opsod_smp hingegen sind noch nicht freigeschaltet und auf 20 Minuten Laufzeit beschränkt. Um den Soundtreiber OSS zu nutzen, gehen Sie bitte folgendermaßen vor: * Installieren Sie eines der oben genannten Pakete der Serie pay mit YaST. * Wechseln Sie als Benutzer `root' in das entsprechende Instal- lationsverzeichnis unter /tmp und starten Sie dort das Programm oss-install: erde:/ # cd /tmp/opso-3.8.1z erde:/tmp/opso-3.8.1z # ./oss-install * Das Programm führt Sie durch die Installation des Treibers. * Nach Beenden des Programms können Sie mit dem Befehl erde:/tmp/opso-3.8.1z # soundon die OSS-Treiber laden und nutzen. Möchten Sie die Kernelmodule zur Soundunterstützung nutzen, so sollten Sie den folgenden Teilabschnitt beachten. 10.3.2 Wie werden Soundkarten unter Linux konfiguriert? Um eine Soundkarte unter Linux zu betreiben, sind folgende Schritte notwen- dig: * Identifizierung der Hardware: ­ Welche Karte soll konfiguriert werden (Hersteller, Chip auf der Karte)? 295 10. Hardware rund um den Linux-Rechner ­ Welche Art von Hardware (ISA, ISA-PnP, PCI) wird verwendet? * Konfiguration der Hardware: ­ Setzen der Jumper, bzw. Konfiguration über die isapnp-Tools. * Installieren/Laden des Treibers: ­ Laden der Kernel-Module , bzw. Starten des OSS-Soundtreibers . Gehen wir diese Schritte nun einzeln durch. * Identifizierung der Hardware: ­ ISA-Bus basierte Legacy Soundkarten Diese Karten sind noch verbreitet und vor allem in älteren Rechner- konfigurationen anzutreffen. Die Konfiguration erfolgt durch Setzen verschiedener Jumper auf den Karten selbst. Somit werden die Res- sourcen (IO-Adressen, IRQs und DMAs) eindeutig vergeben. ­ ISA-Bus basierte PnP Soundkarten Karten dieses Typs sind ähnlich den Legacy Karten, nur werden die Ressourcen (IO-Adressen, IRQs und DMAs) durch eine Software- schnittstelle konfiguriert. Man muss also keine Jumper mehr auf den Karten setzen. ­ PCI-Bus basierte Soundkarten PCI-Soundkarten lassen sich am einfachsten konfigurieren. Alle Steck- karten im PCI-Bus werden vom Rechner automatisch konfiguriert. Über Softwareschittstellen können nun die Treiber die Ressourcen der Karte erfragen. * Konfiguration der Hardware: ­ ISA-Bus basierte Legacy Soundkarten: Abhängig von den Fähigkeiten Ihrer Soundkarte müssen Sie verschie- dene Ressourcen konfigurieren. Im folgenden Beispiel wird eine Crea- tive Soundblaster 16 konfiguriert: I/O-Adressen Folgende I/O-Adressen sind für diese Karte relevant: Audio I/O Game Port MPU-401 FM-Synthese Es können nur die Adressen für Audio I/O (0x220, 0x240, 0x260 oder 0x280) und MPU-401 (0x300 oder 0x330) verändert werden. Die Adressen für Game-Port (0x200) und FM-Synthese (0x388) sind fest voreingestellt. Interrupts (IRQs) Die Karte benötigt einen eigenen Interrupt. Dieser kann auf 2, 5, 7 oder 10 festgelegt werden. DMA-Kanäle Möglich sind hier die Kanäle 0, 1, 3, 5, 6 oder 7. Voreingestellt ist hier DMA 1 für 8-Bit- und DMA 5 für 16-Bit-Datentransfer. 296 10.3. Soundkarten Verändern Sie also die Jumper auf der Soundkarte derart, dass die Kar- te keine Ressourcenkonflikte mit anderen Karten im Rechner verur- sacht. Merken Sie sich diese Einstellungen. ­ ISA-Bus basierte PnP-Soundkarten: Die Ressourcen dieser Karten müssen durch spezielle Software akti- viert werden. Die Verwendung von OSS erleichtert die Konfiguration von PnP-Karten ungemein, da dieses Programm automatisch nach den Karten sucht, und diese dann gleich konfiguriert. PnP-Karten können aber auch mit den Kernel-basierten Treibern ver- wendet werden. Dazu muss aber vor dem Laden der Kernel-Module die Karte aktiviert werden. Unter Linux findet hierzu das Programm- Paket isapnp Verwendung. Das Programm pnpdump erzeugt eine Konfigurationsdatei, die alle Ressourcen der im System verfügbaren PnP-Karten auflistet. Diese Liste kann anschließend noch von Hand editiert werden, um die Ressourcen der Karten anders zu verteilen. Durch den Aufruf erde:/ # pnpdump -c > /etc/isapnp.conf wird die Datei /etc/isapnp.conf erstellt. Im Folgenden wird eine Creative Soundblaster AWE64 aktiviert: # This is free software, see the sources for details. # This software has NO WARRANTY, use at your OWN RISK ## For details of this file format, see isapnp.conf(5) ## For latest information and FAQ on isapnp and pnpdump see: # http://www.roestock.demon.co.uk/isapnptools/ ## Compiler flags: -DREALTIME -DNEEDSETSCHEDULER -DABORT_ONRESERR ## Trying port address 0203 # Trying port address 020b # Board 1 has serial identifier 54 17 0e db 74 9e 00 8c 0e # (DEBUG) (READPORT 0x020b) (ISOLATE PRESERVE) (IDENTIFY *) (VERBOSITY 2) (CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING # Card 1: (serial identifier 54 17 0e db 74 9e 00 8c 0e) # Vendor Id CTL009e, Serial Number 386849652, checksum 0x54. # Version 1.0, Vendor version 2.0 # ANSI string -->Creative SB AWE64 Gold<-- ## Logical device id CTL0044 # Device supports vendor reserved register @ 0x38 # Device supports vendor reserved register @ 0x3a # Device supports vendor reserved register @ 0x3b # Device supports vendor reserved register @ 0x3c # Device supports vendor reserved register @ 0x3d ## Edit the entries below to uncomment out the configurati- on required. 297 10. Hardware rund um den Linux-Rechner # Note that only the first value of any range is given, this may be chan- ged if # required # Don't forget to uncomment the activate (ACT Y) when happy (CONFIGURE CTL009e/386849652 (LD 0 # ANSI string -->Audio<-- # Multiple choice time, choose one only ! # Start dependent functions: priority preferred # IRQ 5. # High true, edge sensitive interrupt (by default) (INT 0 (IRQ 5 (MODE +E))) # First DMA channel 1. # 8 bit DMA only # Logical device is not a bus master # DMA may execute in count by byte mode # DMA may not execute in count by word mode # DMA channel speed in compatible mode (DMA 0 (CHANNEL 1)) # Next DMA channel 5. # 16 bit DMA only # Logical device is not a bus master # DMA may not execute in count by byte mode # DMA may execute in count by word mode # DMA channel speed in compatible mode (DMA 1 (CHANNEL 5)) # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0220 # Maximum IO base address 0x0220 # IO base alignment 1 bytes # Number of IO addresses required: 16 (IO 0 (SIZE 16) (BASE 0x0220)) # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0330 # Maximum IO base address 0x0330 # IO base alignment 1 bytes # Number of IO addresses required: 2 (IO 1 (SIZE 2) (BASE 0x0330)) # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0388 # Maximum IO base address 0x0388 # IO base alignment 1 bytes # Number of IO addresses required: 4 (IO 2 (SIZE 4) (BASE 0x0388)) # End dependent functions (NAME "CTL009e/386849652[0]{Audio }") (ACT Y) )) ## Logical device id CTL7002 # Device supports vendor reserved register @ 0x39 # Device supports vendor reserved register @ 0x3a # Device supports vendor reserved register @ 0x3b # Device supports vendor reserved register @ 0x3c # Device supports vendor reserved register @ 0x3d ## Edit the entries below to uncomment out the configurati- on required. 298 10.3. Soundkarten # Note that only the first value of any range is given, this may be chan- ged if # required # Don't forget to uncomment the activate (ACT Y) when happy (CONFIGURE CTL009e/386849652 (LD 1 # Compatible device id PNPb02f # ANSI string -->Game<-- # Multiple choice time, choose one only ! # Start dependent functions: priority preferred # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0200 # Maximum IO base address 0x0200 # IO base alignment 1 bytes # Number of IO addresses required: 8 (IO 0 (SIZE 8) (BASE 0x0200)) # End dependent functions (NAME "CTL009e/386849652[1]{Game }") (ACT Y) )) ## Logical device id CTL0023 # Device supports vendor reserved register @ 0x38 # Device supports vendor reserved register @ 0x3a # Device supports vendor reserved register @ 0x3b # Device supports vendor reserved register @ 0x3c # Device supports vendor reserved register @ 0x3d ## Edit the entries below to uncomment out the configurati- on required. # Note that only the first value of any range is given, this may be chan- ged if # required # Don't forget to uncomment the activate (ACT Y) when happy (CONFIGURE CTL009e/386849652 (LD 2 # ANSI string -->WaveTable<-- # Multiple choice time, choose one only ! # Start dependent functions: priority preferred # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0620 # Maximum IO base address 0x0620 # IO base alignment 1 bytes # Number of IO addresses required: 4 (IO 0 (SIZE 4) (BASE 0x0620)) (IO 1 (BASE 0x0a20)) (IO 2 (BASE 0x0e20)) # End dependent functions (NAME "CTL009e/386849652[2]{WaveTable }") (ACT Y) )) # End tag... Checksum 0x00 (OK) # Returns all cards to the "Wait for Key" state (WAITFORKEY) 299 10. Hardware rund um den Linux-Rechner ­ PCI-Bus basierte Soundkarten: PCI-Soundkarten lassen sich sehr einfach konfigurieren. Der PCI-Bus wird vom Rechner automatisch konfiguriert und verteilt somit automa- tisch die Ressourcen der einzelnen Karten. Über definierte Software- Schittstellen können nun die Treiber die Ressourcen der Karte erfra- gen. * Installieren/Laden der Treiber: Im letzten Konfigurationsschritt muss nun den Treibermodulen die Kon- figuration der Hardware mitgeteilt werden. Dies geschieht über entspre- chende Einträge in der Datei /etc/modules.conf. ­ ISA- und PnP-Karten: Vorkompilierte Module für die vom Kernel unterstützten Kartentypen werden mit SuSE Linux mitgeliefert (Paket kernmod). Informatio- nen zu den Kernelmodulen für Sound finden Sie u. a. nach der In- stallation der Kernelquellen (Paket lx_suse) im Verzeichnis /usr/ src/linux/Documentation/sound. Kontrollieren Sie, dass in der Datei /etc/modules.conf die zu Sound gehörenden Aliasse nicht auf off stehen; ggf. sind diese Alias- se durch das Voranstellen eines `#' auszukommentieren, wie in Da- tei 10.3.1 auf Seite 301 zu sehen. Besitzen Sie z. B. eine Karte aus der Soundblaster 16-Familie, so kön- nen Sie die Treiber für die auf der Karte enthaltenen Funktionen (Au- dio, MPU401 und Synthesizer) beispielsweise mit dem folgenden Be- fehl laden: erde:/ # modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330 Mit diesem Befehl wird der eigentliche Treiber für die Soundblaster 16 geladen. Dasselbe Modul wird übrigens auch für die AWE64 benö- tigt. Der Treiber für den MPU401 ist Teil des Soundblaster-Treibers. Die zum vollständigen Betrieb der Soundkarte notwendigen Module uart401, sound, soundlow und soundcore werden automa- tisch nachgeladen. Diese Module stellen einige Lowlevel-Treiber so- wie die allen Soundmodulen gemeinsame Funktionen zur Verfügung. Sie können sich mit dem Befehl erde:/ # lsmod davon überzeugen, ob diese Module tatsächlich geladen wurden. erde:/ # modprobe adlib_card io=0x388 Dieser Befehl lädt das Modul für den auf der Karte enthaltenen Syn- thesizer. Es sind z. Z. die in Tabelle 10.1 auf Seite 311 aufgelisteten Treiber verfügbar. Eine Liste der möglichen Parameter der einzelnen Module finden Sie im Kapitel über die Kernel-Parameter (Abschnitt 14.3.4 auf Seite 377). * PCI-Karten Hier nun eine Schritt-für-Schritt-Anleitung zur Konfiguration von PCI- Soundkarten am Beispiel einer Creative Soundblaster PCI 64/128: 300 10.3. Soundkarten Die Soundkarten Soundblaster PCI 64/128 enthalten Soundchips vom Typ Ensoniq ES1370 oder ES1371. 1. Prüfen Sie anhand der Beschriftung des Soundchips, ob Sie einen Chip vom Typ ES1370 oder ES1371 auf Ihrer Karte haben. Bauen Sie die Karte ein ;-) 2. Ändern Sie /etc/modules.conf. Etwa in Zeile 38 finden Sie fol- gende Einträge: alias char-major-14 off alias sound off alias midi off Ändern Sie diese wie nachfolgend ab: # alias char-major-14 off # alias sound off # alias midi off Ab ca. Zeile 100 beginnt die Konfiguration der Soundkarten-Module. Ändern Sie # alias char-major-14 es1370 in alias char-major-14 es1370 indem Sie die Kommentarzeichen entfernen. Wenn Sie einen ES1371 auf Ihrer Karte haben, gehen Sie analog vor, benutzen jedoch den nächsten Eintrag für das Modul es1371.o. 3. Starten Sie den Mixer. Ein lsmod sollte jetzt folgende Ausgabe erzeugen: Module Size Used by es1370 21748 1 (autoclean) soundcore 2084 4 (auto- clean) [es1370] ... Ausgabe 10.3.1: Ausgabe des Befehls lsmod 4. Wenn es nicht sofort klappt, versuchen Sie es nach einem depmod -a nochmal. 5. Versuchen Sie, mit kscd, x11amp, o. Ä. dem Rechner einen Ton zu ent- locken. Beachten Sie dabei bitte UNBEDINGT die Einstellungen des Mixers (wenn alle Kanäle stummgeschaltet sind, nützt der schönste Soundtrei- ber nichts ;-) Beachten Sie bitte, dass Karten, die das Modul es1370.o oder es1371.o benötigen, von KDE nicht automatisch erkannt werden, da diese Module die Gerätedatei /dev/sndstat nicht zur Verfügung stellen. ­ Um dennoch in den Genuss von Systemklängen unter KDE zu 301 10. Hardware rund um den Linux-Rechner kommen, müssen Sie die Datei /opt/kde/bin/startkde folgen- dermaßen ändern: Suchen Sie die Zeilen startifaudio kaudioserver startifaudio kwmsound und ändern Sie diese nach kaudioserver & kwmsound & ab. Die Soundkarte Creative Soundblaster Live! wird durch einen speziel- len, von Creative Labs selbst entwickelten Treiber unterstützt. Installieren Sie das Paket emu10k1 der Serie snd mit YaST nach. Die weitere Vor- gehensweise zur Installation des Treibers entnehmen Sie bitte der Datei /usr/doc/packages/emu10k1/README.SuSE. Testen, ob alles geklappt hat: Sie haben alle notwendigen Module geladen und wollen testen, ob Sie nun auch wirklich Sound erzeugen können. Geben Sie hierfür (nach dem Laden des Sound-Moduls) den folgenden Befehl ein: erde:/ # cat /dev/sndstat Dieser sollte ­ im Falle der SB 16 ­ eine Ausgabe ähnlich der in Ausga- be 10.3.2 gezeigten liefern. [...] Audio devices: 0: Sound Blaster 16 (4.13) (DUPLEX) Synth devices: 0: Yamaha OPL3 Midi devices: 0: Sound Blaster 16 Timers: 0: System clock Mixers: 0: Sound Blaster Ausgabe 10.3.2: Ausgabe des Befehls cat /dev/sndstat Wenn Sie mit diesem Befehl eine Ausgabe wie die genannte erzielen, so können Sie versuchen, eine Audio-Datei abzuspielen (Audio-Dateien sind z. B. in der Serie snd in Paket snd_au, in Paket snd_wav und in Paket snd_mod zu finden). Sie benötigen hierzu das Paket sox der Serie snd: erde:/ # play /usr/share/sounds/wav/applause.wav erde:/ # tracker /usr/share/sounds/mod/rebels.mod Midi-Dateien können Sie mit dem KDE-Programm kmid sehr bequem ab- spielen, wenn Ihre Karte diese Funktionalität unterstützt. Wenn cat /dev/sndstat die gewünschte Ausgabe liefert und wenn auch play mysong.wav ohne Fehlermeldung zurückkommt, Sie aber immer noch nichts hören, so versuchen Sie einmal, den Audiomixer im 302 10.4. Schnittstellen am Rechner KDE-Panel zu starten. Es ist auch denkbar, dass einfach die Lautstärke nicht richtig eingestellt ist. Automatisches Laden der Kernelmodule Wenn Sie sichergestellt haben, dass Ihre Karte von den vorhandenen Treibern voll unterstützt wird, können Sie die entsprechenden Module automatisch laden, indem Sie für passende Einträge in der Datei /etc/modules.conf sorgen. Für die Soundblaster 16 sieht das z. B. aus wie in Datei 10.3.1 auf der nächsten Seite. # alias char-major-14 off # alias sound off # alias midi off alias char-major-14 sb post-install sb /sbin/modprobe "-k" "adlib_card" options sb io=0x0220 irq=7 dma=1 dma16=5 mpu_io=0x0330 options adlib_card io=0x0388 # FM synthesizer Datei 10.3.1: /etc/modules.conf: Optionen für Sound-Module Eine allgemeine Regel dafür, welche Soundkarte welche Funktionalität besitzt, gibt es natürlich nicht. Sie müssen also selber anhand der Do- kumentation der Karte sowie der Informationen in /usr/src/linux/ Documentation/sound herausfinden, welche Module Sie jeweils nach- laden müssen. Viele Hinweise sind auch in den Quelldateien der Treiber unter /usr/src/linux/drivers/sound zu finden. Es sind jedoch schon einige vordefinierte Einträge in der /etc/modules.conf vorhanden, die Sie entsprechend anpassen können. Anstelle des Ladens über die /etc/modules.conf ist auch das Laden über einen Eintrag der o. g. modprobe-Befehle in die Datei /sbin/init. d/boot.local möglich (vgl. Abschnitt 17.4 auf Seite 442 ff.). 10.4 Schnittstellen am Rechner 10.4.1 PS/2-Anschlüsse Die PS/2-Anschlüsse wurden von IBM für die PS/2-Systeme entwickelt. In den letzten Jahren fanden diese Anschlüsse durch den ATX-Standard weite Verbreitung. Sie können an die PS/2-Anschlüsse eine Maus und eine Tastatur anschließen. Die Konfiguration der PS/2-Anschlüsse ist unter Linux nicht notwendig, da die Unterstützung für PS/2 fest in den Kernel eingebunden ist. Das System erkennt also automatisch vorhandene PS/2-Anschlüsse, und kann die daran angeschlossenen Geräte nutzen. Die Anschlüsse werden mit den Gerätedatei- en /dev/kbd und /dev/psaux im System abgebildet. 303 10. Hardware rund um den Linux-Rechner 10.4.2 Serielle Anschlüsse Die seriellen Anschlüsse (RS232) des Rechners werden oft für externe Mo- dems verwendet. Sie können auch Mäuse mit einer RS232-Schnittstelle an diesen Anschlüssen betreiben. Unter Linux wird für die Unterstützung der Anschlüsse das Kernel-Modul serial.o benötigt. Das Modul wird automatisch geladen, wenn Sie versu- chen, Geräte an diesen Anschlüssen über geeignete Software anzusprechen. Falls Sie also z. B. Ihren Internetzugang derart konfiguriert haben, dass ein Modem an COM1 verwendet werden soll, dann wird vor dem Verbindungs- aufbau zum Provider das Modul automatisch nachgeladen. Sie können die Konfiguration Ihrer seriellen Schnittstellen durch das kleine Programm setserial verändern. Dieses Programm wird auch bei jedem Sys- temstart durch das Skript /sbin/init.d ausgeführt. Weiteres zu setseri- al entnehmen Sie bitte der Man-Page des Programmes. Serielle Anschlüs- se werden durch die Gerätedateien /dev/ttyS0, /dev/ttyS1 usw. vom System angesprochen. 10.4.3 Parallele Anschlüsse Der parallele Anschluss des Rechners wird vorwiegend für den Anschluss von Druckern verwendet. Sie können aber auch externe ZIP-Laufwerke oder auch CD-Laufwerke daran betreiben. Das Parport"-Subsystem des aktuellen Linux-Kernels 2.2.xx ist dafür aus- gelegt, an einer parallelen Schnittstelle mehrere Geräte gleichzeitig zu betrei- ben.1 Eine Anwendung ist beispielsweise ein an die parallele Schnittstelle angeschlossenes ZIP-Laufwerk, an welches seinerseits ein Drucker angeka- belt ist. parport initialisieren Es werden die parport- und parport_pc-Unterstützung des Kernels be- nötigt.2 Dabei ist parport das eigentlich Subsystem des Kernels, während parport_pc für die hardwareseitige Einbindung der Schnittstelle des PCs und auch einiger AXP-Rechner zuständig ist. Mit dem Befehl erde: # modprobe parport_pc können Sie die Module manuell einbinden. Überprüfen Sie, ob die Schnitt- stelle gefunden und konfiguriert werden konnte, indem Sie anschließend den Befehl lsmod eingeben; in der Modul-Auflistung sollten dann parport und parport_pc erscheinen. Schauen Sie auch in der Datei /var/log/ messages nach, mit welchen Werten parport initialisiert wurde (vgl. Da- tei 10.4.1) Für die Konfiguration der Schnittstelle sind die Einträge in Datei 10.4.2 auf der nächsten Seite zuständig; der auskommentierte Eintrag gibt einen Hin- weis, wie es machbar ist, eine weitere parallele Schnittstelle einzubinden. 1 Beim alten" Kernel 2.0.xx kann immer nur ein Gerät ausschließlich an einer Schnittstelle betrieben werden; auch kann man in der Regel keine durchgeschleiften" Anschlüsse verwenden! 2 Sie brauchen aber keinen eigenen Kernel zu generieren; die notwendigen Module werden mit SuSE Linux vorkompiliert mitgeliefert! 304 10.4. Schnittstellen am Rechner Jun 3 09:15:53 tux kernel: parport0: PC- style at 0x378 [SPP, ECP] Datei 10.4.1: /var/log/messages: parport-Initialisierung alias parport_lowlevel parport_pc options parport_pc io=0x378 irq=none # If you have multiple parallel ports, spe- cify them this way: # options parport_pc io=0x378,0x278 irq=none,none Datei 10.4.2: /etc/modules.conf: parport-Konfiguration Bei Schwierigkeiten kontrollieren Sie bitte zunächst im BIOS des Rech- ners, wie die fragliche Schnittstelle dort eingetragen ist. Die Schnittstelle sollte explizit eine Adresse (möglichst 0x378) und einen eigenen Inter- rupt erhalten. Etwaige auto"-Einstellungen sind zu vermeiden. Bisweilen ist es auch notwendig, die Geräte in der richtigen Reihenfolge einzuschalten; bitte schauen Sie in den mitgelieferten Handbüchern nach! Es hat sich bewährt, erst den Rechner und dann ­ noch bevor das Booten beginnt ­ sofort die externen Geräte zu aktivieren! parport verwenden: Drucker, ZIP-Laufwerke, PLIP etc. Wenn nun ein Parallelport-Gerät benutzt werden soll, muss zudem das jeweils zuständige Modul geladen werden; im Falle eines Druckers ist es das lp- Modul: erde: # modprobe lp Und lsmod sollte dann u. a. anzeigen: parport_pc 5568 1 (autoclean) parport 6884 1 [parport_pc lp] lp 5116 0 (unused) Auch in diesem Fall gilt: Einträge in der Datei /var/log/messages wie auch im proc-Dateisystem unter /proc/parport geben näheren Auf- schluss. Wenn alles läuft, werden Sie die Module nicht mehr per Hand la- den müssen ­ das erledigt der Kmod automatisch (vgl. Abschnitt 13.2 auf Seite 355), wenn z. B. der Druckauftrag losgeschickt wird. ZIP-Laufwerke werden entweder von ppa oder von imm bedient ­ vgl. unten Abschnitt 10.5.3 auf der nächsten Seite. Weiterführende Informationen Vgl. bei den Kernelquellen im Verzeichnis /usr/src/linux/Documentation die Dateien parport.txt und paride.txt. 305 10. Hardware rund um den Linux-Rechner Informationen zum aktuellen Stand der parport-Programmierung sind im WWW unter http://www.torque.net/linux-pp.html bzw. http://www.torque.net/parport/ zu finden. 10.4.4 USB ­ Universal Serial Bus Der Universal Serial Bus ist eine der größten Neuerungen auf dem PC-Markt der letzten Jahre. Mithilfe dieses Bus-Systems können Sie viele verschiede- ne Geräte, wie z. B. Maus, Tastatur, Drucker oder auch Scanner auf einfache Art und Weise mit dem Rechner verbinden. Jedes dieser Geräte verfügt über die gleiche Buchse und wird auch mit dem gleichen Kabel mit dem Rechner verbunden. Somit entfallen die vielen derzeit noch notwendigen Kabel, wie RS232 oder Centronics. Der Bus ist auch in der Lage Geräte während des Betriebs am System an- und abzumelden. Es ist somit möglich z. B. den Dru- cker einfach anzuschließen oder abzunehmen, ohne den Rechner neu starten zu müssen. Unter Linux ist die Unterstützung dieses Bus-Systems leider noch nicht voll- ständig abgeschlossen. Daher werden Sie Geräte, die mit diesem Bus ver- bunden sind, unter Linux noch nicht betreiben können. Näheres zur USB- Implementierung unter Linux können Sie im Internet der URL http:// www.linux-usb.org/ entnehmen. 10.5 Wechselmedien Unter Linux können die verschiedensten Wechselmedien zum Einsatz kom- men: Disketten-Laufwerke, ZIP-, JAZ- oder SyQuest-Laufwerke. Auch Magneto-Optische Datenträger können unter Linux verwendet werden. 10.5.1 Disketten-Laufwerke Zum einfachen Zugriff auf MS-DOS formatierte Disketten wurden die sog. Paket mtools entwickelt. Abschnitt 19.12 auf Seite 494 gibt Ihnen eine ge- naue Auskunft über die Möglichkeiten und die Verwendung dieser Program- me. Selbstverständlich können Sie auch ext2- oder minix-formatierte Disket- ten verarbeiten. Es sind auch viele weitere Dateisysteme verwendbar. Hierzu müssen Sie diese aber mithilfe des mount-Befehls im Dateisystem einhängen; Abschnitt 19.11 auf Seite 492 gibt dazu detailliert Auskunft. 10.5.2 LS-120 Laufwerke LS-120 Laufwerke werden an den IDE-Anschluss des Rechners angeschlos- sen und vom System wie Festplatten betrachtet. Daher müssen Sie diese auch mit Hilfe des mount-Befehls im Dateisystem einhängen. 10.5.3 ZIP-Laufwerke ZIP-Laufwerke gibt es für unterschiedliche Schnittstellen: Parallelport, IDE, SCSI und nunmehr auch USB (wird aber z. Z. noch nicht unterstützt). 306 10.6. Modems Für IDE- und SCSI- Laufwerke benötigen Sie keine besonderen Treiber. Die- se Varianten werden an den jeweiligen Bus angeschlossen und können dann von den zuständigen Treibern (IDE bzw. SCSI) angesprochen werden. Die Geräte werden dann durch die Gerätedateien /dev/hda - /dev/hdd für IDE (ATAPI) und /dev/sda - /dev/sdm für SCSI angesprochen. Sie müssen das Laufwerk auch wieder mit Hilfe des mount- Befehls in das Dateisystem einhängen. Etwas aufwendiger gestaltet sich mitunter die Einbindung der Parallel- port-Version; es werden dafür der SCSI-Festplatten-Support, parport- und parport_pc-Unterstützung (vgl. Abschnitt 10.4.3 auf Seite 302) sowie der ppa- bzw. imm-Treiber des Kernels benötigt3; imm ist für die neueren Lauf- werke zuständig (z. B. für das ZIP 250). Desweiteren sollten Sie sicherstellen, dass im BIOS des Rechners als Modus des Parallel-Ports EPP eingestellt ist. Versuchen Sie also zunächst einmal imm zu laden: erde: # modprobe imm Wenn dies fehlschlägt, unternehmen Sie den gleichen Versuch für ppa: erde: # modprobe ppa Damit wird das parport-Subsystem automatisch initialisiert; sollte das nicht funktionieren, siehe zunächst auf Seite 302 f. Mitunter kann durch einen Eintrag in /etc/modules.conf nachgehol- fen werden (vgl. Datei 10.5.1). Der alias für scsi_hostadapter darf nur dann gesetzt werden, wenn Sie keinen regulären SCSI-Hostadapter in dem System haben! Alternativ ist es möglich, die notwendigen modprobe- Aufrufe in das Bootskript /sbin/init.d/boot.local einzutragen; zu dieser Datei vgl. Abschnitt 17.4 auf Seite 442 ff. # alias scsi_hostadapter ppa pre-install ppa modprobe "-k" parport_pc Datei 10.5.1: /etc/modules.conf: ppa-Konfiguration Dann kann auf ZIP-Disketten wie auf SCSI-Festplatten zugegriffen wer- den; es ist also notwendig, diese Medien zu mounten" (vgl. auch Ab- schnitt 19.11.2 auf Seite 493). 10.6 Modems 10.6.1 Externe Modems Externe Modems werden direkt mit der seriellen Schnittstelle des Rechners verbunden. Programme können dann über die Gerätedateien /dev/ttyS0, 3 ppa- bzw. der imm-Treiber verstecken sich unter den SCSI low-level drivers" ­ Sie brauchen aber keinen eigenen Kernel zu generieren; die notwendigen Module werden mit SuSE Linux vorkompiliert mitgeliefert! 307 10. Hardware rund um den Linux-Rechner /dev/ttyS1 usw. mit dem Modem kommunizieren. Die Konfiguration des Modems für einen Internetzugang können Sie aus Abschnitt 6.5 auf Seite 186 entnehmen. 10.6.2 Interne Modems Interne Modems sind entweder mit dem PCI-Bus oder dem ISA-Bus des Rechners verbunden. Weitere Informationen darüber finden Sie in Ab- schnitt 10.2 auf Seite 289. Da Modems über serielle Schnittstellen gesteuert werden, müssen interne Modems diese Schnittstelle selbst zur Verfügung stellen. Tabelle 10.2 auf Seite 311 gibt Ihnen eine Übersicht über Standardressourcen für serielle Schnittstellen. PCI-Modems Wenn Sie ein PCI-Modem besitzen, handelt es sich wahrscheinlich um ein sog. Winmodem". Winmodems sind eigentlich keine Modems. Diese Mo- dems benötigen einen speziellen Treiber, der dann ein normales Modem emu- liert. Dieser Treiber wird vom Hersteller des Modems zur Verfügung gestellt und ist z. Z. leider nur für Microsoft Windows verfügbar. Nähere Informationen über Winmodems und deren Unterstützung für Li- nux erhalten Sie unter der URL http://www.o2.net/~gromitkc/ winmodem.html. ISA-Modems Um ISA-Modems zu betreiben, sind zwei Schritte notwendig: * Das Modem selbst muss konfiguriert werden (IRQ und IO-Addresse der Schnittstelle). * Der Kernel muss über die neue Schnittstelle informiert werden. Initialisierung des Modems Wie bereits in Abschnitt 10.2 auf Seite 289 beschrieben, kann es sich bei ISA- Bus basierten Karten um Legacy, Jumperless oder um PnP-Karten handeln. In diesem Abschnitt ist auch die Aktivierung von PnP-Karten beschrieben. Einige Hinweise zu den Einstellungen der Karte: Am wenigsten Probleme bereitet die Konfiguration der Karte auf /dev/ ttyS1 mit IRQ 3 (COM2). Die Verwendung von /dev/ttyS3 (IRQ 4) ist auch möglich, kann aber mit /dev/ttyS0 (COM1) in Konflikt geraten, da diese Schnittstelle normalerweise auch IRQ 4 verwendet. Sollten Sie also eine serielle Maus (an COM1) betreiben, so dürfen Sie das Modem nicht auf /dev/ttyS0 oder /dev/ttyS2 konfigurieren. IRQ 5 und 7 sollten Sie ebenfalls vermeiden, da diese oftmals von Soundkar- ten und Druckerschnittstellen verwendet werden. Sollten Sie Ihre PnP-Soundkarte mit OSS betreiben, so stellen Sie sicher, dass die Karte in der Datei /etc/isapnp.conf nicht aktiviert wird (ACT Y muss auskommentiert sein). 308 10.7. Scanner Übergabe der Parameter an den Kernel Nachdem das Modem konfiguriert wurde, muss der Kernel über die neue Schnittstelle informiert werden. Sollten Sie das Modem auf /dev/ttyS0 oder /dev/ttyS1 gelegt haben, so brauchen Sie nichts zu verändern. Nach dem nächsten Neustart des Systems werden die Schnittstellen automatisch konfiguriert. Bei Verwendung anderer IO-Port/IRQ-Kombinationen muss die Schnittstelle mit Hilfe des Befehl setserial bekanntgemacht werden: erde:/ # setserial /dev/ttyS3 irq 10 Anschließend können Sie das Modem ­ wie in Abschnitt 6.5 auf Seite 186 beschrieben ­ für den Internetzugang konfigurieren. Um die Konfiguration mithilfe des setserial-Kommandos zu automatisieren, können Sie die Datei /sbin/init.d/serial verändern. Das obige Bei- spiel lässt sich automatisieren, wenn in der genannten Datei folgende Zeile # run_setserial /dev/ttyS3 $AUTO_IRQ autoconfig nach run_setserial /dev/ttyS3 irq 10 abgeändert wird. 10.7 Scanner Um einen Scanner unter Linux zu betreiben benötigen Sie ­ wie unter anderen Betriebssystemen auch ­ eine Sammlung spezieller Programme und Treiber. Das Paket sane (Serie gra) in Verbindung mit dem Paket scsiinfo (Serie ap) stellt eine solche Sammlung dar. Mithilfe von SANE können Sie einen Scanner betreiben, der an einem von dem Linux-Kernel unterstützten SCSI- Adapter angeschlossen ist. Scanner, die an der parallelen Schnittstelle (Drucker-Anschluss) des Rechners verbunden sind, werden derzeit noch nicht unterstützt, obwohl schon Treiber in Entwicklung sind. Gleiches gilt auch für USB-Scanner. Da SANE ständig erweitert wird, wächst auch die Anzahl unterstütz- ter Scanner. Eine Liste der in der neuesten Version unterstützten Scan- ner finden Sie unter der URL http://www.mostang.com/sane/ sane-backends.html. Wie wird der Scannertreiber unter Linux konfiguriert? Scanner werden unter Linux als generic scsi devices" angesprochen. Die zugehörigen Gerätedateien sind /dev/sg0, /dev/sg1 usw. Um die passende Datei in Ihrem System zu finden, sollten Sie auf das kleine Programm sgcheck zurückgreifen: erde:/ # sgcheck Sie sollten eine Ausgabe der folgenden Art erhalten: 309 10. Hardware rund um den Linux-Rechner Assignment of generic SCSI devices, device host/channel/ID/LUN type(numeric type) ven- dor model: /dev/sg0 0/0/0/0 Direct-Access(0) SEAGA- TE ST32550N /dev/sg1 0/0/1/0 CD-ROM(5) PIONEER CD-ROM DR- U10X /dev/sg2 0/0/5/0 Processor(3) HP C2500A Scanner sind an Gerätebezeichnungen wie Processor oder auch SCANNER zu erkennen. ­ Im obigen Beispiel ist Ihr Scanner über die Gerätedatei /dev/ sg2 ansprechbar. Legen Sie nun einen symbolischen Link von dieser Datei auf /dev/ scanner an: erde:/ # ln -s /dev/sg2 /dev/scanner Anschließend müssen Sie noch die Rechte für das generische SCSI-Device anpassen. SANE erwartet neben den Leserechten auch die Schreibrechte auf das Gerät, da es ja auch Befehle an den Scanner schicken muss: erde:/ # chmod 777 /dev/sg2 Probleme Sollte der Scanner von SANE nicht gefunden werden, so prüfen Sie bitte, ob der von Ihrem SCSI-Controller überhaupt erkannt wurde: erde:/ # cat /proc/scsi/scsi Die Ausgabe sollte etwa so aussehen: Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: SEAGATE Model: ST32550N Rev: 0016 Type: Direct Access ANSI SC- SI revision: 02 Host: scsi0 Channel: 00 Id: 01 Lun: 00 Vendor: PIONEER Model: CD-ROM DR-U10X Rev: 1.07 Type: CD-ROM ANSI SC- SI revision: 02 Host: scsi0 Channel: 00 Id: 02 Lun: 00 Vendor: QUANTUM Model: FIREBALL TM3200S Rev: 1.07 Type: Direct-Access ANSI SC- SI revision: 02 Host: scsi0 Channel: 00 Id: 06 Lun: 00 Vendor: SCANNER Model: Rev: 2.00 Type: Scanner ANSI SC- SI revision: 01 CCS Sollten Sie hier keinen Eintrag wie SCANNER" oder PROCESSOR" fin- den, dann wurde der Scanner vom Controller nicht erkannt. Prüfen Sie, ob der Scanner eingeschaltet und die Terminierung des SCSI-Bus korrekt ist. 310 10.8. Bandlaufwerke (engl. streamer) 10.8 Bandlaufwerke (engl. streamer) Bandlaufwerke, auch Streamer genannt, werden in erster Linie zur Sicherung großer Datenbestände verwendet. Auf dem Markt sind Bandlaufwerke mit verschiedenen Schnittstellen zum Rechner verfügbar. SCSI-Bandlaufwerke Am bekanntesten dürften die Geräte sein, die direkt mit dem SCSI-Bus ver- bunden werden. Grundsätzlich können Sie davon ausgehen, dass Sie alle Bandlaufwerke, die an einen von Linux unterstützten SCSI-Adapter ange- schlossen sind auch nutzen können. Sollte Ihr Bandlaufwerk über außerge- wöhnliche Funktionen verfügen (z. B. eine Bandwechselstation), so wird oft- mals spezielle Software benötigt, um diese Funktionen zu nutzen. Das SCSI-Bandlaufwerk wird folgendermaßen gesteuert: * Das erste Bandlaufwerk im System wird mit den Gerätedateien /dev/ st0 und /dev/nst0 angesteuert, das nächste mit /dev/st1 und /dev/nst1 usw. /dev/stX steht für ein Bandlaufwerk, das nach jeder Aktion das Band wieder an den Anfang zurückspult. /dev/nstX referenziert hingegen ein Laufwerk, dass das Band stets an der aktuellen Position belässt. Wir empfehlen die Benutzung von /dev/nstX, da Sie mit dem Befehl mt das Laufwerk genau steuern können. * Verwenden Sie also den Befehl mt, um dem Bandlaufwerk Befehle zur Bandsteuerung zu senden. erde:/ # mt -f /dev/nst0 retension Spannt das Band neu, indem es vom Anfang bis zum Ende durchgespult wird. erde:/ # mt -f /dev/nst0 rewind Spult das Band an den Anfang zurück. erde:/ # mt -f /dev/nst0 eom Spult das Band hinter den letzten Datensatz. Hiermit können Sie neue Daten an ein teilweise bespieltes Band anfügen. erde:/ # mt -f /dev/nst0 erase Löscht das Band im Laufwerk. Vorsicht! Alle Daten auf dem Band gehen verloren. IDE-Bandlaufwerke IDE-Bandlaufwerke werden an den IDE-Bus des Rechners angeschlossen. Das Laufwerk wird von Linux automatisch erkannt und Sie können es dann über die Gerätedateien /dev/ht0 bzw. /dev/nht0 benutzen. Verwenden Sie den Befehl mt, wie in Abschnitt 10.8 auf der vorherigen Seite beschrieben. 311 10. Hardware rund um den Linux-Rechner Floppy-Bandlaufwerke Floppy-Bandlaufwerke werden einfach an den in jedem Rechner vorhande- nen Floppy-Port angeschlossen. Da diese Geräte aber sehr zeitkritisch anzusteuern sind, kann es oft zu Pro- blemen bei der Sicherung oder beim Backup kommen. Um diese Laufwerke unter Linux zu nutzen, benötigen Sie einen speziellen Treiber, den ftape-Treiber. Dieser Treiber wird mit dem Kernel bereits mitge- liefert. Näheres zur Konfiguration dieser Geräte entnehmen Sie bitte der Do- kumentation unter /usr/src/linux/Documentation/ftape.txt. Die gesamte Dokumentation zum ftape-Subsystem erhalten Sie auf der Ho- mepage des Treiberentwicklers: http://www.math1.rwth-aachen.de/~heine/ftape/. 10.9 TV-Karten Unter Linux ist es seit geraumer Zeit auch möglich, mithilfe einer TV-Karte unter der grafischen Oberfläche (dem X Window System) fernzusehen. Dies wird durch eine Reihe von Kernelmodulen und dazu passenden Programmen realisiert. Welche Karten werden unterstützt? Grundsätzlich erfolgt die Unterstützung aufgrund des auf der Karte verwen- deten Chips. In den letzten Jahren haben sich hier die Grabber-Chips der Fa. Brooktree etabliert. Unter Linux können Sie Karten mit den Chips BT848 und BT878" verwenden. Die Unterstützung für BT878 ist noch nicht ganz vollständig, kann aber bereits als stabil betrachtet werden. Typische Karten mit diesen Chips sind z. B. Hauppauge WIN/TV oder Miro PC/TV. Wie wird die Unterstützung aktiviert? * Melden Sie sich als Benutzer `root' beim System an. * Installieren zunächst das Paket bttv der Serie gra mit YaST. * Wechseln Sie in das Verzeichnis /usr/doc/packages/bttv/ tools und Starten Sie das Programm update: erde:/ # cd /usr/doc/packages/bttv/tools erde:/usr/doc/packages/bttv/tools # ./update Dieses Skript bereitet Ihr System auf die Nutzung von TV-Karten vor. Es ermittelt die in Ihrem System befindliche TV-Karte und bindet die notwendigen Module in das System ein. Bei Problemen mit der TV-Karte sollten Sie zunächst die im Verzeichnis /usr/doc/packages/bttv/doc mitgelieferte Dokumentation beach- ten. Desweiteren finden Sie auch in unserer Support-Datenbank im Internet unter http://sdb.suse.de einige Artikel hierzu (Stichwort: tv). 312 10.9. TV-Karten ad1816.o AD1816 Chip (z. B. TerraTec Base1/64) ad1848.o AD1848 Chip (MSS) adlib_card.o Generischer OPLx Treiber cmipci.o CMI8338, experimentell (?) cs4232.o Crystal 423x Chipsätze es1370.o Ensoniq 1370 Chipsatz (vgl. PCI64/128) es1371.o Creative Ensoniq 1371 Chipsatz (vgl. PCI64/128) esssolo1.o Solo1 ES1938/ES1969 gus.o Gravis Ultrasound mad16.o MAD16 maui.o Turtle Beach Maui and Tropez mpu401.o MPU401 msnd.o Turtle Beach MultiSound msnd_classic.o Turtle Beach Classic/Monterey/Tahiti msnd_pinnacle.o Turtle Beach Pinnacle/Fiji msnd_pinnacle.o Turtle Beach Pinnacle/Fiji nm256.o Neo Magic opl3.o OPL3 opl3sa.o OPL3-SA1 opl3sa2.o YMF711, YMF715, YMF719, OPL3-SA2, OPL3-SA3, OPL3-SAx pas2.o Pro Audio Spectrum pss.o Personal Sound System (ECHO ESC614) sb.o Sound Blaster und Clones sgalaxy.o Aztech Sound Galaxy softoss2.o Software-MIDI-Synthsesizer Treiber sonicvibes.o S3 Sonic Vibes sound.o enthält die von allen Modulen benötigten Funktionen soundlow.o Lowlevel-Soundtreiber soundcore.o Top Level-Handler für Soundsystem sscape.o Ensoniq SoundScape trix.o MediaTrix AudioTrix Pro uart401.o UART401 uart6850.o UART6850 v_midi.o Sound Blaster DSP chips wavefront.o Turtle Beach Maui, Tropez, Tropez Plus Tabelle 10.1: Liste der Soundkarten-Treiber 313 10. Hardware rund um den Linux-Rechner Gerätedatei Name Interrupt IO-Adresse /dev/ttyS0 COM1 4 0x3f8 /dev/ttyS1 COM2 3 0x2f8 /dev/ttyS2 COM3 4 0x3e8 /dev/ttyS3 COM4 3 0x2e8 Tabelle 10.2: Standardressourcen für serielle Schnittstellen 314