Login
Newsletter
Werbung

Do, 18. April 2002, 00:00

CD-Writer mit EIDE-Schnittstelle unter LINUX installieren

Von Pawel

Vorwort

Ich entschied mich vor einiger Zeit, einen preiswerten Rechner anzuschaffen.

Nach einer gewissen Zeit wollte ich mir auch einen CD-Brenner gönnen. Wieder sollte es ein preiswerter sein. Schließlich wollte ich nur ab und zu eine Sicherungskopie erstellen und ein paar Audio-CDs für den portablen CD-Player brennen.

So dachte ich, und schon stand das gelobte Gerät zuhause.

Über die möglichen Folgen und damit verbundenen Probleme habe ich nicht mal eine Sekunde nachgedacht. Da aber die preiswertesten PC-Komponenten leider mit EIDE-Schnittstelle ausgestattet sind, fingen die Überlegungen an, wie ich dieses Gerät auch unter Linux nutzen konnte.

Auch wenn es keinen direkten Treiber für EIDE-Brenner gibt, besteht die Chance, ein solches Produkt zum Laufen zu bekommen. So haben findige Programmierer eine Möglichkeit ausgearbeitet, eine SCSI-Schnittstelle emulieren zu können. Das war ein wichtiger Punkt im Leben von Linux, besonders wichtig für uns, die Linux-Anwender.

Die Emulation der SCSI-Schnittstelle wird im großen und ganzen dazu verwendet, gerade CD-Brenner, Scanner, manche CD-ROM-Laufwerke, Streamer und andere Geräte basierend auf der EIDE-Technologie zu betreiben. Die Konfiguration des Systems, um die SCSI Schnittstelle zu emulieren, ist in all diesen Fällen ähnlich. Außerdem muß auch gesagt werden, daß nicht alles, was neu ist, auch besser ist. Das ist besonders zu berücksichtigen unter Linux. Nicht alle CD-Brenner werden aktuell unterstützt. Die (immer aktuelle) Liste unterstützter Brenner kann unter der Adresse http://wt.xpilot.org/cgi-bin/winni/lsc-orig.pl begutachtet werden. Dort sind auch, in einer Tabelle zusammengestellt, die Brennprogramme und Kernelversionen, die den entsprechenden Brenner unterstützen. Diese Liste wird ständig aktualisiert, so daß fast jeden zweiten Monat neue CD-Brenner dazukommen, die getestet worden sind. Genauso wird gebeten, ein neues Gerät oder andere Konfiguration, die noch nicht in die Liste aufgenommen worden ist, aber erfolgreich betrieben wird, zu registrieren.

Die Konfiguration

Um einen EIDE CD-Brenner unter Linux zu installieren, braucht nur der Kernel entsprechend compiliert und ein paar Konfigurationsdateien entsprechend meiner Beschreibung geändert zu werden. Die Einfachheit dieses Unterfangens wird auch diese Installation beweisen.

Die Konfiguration wird hier beschrieben auf der Basis des Kernels 2.0.35, eines CD-ROM Laufwerks von »Toshiba« und eines CD-Brenners von »Mitsumi«. Beide sind EIDE-Geräte.

Bootdiskette erstellen

Besonders wichtig für Anfänger!!! Eine Boot-Diskette erstellen (falls nicht vorhanden), und prüfen, ob sie richtig bootet. Egal ob Anfänger oder Profi, man braucht immer eine Bootdiskette, denn schließlich kann Ihnen keiner versichern, daß nichts »dumm läuft«. Wie eine Bootdiskette erstellt wird, steht in jedem Handbuch.

Brenner einbauen

Den Brenner laut Angaben der Herstellers einbauen. Hier ist kein Kommentar nötig.

Kernel compilieren

Kernel kompillieren. Die genaue Beschreibung, wie ein Kernel kompilliert wird, entnehmen Sie bitte den man- bzw. HOWTO-Seiten. Hier nur kurze (für uns wichtige) Anweisungen:

Loggen Sie sich als root ein.

cd /usr/src/linux
make xconfig

(für Anfänger empfohlen).

Hier in der Tabelle sind die Kernel-Variablen zusammengestellt, die zu unserem Thema gehören. Weiteres siehe [2].

