Red HatThis forum is for the discussion of Red Hat Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I am having some difficulty with the cdrom device. I like to know during installation which module / script will be creating /dev/* entries. I am more interested about /dev/cdrom and /dev/scd[0-9] etc.
If you are using a recent 2.6 kernel, I believe (not sure) that these entries are created dynamically at run time instead of at installation time. Do an internet search on udev if you want to look up info on this.
If you are using a 2.4 kernel, hotplug (a/ script(s)) typically deals with the device nodes in /dev.
With 2.6 kernels, hotplug is replaced by the UDEV system (a program and script(s).
I think this is pretty universal, but some distributions may have slight variations on each thing.
What exactly are you trying to do? And with what distribution? During boot, you mean, or actually during installation? During installation of a system, I don't know if any device nodes are specifically created, or if they would be created for the first time upon the first reboot when installation is done.
And as stated by the above person, /dev nodes are re-created dynamically after each boot.
Last edited by GrapefruiTgirl; 03-28-2007 at 10:41 PM.
Thanks for the replies. I am trying to install RHEL AS3 U8. In this cdrom drive will be emulated as scsi drive by setting a boot parameter as hdc=ide-scsi. But for the device to be emulated as scsi, the device node to be used has to be /dev/scd0 where as in AS3 U8 /dev/cdrom is a symlink to /dev/hdc. ( I checked in U6 and it is being created correctly. /dev/cdrom ->/dev/scd0 ) so if it is set like this, I cannot mount cdrom drive. If I change the link /dev/cdrom to point to /dev/scd0, cdrom can be mounted. So got a kind of confused on why it got changed in U8, and how it can be rectified.
As you said udev is creating this, I also got this hint some times back .. but I didn't get much idea on what how it is done and how udev works in RHEL AS3. Any pointers to that .. ??
When you say it will be dynamically created, will it be at boot time or even during run time it will be changed. I guess it is during boot time ???
I want to see why does udev create a link pointing to /dev/hdc instead of /dev/scd0.
RE: "How UDEV works in RHEL AS3"..... I suppose it works the same way as in any distribution. I can't be specific to RH as I use Slackware, but I am assuming that UDEV is UDEV, regardless of the Linux version. To be vague and simplistic the computer saves the /dev directorys contents at shutdown, so that any special or weird human-made nodes are preserved, and upon reboots, the machine detects all the hardware, drives, devices, etc, and creates the needed nodes for them, plus any human-made or weirdo nodes.
UDEV also uses (depending on the system) a RULES file (or several of them) and ALIASES to create special device links.
As for why exactly RH is creating a dev-link to hdc instead of scd0, I have no idea, but the CDROM device is *probably* not an actual scsi device, but in your case, you are needing direct native-scsi functionality to get the drive to do what you want it to do. ATA/ATAPI and most similar optical drives use the scsi command set internally anyways; it's just 'wrapped' with something newer (ATAPI) unless the drive is very old or very rare.
In any case, just delete the sym-link you don't want, and make a new one and it should remain in place across reboots and you'll forget all about it! The man page for the ln command gives details, but in case you don't know, you'll want something like:
ln -s /dev/new-link /dev/scd0
thanks a lot for the detailed reply. I changed the link and it works well now. But thought of doing some more research - that is why dig into depth.
I am a bit confused about the scsi emulation. At what circumstances we kernel for for scsi emulation for cdrom drive - any idea ? Is it mandatory for all the cdrom drives ( I don't think so ) or is it required for some of the drives ( I think yes !! ) .. what parameter decides that scsi emulation is required for this cdrom .. ??? any pointers ..
I personally cannot answer that question--- I would try Google, and searching for related threads on LQ here.
Also, try the man pages for lilo, mount, fstab, lilo.conf.
I don't know what reason(S) *exactly* make it necessary to use hdx=ide-scsi|ide-cdrom or similar parameters. You are right it is not mandatory most of the time, but is probably absolutely necessary for a few devices..
Best of luck If you find conclusive/concise info, please do post it.
On 2.4 kernels you need that entry in boot, but for recent 2.6 kernels, emulating a scsi device isn't necessary. It may have to do with the version of cdrecord that you have. If it is a recent version then I doubt whether you still need to do it. I haven't had to for the last couple years at least.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.