Firstly I would like to say that I have been using Arch Linux for a while now, and it is the best distro I have ever used. I would say it is halfway between Debian and Slackware, which is pretty much exactly what I wanted!
I have a problem, however, and I was just wondering if anyone could please spare the time to help me.
I recently switched my system to use UDev. I did this using the guide in the Wiki, and it seems like it is all going well except for one small thing. When I plug in my mp3 player, which basically works exactly like a USB hard disk drive in terms of transferring files, a device node is not created under the /dev directory... or if it is, I cannot find it! I even have this problem if I boot up with the device plugged in.
Now I know that the device is detected properly, because when I plug it in, the correct kernel module (usb_storage) is loaded. I can see it with lsmod. I can also see all the device information in the file /proc/bus/usb/devices. As far as I know, the kernel module is loaded by hotplug, so presumably a hotplug event is generated, which should, as I understand things, cause udevd to create a device node based on the udev.rules file. This does not happen.
Back in the dark (yet USB-Storage friendly) days of DevFS, the device was located under the node /dev/sda, so I assumed that this was the kernel name for the device. I added the line:
in an attempt to make the device node be generated. Alas, this was to no avail, still no device node! I tried another line, which I was sure must catch the device if it were present:
but once again, the node is missing.
Does anyone know what I am doing wrong here? Maybe one of these things is the answer:
1) Perhaps I am missing a required kernel module, I do not know. I am using a custom 2.6.9 kernel, does anybody know the minimum kernel options required for usb storage support? I would have thought it was just usb_storage, but I am no expert.
2) Perhaps I have made an error in writing the udev.rules file, but I do not know where the error could be.
Well whatever it is, please help me! Thanks in advance.
Probably your personal user have no permissions on the sda devs.
Just add your user to the group "disk", and (I think) your USB storage dev will work again.
"...archoholism is a hard disease to cure..."
Perhaps you are looking for the wrong file. My usb-devices changed from sd* to ub* after a kernel-upgrade.
I may be totally wrong here - but i thought udev used the long named version - similar to /dev/discs/disc/disc0 or soemthing regardless of scsi/ide....
as far i know, /dev/discs/disc/disc0 is devfs, but we have it in archlinux for compatiblity reasons ... you can set permissions the way you want them to be
since usb-storage is now ub, it is not longer under scsi NOR ide ... and i don't think, someone set /dev/ud* -> /dev/discs/ rules for udev in arch
The impossible missions are the only ones which succeed.
maybe this one will help you!
Ah, thanks very much! Yes, apparently having the usb_storage module is just not enough, you need to compile in the SCSI disk drivers too. I don't know why this is, and I don't know why it isn't automatically selected when you select usb_storage, but there you go. That's just how it bes. You know I didn't think that the SCSI thing could be the cause, because I read somewhere that you no longer need it for USB disk support, but I think they were probably getting it all confused with not needing SCSI for CD-writing. Anyway, it all works fine now! Plug it in, device node created. Pull it out, device node goes away. Hurrah! UDev is the coolest.
Thanks again for your help.