Most SCSI CD Changers use one SCSI ID number and then use LUNs (Logical Unit IDs) to address each CD within the changer. With LUNs, now you can access all 4-?12? CDs in the changer from a single SCSI ID. Problem is, not all changer's LUN systems work with Linux.
Because of this, you will have to experiment with the kernel option for Multi-LUN scan support. With my Nakamichi 7-CD changer (old 2x-speed), if I enable the multi-LUN support, my kernel would HANG after the box would post the SCSI changer device but before it was to post an additional single CD CD-ROM drive. By turning OFF the Multi-LUN kernel option and recompiling, my box would boot fine.
So, with that in mind:
- Try to NOT ENABLE the:
Probe all LUNs on each SCSI device (CONFIG_SCSI_MULTI_LUN) [N/y/?]
option unless your changer is NOT properly recognized.
- Add the changer to the SCSI chain and boot up the linux box.
- Create the following file: /etc/rc.d/rc.cdrom
NOTE: Please note that the UID and GIDs are specific to my machine and you will need to change them for your system. UIDs are defined in /etc/passwd and GIDs are defined in /etc/groups.
NOTE2: The permissions of these CDROMs after mounting STILL isn't right. I'm working on it but I have to admit I'm stumped.
/etc/rc.d/rc.cdrom
--
#!/bin/sh
# See how we were called.
case "$1" in
start)
echo "Mounting CD-ROMs.."
mount -t iso9660 /dev/scd0 ~hpe/CDROMs/Cdrom0 -o norock,uid=501,gid=10,suid,mode=0550
mount -t iso9660 /dev/scd1 ~hpe/CDROMs/Cdrom1 -o norock,uid=501,gid=10,suid,mode=0550
mount -t iso9660 /dev/scd2 ~hpe/CDROMs/Cdrom2 -o norock,uid=501,gid=10,suid,mode=0550
mount -t iso9660 /dev/scd3 ~hpe/CDROMs/Cdrom3 -o norock,uid=501,gid=10,suid,mode=0550
mount -t iso9660 /dev/scd4 ~hpe/CDROMs/Cdrom4 -o norock,uid=501,gid=10,suid,mode=0550
mount -t iso9660 /dev/scd5 ~hpe/CDROMs/Cdrom5 -o norock,uid=501,gid=10,suid,mode=0550
mount -t iso9660 /dev/scd6 ~hpe/CDROMs/Cdrom6 -o norock,uid=501,gid=10,suid,mode=0550
# mount -t iso9660 /dev/scd7 ~hpe/CDROMs/Cdrom7 -o norock,uid=501,gid=10,suid,mode=0550
;;
start0)
mount -t iso9660 /dev/scd0 ~hpe/CDROMs/Cdrom0 -o norock,uid=501,gid=10,suid,mode=0550
;;
start1)
mount -t iso9660 /dev/scd1 ~hpe/CDROMs/Cdrom1 -o norock,uid=501,gid=10,suid,mode=0550
;;
start2)
mount -t iso9660 /dev/scd2 ~hpe/CDROMs/Cdrom2 -o norock,uid=501,gid=10,suid,mode=0550
;;
start3)
mount -t iso9660 /dev/scd3 ~hpe/CDROMs/Cdrom3 -o norock,uid=501,gid=10,suid,mode=0550
;;
start4)
mount -t iso9660 /dev/scd4 ~hpe/CDROMs/Cdrom4 -o norock,uid=501,gid=10,suid,mode=0550
;;
start5)
mount -t iso9660 /dev/scd5 ~hpe/CDROMs/Cdrom5 -o norock,uid=501,gid=10,suid,mode=0550
;;
start6)
mount -t iso9660 /dev/scd6 ~hpe/CDROMs/Cdrom6 -o norock,uid=501,gid=10,suid,mode=0550
;;
start7)
mount -t iso9660 /dev/scd7 ~hpe/CDROMs/Cdrom7 -o norock,uid=501,gid=10,suid,mode=0550
;;
stop)
echo "Unmounting CD-ROMs.."
umount /dev/scd0
umount /dev/scd1
umount /dev/scd2
umount /dev/scd3
umount /dev/scd4
umount /dev/scd5
umount /dev/scd6
umount /dev/scd7
;;
stop0)
umount /dev/scd0
;;
stop1)
umount /dev/scd1
;;
stop2)
umount /dev/scd2
;;
stop3)
umount /dev/scd3
;;
stop4)
umount /dev/scd4
;;
stop5)
umount /dev/scd5
;;
stop6)
umount /dev/scd6
;;
stop7)
umount /dev/scd7
;;
*)
echo "Usage: rc.cdrom {start|stop|startn|stopn} where "n" is the CDROM drive ID"
exit 1
esac
exit 0
--
- Make the rc.cdrom script executable by running "chmod r+x rc.cdrom" - Make the mount points for the CD- Changer's CDs:
mkdir ~hpe/CDROMs/Cdrom0; mkdir ~hpe/CDROMs/Cdrom1; mkdir ~hpe/CDROMs/Cdrom2; mkdir ~hpe/CDROMs/Cdrom3;
mkdir ~hpe/CDROMs/Cdrom4; mkdir ~hpe/CDROMs/Cdrom5; mkdir ~hpe/CDROMs/Cdrom6; mkdir ~hpe/CDROMs/Cdrom7
- Change the permissions on the newly created dirs:
chown 550 ~hpe/CDROMs/Cdrom*
chgrp wheel ~hpe/CDROMs/Cdrom*
chown hpe ~hpe/CDROMs/Cdrom*
- Edit the "/etc/rc.d/rc.local" file and add the following lines at the end:
--
#Run the cdrom mount script
/etc/rc.d/rc.cdrom start
--