Re: Getting CDRW to work in Debian

From: Bob Proulx (bob_at_proulx.com)
Date: 12/01/03

  • Next message: Mark Healey: "radeon and X: was X won't start"
    Date: Mon, 1 Dec 2003 02:24:47 -0700
    To: Debian Users list <debian-user@lists.debian.org>
    
    
    

    Walter Dnes wrote:
    > I have a DVD (hdc) and a CDRW (hdd) on a machine. The only defined
    > mount is /cdrom, which is actually the DVD. In Redhat, I simply added
    > append="hdc=ide-scsi hdd=ide-scsi" to lilo.conf, ran lilo and re-boot
    > and both of them worked as did cdrecord. This does not work in Debian
    > (2.4.18-bf2.4).

    That should be enough for Debian as well. (shrug) Works for me.

    > Further Googling suggested that I add a line to modules.conf.
    > Looking at modules.conf, I saw dire warnings against manual editing,
    > and that I was to use update-modles instead. According to the
    > manpage, I'm supposed to create a file in /etc/modutils.

    Change references of modules.conf to /etc/modules instead.

    Here are my instructions for setting up a CD-RW drive on Debian.
    Perhaps they will help. This sets up a very particular configuration.
    You will have to adapt it for your installation.

    Note that these instructions match a tuned modular kernel such as
    kernel-image-2.4.20-2-k7. The bf24 kernel should have all of the
    modules compiled in and should work. But I don't use that kernel
    myself and so can't say for sure. And I have seen problems with
    module conflicts being completely unresolvable when trying to compile
    everything into the kernel statically. Take 'autofs' and 'autofs4' as
    an example, you need a modular kernel to get the fixed autofs4.
    Besides you probably want the tuned, modular kernel anyway. So that
    might be your first task, to update to an appropriate modular kernel
    first. See the previous postings about using 'modconf' or similar
    method to install your network and sound drivers.

    Bob

    Setting up a CD-RW drive

    I am going to assume that the CD-ROM is on a master IDE device and
    that the CD-RW is a slave IDE device on the same cable since that is a
    typical configuration. In order to use the CD writer it must appear
    as a SCSI device. In that case you might as well treat both of the
    devices as SCSI for consistency.

    First you need the kernel to load the ide-scsi module at boot time.
    Put the name of that driver in /etc/modules.

    In /etc/modules place the following:

      ide-scsi

    Note for pure SCSI disk based systems. In an IDE based system the
    ide-probe-mod and ide-mod drivers will have been loaded during the
    initial part of the boot. But in a SCSI based system there is no need
    for those drivers. Unless you have an IDE CD writer in which case you
    will need them and they will not be automatically detected for
    inclusion in an initrd. Therefore you will need to add these drivers
    explicitly in the /etc/modules file. Thanks George Robbert for
    providing this information. Note that in 2.4.22 ide-probe became
    ide-detect. Thanks Brian Weaver for providing this information.

      ide-probe-mod
      ide-scsi

    The ide-scsi module can only adapt an IDE device to a SCSI if it has
    not already been grabbed by the normal IDE layer. Therefore the
    kernel must be instructed to load the ide-scsi driver for these
    devices at boot time such that the ide-scsi driver will be loaded
    first. After modifying the /etc/lilo.conf file you will need to run
    lilo and you will need to reboot. (Or edit grub's menu.lst and run
    update-grub for grub users.)

    In /etc/lilo.conf place the following:

      append="hdc=ide-scsi hdd=ide-scsi"

    The hdc device is your master device which I am assuming will be your
    CD-ROM device. The hdd device is your slave device which I am
    assuming will be your CD-RW device.

    Test your configuration using cdrecord -scanbus. It should be able to
    see your CD devices.

      cdrecord -scanbus

    At this point things are configured for the kernel to handle the
    devices correctly as SCSI devices. Now we set up the rest of the
    system to know about these. Typically on Linux systems the device is
    aliased as a symlink in /dev. Remove any previous aliases. Create
    new aliases for the new devices.

      rm -f /dev/cdrom
      rm -f /dev/cdrw
      ln -s /dev/scd0 /dev/cdrom
      ln -s /dev/scd1 /dev/cdrw

    Create mount points for these devices. These could go anywhere on
    your filesystem. Typically on Debian they will be mounted in / as
    /cdrom and /cdrw. However another common convention is to mount these
    under /mnt as /mnt/cdrom and /mnt/cdrw. For now I will go with the
    Debian default and show them in /cdrom and /cdrw.

      mkdir -p /cdrom /cdrw

    Configure those device nodes and mount points in your filesystem table
    so that they can be easily mounted. The configuration shown here
    allows any user to mount and unmount these devices as themself and
    root capability is not needed.

    In /etc/fstab place the following:

      /dev/cdrom /cdrom iso9660 ro,user,noauto 0 0
      /dev/cdrw /cdrw iso9660 ro,user,noauto 0 0

    You may be questioning the 'ro' option, read-only, in the cdrw entry
    in the above fstab. That is because when mounting the disk like this
    it looks like a cdrom and is not writable using this method. When
    mounting it as a filesystem it is being mounted as a cdrom device
    only. You can use the cdrw to read a cd using the cdrom capabilities
    of the device.

    To actually record using the cdrw you will need to use cdrecord or
    similar program. Many people have reported good use of the GUI
    xcdroast. Use the dev setting that matches what cdrecord -scanbus
    says. Use a speed that is supported by both drive and media.

      cdrecord -v -eject dev=0,1,0 speed=8 file.iso

    In my install for cdrecord I told it to use 'suid' so that you don't
    need root permission to run it. Alternatively 'sudo' can be
    configured for that purpose.

    After you get that going edit /etc/default/cdrecord and set up the
    default parameters there so that you won't need them on the command
    line each and every time. With that configuration installed a typical
    command line might be the following.

      cdrecord -v -eject file.iso

    
    

    -- 
    To UNSUBSCRIBE, email to debian-user-request@lists.debian.org 
    with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
    


  • Next message: Mark Healey: "radeon and X: was X won't start"

    Relevant Pages

    • Re: cant mount drive
      ... > mount valid CDs on it they mount no problem (since in earlier posts ... > k3b or cdrecord as root. ... The related Linux kernel interface code seems to be ... Drive needs to reload the media to return to proper status. ...
      (Fedora)
    • Re: do I need initrd.img in my case ?
      ... You need the drivers so that the kernel ... >can't read the kernel off the scsi hard disk until you have a scsi driver ... the new kernel still can't mount the root fs. ...
      (linux.redhat.install)
    • Re: Cdrecord with a 2.4 kernel
      ... I am trying to burn multisession cd's with cdrecord but I have a problem. ... After I have written a multisession disc, and mount it, the burned files are ... I can access/see them when I have rebooted my system and mount the cd. ... I am running Debian Sarge with a 2.4 kernel. ...
      (Debian-User)
    • kernel compilation on sid
      ... I removed unnecessary kernel drivers but at this time I do not ... I also tried to compile without 'initrd' but then kernel could not mount ...
      (Debian-User)
    • Re: ACPI Error under 2.6.26-rc*
      ... and attach the rsdp for all of the three cases (good, ACPI Error, ... could you please attach the dmesg output of a 2.6.25.10 kernel which has ... # IPVS transport protocol load balancing support ... # Device Drivers ...
      (Linux-Kernel)