Penguin

scsi-ide is an kernel driver that provides a SCSI interface to IDE HardDisk / CD / DVD Drives. It is most commonly used for CD Burning as all burning apparently needs to be done over a SCSI interface.

Kernel support

To enable this in your kernel you must select the following options

ATA/IDE/MFM/RLL support

IDE, ATA and ATAPI Block devices

SCSI emulation support

You also need to enable generic SCSI support in your kernel.

You need the following Kernel modules, listed with their corresponding options:

SCSI generic support
sg.o, CONFIG_CHR_DEV_SG

SCSI CD-ROM support
sr.o, CONFIG_BLK_DEV_SR

SCSI support
scsi_mod.o, CONFIG_SCSI

SCSI emulation support
ide-scsi.o, CONFIG_BLK_DEV_IDESCSI

Boot parameters

Then you will need to add a line similar to the following to your lilo/grub configuration (Example is for lilo)

append="ignore=hdc,hde hdc=ide-scsi hde=ide-scsi"

This tells the kernel not to use the native IDE driver for hdc and hde and instead to use the ide-scsi driver. This should give you /dev/scd0 which would be /dev/hdc otherwise /dev/scd1 which would be /dev/hde otherwise

Say your CDR is be hdc and the CDROM is hdd, then you need to add this line to your /etc/lilo.conf to boot with the necessary Kernel options
append="hdc=ide-scsi hdd=cdrom"

Module loading

Now you need to load the ide-scsi module to emulate a SCSI interface on your existing IDE CDROM drive. Add the following entries to your /etc/modules.conf
alias scd0 sr_mod # load sr_mod upon access of scd0 pre-install sr_mod modprobe -k ide-scsi # load ide-scsi before sr_mod pre-install sg modprobe -k ide-scsi # load ide-scsi before sg

In Debian Woody, these go into /etc/modutils/scsi. Running update-modules will copy them into /etc/modules.conf.

Device files

/dev/srX is the device generally used for SCSI CDROM support. On Linux, the device files are normally called /dev/scdX, and the srX devices are SymLinks. To set them all up automatically, do

  1. cd /dev && ./MAKEDEV sr

If you want to always use the ide-scsi emulation, make /dev/cdrom a symlink to /dev/sr0 and make sure /etc/fstab uses /dev/cdrom instead of /dev/hdX.

If you make ide-cd and ide-scsi both modules, you can change how the CD-ROM drive is accessed without rebooting, depending on which module is currently loaded.


CategoryKernel