From mboxrd@z Thu Jan 1 00:00:00 1970 From: James Finnall Date: Thu, 03 Aug 2006 12:56:46 +0000 Subject: Re: Identical USB devices rules Message-Id: <200608030856.46951.James@Finnall.net> List-Id: References: <200608021809.13802.James@Finnall.net> In-Reply-To: <200608021809.13802.James@Finnall.net> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable To: linux-hotplug@vger.kernel.org Thank you for the response. From the udevinfo returned from the units the= y=20 are identical, even the serial number. Of course, the hard disk is most a= pt=20 to change every time I use the device so that info is not of any value to m= e. =20 The only thing I found I could use here was to write two rules and then sel= ect=20 them by the USB ID field, ID=3D"3-2" and ID=3D"3-4". At present that seem= s to=20 work OK on my system. I only have three USB ports and one is used for a U= SB=20 mouse. So I have to use the other two for operations like this. So I thin= k=20 these rules should be OK. So my rules lare ike below now. ID=3D"3-2",SYSFS{idVendor}=3D"0402", SYSFS{idProduct}=3D"5642", NAME=3D"dis= k/drv%n" ID=3D"3-4",SYSFS{idVendor}=3D"0402", SYSFS{idProduct}=3D"5642", NAME=3D"dis= k1/drv%n" Not really a good way to identify, because I think it so system specific on= =20 the hardware support. To allow identical devices to be distinguished=20 differently only by the actual port it is connected removes the true hot pl= ug=20 and play operation. Ideally, it shouldn't matter which port it is connecte= d=20 or at least it should be invisible to the user creating the rules. On my=20 system each port is both USB level 1 and USB level 2. These are different= =20 controllers and are on different busses. The "3" in ID=3D"3-2" indicates = it=20 is on buss 3 from what I am able to determine. My mouse is only USB level= 1=20 and it is on USB buss "2". The rules have to then be created for every=20 device multiple times if they are identical. For my instance, ideally, th= e=20 first drive connected to any port should get the first assignment. Then th= e=20 2nd drive connected gets the next assignment but within the single rule. = But with the rules above the drive that is connected to that specific port = will get the assigned devices, regardless of whether it is first or not. = Now, that may not always be undesirable either. Like my circumstances=20 cloning a hard disk, I think I actually prefer the method above. That way= I=20 know which drive is the source drive of the operation. Thank you once again for your consideration. James On Thursday 03 August 2006 03:38, Kay Sievers wrote: > On Wed, 2006-08-02 at 18:09 -0400, James Finnall wrote: > > New to the list and searched the archives some but unable to locate > > something on identical hotplug devices for writing rules. I am running > > udev and I had a custom rule for an external drive enclosure as follows: > > > > SYSFS{idVendor}=3D"0402", SYSFS{idProduct}=3D"5642", NAME=3D"disk/drv%n" > > > > This works as desired for either of my devices that are identical when > > only one is attached. But today I had a need to clone one drive to > > another using both devices at the same time. I found that udev assigned > > the device assignments to the 2nd drive unit as the first drive. > > > > The kernel originally used /dev/sde and /dev/sdf for each of the drives > > when they were connected. And of course these could change depending on > > what else may be connected at any given time by USB or IEEE1394. Being > > unable to identify them separately in a rule to be sequential, I could > > only remark out the rule above and then proceed with the kernel names > > that were assigned. > > > > Is there a way to sequentially assign the drives using the name > > convention above as in /dev/disk1/drv%n and /dev/disk2/drv%n when using > > multiple devices that are identical? > > Almost all recent distros ship the persistent disk links maintained by > udev which create /dev/disk/by-{id,label,uuid,path} directories and put > symlinks in there. If you clone disks you copy uuid and label, which > breaks by-label and by-uuid, but by-path should still work. If your > drive enclosure is not one of the real cheap ones, you get a serial > number there, which should make by-id work. > > Kay > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share > your opinions on IT & business topics through brief surveys -- and earn > cash > http://www.techsay.com/default.php?page=3Djoin.php&p=3Dsourceforge&CID=DE= VDEV > _______________________________________________ > Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net > Linux-hotplug-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=3Djoin.php&p=3Dsourceforge&CID=DEVD= EV _______________________________________________ Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net Linux-hotplug-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel