Click to See Complete Forum and Search --> : Slack 9.0 + CD-RW -> SCSI problems


Tireseas
07-18-2003, 03:29 AM
Hi all:

I am using Slackware 9.0 (I selected the newbie install option and then later deselected certain services packages for security reasons) with a 2.4.20 kernel, single boot, stand-alone system, with one HDD (HDA) and one CD-RW (HDB).
I am experiencing difficulties getting my system to recognise the SCSI emulation of my ATAPI CD-RW. The steps taken thus far:
1. added the append line to the lilo.conf file. The /etc/lilo.conf file now reads:



boot="/dev/hda1"
append="hdb=ide-scsi"
prompt
timeout="1200"
message=/boot/message
root=/dev/hda1
vga=773

image="/boot/vmlinuz"
label="vmlinuz"
root="/dev/hda1"
read-only

image=/boot/vmlinuz-ide-2.4.20
label="2.4.20"
root=/dev/hda1
read-only

image="/usr/src/linux/arch/i386/boot/bzImage"
label="Linux_Compiled"
root="/dev/hda1"
read-only
optional




2. I know that the CDROM is definitely hdb (I tested it using 'eject hdb' and it ejected, while hdc, etc did not).

3. I have downloaded and installed CDRtools-2.0-i386-1.tgz

4. I have run 'cdrecord -scanbus' as su, and basically I get an error message telling me that there is no appropriate device and that the /dev/pg* cannot be opened. This is that output:


Cdrecord 2.0 (i686-pc-linux-gnu) Copyright (C) 1995-2002 Jörg Schilling
cdrecord: No such file or directory. Cannot open '/dev/pg*'. Cannot open SCSI driver.
cdrecord: For possible targets try 'cdrecord -scanbus'. Make sure you are root.
cdrecord: For possible transport specifiers try 'cdrecord dev=help'.


5. I have also run a check using lsmod, this being the output of that:


Module Size Used by Not tainted
ppp_deflate 3256 0 (autoclean)
zlib_deflate 18200 0 (autoclean) [ppp_deflate]
bsd_comp 4312 0 (autoclean)
ppp_async 7520 1 (autoclean)
ppp_generic 15452 3 (autoclean) [ppp_deflate bsd_comp ppp_async]
slhc 5040 0 (autoclean) [ppp_generic]
soundcore 3332 0 (autoclean)
parport_pc 14724 1 (autoclean)
lp 6752 0 (autoclean)
parport 23264 1 (autoclean) [parport_pc lp]
8139too 15272 0 (unused)
mii 2240 0 [8139too]
uhci 24560 0 (unused)
ehci-hcd 14632 0 (unused)
usbcore 58144 1 [uhci ehci-hcd]
ide-scsi 8048 0
ipt_TOS 952 34 (autoclean)
ipt_LOG 3384 139 (autoclean)
ipt_TCPMSS 2360 3 (autoclean)
iptable_nat 14904 1 (autoclean)
ipt_tos 440 0 (unused)
iptable_mangle 2072 1
ipt_tcpmss 792 0 (unused)
iptable_filter 1644 1
ipt_multiport 664 0 (unused)
ip_conntrack_ftp 3888 0 (unused)
ipt_state 536 13
ip_conntrack 18016 3 [iptable_nat ip_conntrack_ftp ipt_state]
ipt_limit 856 142
ip_tables 11768 13 [ipt_TOS ipt_LOG ipt_TCPMSS iptable_nat ipt_tos iptable_mangle ipt_tcpmss iptable_filter ipt_multiport ipt_state ipt_limit]


6. modprobe yields nothing.

I have run out of options here, and scanning the docs really only points me towards the same solutions that I have already attempted. The only thing that I can think of then is that the lilo.conf file is wrong ... that I have too many image sections listed. If that is the case, I'm not sure whether to add the 'append' line to the remaining image blocks or to comment the second and third image blocks out entirely.

I am quite happy to read up more on this, but I am looking for some pointers/direction here, and I am not sure if I am looking at having to recompile the kernel or what ...

Help would be appreciated because this has become an exercise in frustration.
Thanks
-Andy

JusKickNit
07-18-2003, 04:09 AM
I run Slack 9 also and the only thing i can see is in my lilo.conf. The append command is the very first line before the boot line. I don't think it's because you have to many entries I have four.

MasonS
07-18-2003, 04:45 AM
I get the same error with cdrecord --scanbus but I'm able to use the burner just fine. I just assumed that the problem was that I was using scsi emulation and not a true scsi drive (though it seems silly now that I think about it). Have you tried writing any discs? If so, post those errors.

Also, instead of trying to eject a bunch of devices you can check your dmesg output and look for your drive (and many other devices as well).

When you said modprobe yields nothing which modules were you probing?

mdwatts
07-18-2003, 05:24 AM
The hdb=ide-scsi line is correct, but you do not have any of the required scsi emulation modules loaded which is kinda strange as hdb=ide-scsi should trigger those modules to load automatically.

Try loading manually (as root)

modprobe ide-scsi
modprobe cdrom
modprobe sr_mod
modprobe scsi_mod

Check after each modprobe with lsmod to see if the module you just loaded automatically loaded some of the other modules for you.

You may also require the sg.o module.

Tireseas
07-18-2003, 02:56 PM
OK - now I'm entering the Twilight Zone ...
I have just run the following line as root:



cdrecord dev=ATAPI -scanbus



and guess what!! I get an output that makes sense. So, wanting to explore this further, I set up xcdroast and burnt my first CD with Slackware!!!!!!! YAY!!!!
I don't understand it, but I ain't knocking it either!!!!

I wish I knew what the heck happened, and why it works even though it doesn't show up under 'cdrecord -scanbus'.

Maybe some enlightened Slack guru wants to shed a light on this?

Anyway, thanks to all who helped out and gave me encouragement and advice ... I wish I could say whether or not it helped, but we'll assume that it did and thanks to you all

freakmn
07-18-2003, 03:05 PM
Maybe this is a stupid question, but did you run lilo and reboot after editing lilo.conf?

Tireseas
07-18-2003, 03:36 PM
Oh yeah - numerous times ... each time I would try something new :)

Oh something else ... I followed someone's advice and did the following:

cd /dev
rm cdrom
ln -sf scd0 cdrom


Don't know if this helped or not, but now ... after having burnt a CD correctly - I can't read the darn thing because I am informed that /mnt/cdrom is "not a valid block device" and that "can't find /dev/scd0 in /etc/fstab or /etc/mtab" ... consequently, I cannot read my newly created CD to see what's on it!!!
Any suggestions on this one now :)
Cheers

JusKickNit
07-18-2003, 07:46 PM
Try /dev/sr0 that where my cdrom is

MasonS
07-19-2003, 02:19 AM
Your cdrom isn't scd0. In your original post you said that it was /dev/hdb so you need to change those directions you used accordingly and ln -sf hdb cdrom.

mdwatts
07-19-2003, 08:03 AM
Originally posted by MasonS
Your cdrom isn't scd0. In your original post you said that it was /dev/hdb so you need to change those directions you used accordingly and ln -sf hdb cdrom.

IDE cdr/w's use scsi emulation and are either assigned sr0/1 (master/slave device) or scd0/1 (again master/slave device).

Tireseas
07-19-2003, 01:51 PM
OK - fixed the problem (I think!! :) ):

I edited the /etc/fstab file, so that the relevant section now reads:

/dev/hdb /mnt/cdrom iso9660 auto,user,ro 0 0


This seems to work, and I can now mount it as /mnt/cdrom and eject it as /mnt/cdrom. Only thing is that now only su can umount it and I get an error message reading:

Cannot create link /etc/mtab~
Perhaps there is a stale lock file?

I get this message when I mount the drive as user as well as when I umount it as su. Once I have umounted it as su, I can then return to user and eject it.
Can't profess to understand it, but its working so I'm leaving well alone. At some point I may well back up my data now that I can burn CDs, do a fresh install and compile the new kernel for the AC'97 module, and once everything is working, reload all the data and take it from there.
Anyways, thanks for your help guys.
All the best
- Andy