Kernel 2.0.x

 
Abschnittname Abfrage Variablenname Auswahl
SCSI support SCSI support CONFIG_SCSI
Y
SCSI CD-ROM support CONFIG_BLK_DEV_SR
Y
SCSI generic support CONFIG_CHR_DEV_SG
Y
Floppy, IDE and other block devices Include IDE/SCSI/ATAPI CDROM support CONFIG_BLK_DEV_IDECD
N
SCSI emulation support CONFIG_BLK_DEV_IDESCSI
Y
ilesystem ISO9660 cdrom filesystem support CONFIG_ISO9660_FS
Y/M

Kernel 2.2.x

 
Abschnittname Abfrage Variablenname Auswahl
SCSI support SCSI support CONFIG_SCSI
Y
SCSI CD-ROM support CONFIG_BLK_DEV_SR
Y
SCSI generic support CONFIG_CHR_DEV_SG
Y
Enable vendor-specific extensions CONFIG_BLK_DEV_SR_VENDOR
Y
Probe all LUNs on each SCSI device CONFIG_SCSI_MULTI_LUN
N
Block devices Enhanced IDE/MFM/RLL disc/cdrom/tape/floppy support CONFIG_BLK_DEV_IDE
Y
Include IDE/ATAPI CDROM support CONFIG_BLK_DEV_IDECD
N
SCSI emulation support CONFIG_BLK_DEV_IDESCSI
Y
Generic PCI bus-master DMA support CONFIG_BLK_DEV_IDEDMA
Y
Filesystems ISO 9660 CDROM filesystem support CONFIG_ISO9660_FS
Y/M
Microsoft Joliet cdrom extensions CONFIG_JOLIET
Y

Kernel 2.4.x

 
Abschnittname Abfrage Variablenname Auswahl
SCSI support SCSI support CONFIG_SCSI
Y
SCSI CD-ROM support CONFIG_BLK_DEV_SR
Y
SCSI generic support CONFIG_CHR_DEV_SG
Y
Enable vendor-specific extensions CONFIG_BLK_DEV_SR_VENDOR
Y
Probe all LUNs on each SCSI device CONFIG_SCSI_MULTI_LUN
N
Verbose SCSI error reporting (kernel size +=12K) CONFIG_SCSI_CONSTANTS
Y
ATA/IDE/MFM/RLL support
=>
IDE, ATA and ATAPI Block devices
Enhanced IDE/MFM/RLL disc/cdrom/tape/floppy support CONFIG_BLK_DEV_IDE
Y
Include IDE/ATAPI CDROM support CONFIG_BLK_DEV_IDECD
N
SCSI emulation support CONFIG_BLK_DEV_IDESCSI
Y
Generic PCI bus-master DMA support CONFIG_BLK_DEV_IDEDMA
Y
USE PCI DMA by default when available CONFIG_IDEDMA_PCI_AUTO
Y
Filesystems ISO 9660 CDROM filesystem support CONFIG_ISO9660_FS
Y/M
Microsoft Joliet CDROM extensions CONFIG_JOLIET
Y

Danach mit Save and exit die Änderungen in der Konfiguration abspeichern.

Folgende Befehle ausführen:

make dep clean bzImage
make modules
make modules_install
make bzlilo

Herzlichen Glückwunsch, der neu konfigurierte und übersetzte Kernel ist fertig.

lilo.conf oder GRUB anpassen

Die Datei /etc/lilo.conf mit einem beliebigen Texteditor (joe, kedit, vi, emacs, ...) editieren und am Ende des Bereichs »Start Lilo global Section« folgendes eintragen:

append = "hdx=ide-scsi hdy=ide-scsi"

Dabei bedeutet hdx,hdy entweder hdb, hdc oder hdd

  • hdb - CD-Laufwerk am Port 1 als Slave angeschlossen.
  • hdc - CD-Laufwerk am Port 2 als Master angeschlossen.
  • hdd - CD-Laufwerk am Port 2 als Slave angeschlossen.

Eine Bootsdiskette »OLD« erstellen für den Fall, daß wir etwas am Kernel falsch gemacht haben. Danach Änderung abspeichern und lilo -v aufrufen, um die Änderungen zu übernehmen.

Die Datei /boot/grub/menu.lst mit einem beliebigen Texteditor (joe, kedit, vi, emacs, ...) editieren und hinter der Kernel- und root-Angabe einfach angeben:

kernel (hd0,1)/boot/vmlinuz-2.2.20 root=/dev/hda2 hdx=ide-scsi hdy=ide-scsi

wobei "hdx", "hdy" wie bei "lilo.conf" definiert werden.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung