<p>It is possible that nondeterminism depends on the SATA chipset, but I have a system in production where the drives are enumerated in the order they appear to the kernel. Furthermore... if I pull sdb out (yay hot swap) and put it back in, it&#39;ll get sdg (sdf is the last one assigned at boot time in this system).</p>

<p>I don&#39;t really worry about it, though, because I use the serial numbers, not the node names.</p>
<p>--<br>
Sent from my phone... a G2 running CM7 nightlies!</p>
<div class="gmail_quote">On Jun 16, 2011 4:56 PM, &quot;David Tomaschik&quot; &lt;<a href="mailto:david@systemoverlord.com">david@systemoverlord.com</a>&gt; wrote:<br type="attribution">&gt; On Thu, Jun 16, 2011 at 4:38 PM, Jim Kinney &lt;<a href="mailto:jim.kinney@gmail.com">jim.kinney@gmail.com</a>&gt; wrote:<br>
&gt;&gt; Sort of but not quite all correct. The hard drive chain was not changed<br>&gt;&gt; totally. Non-deterministic for pci-bus devices but still traceable with<br>&gt;&gt; lspci. Always non-d for usb (pita)<br>&gt;&gt;<br>
&gt;&gt; Hard drives follow a specific pattern:<br>&gt;&gt;<br>&gt;&gt; BIOS spills data to sys about drive locations. Bus num followed by device<br>&gt;&gt; num. That doesn&#39;t change &#39;cause it can&#39;t.<br>&gt;&gt;<br>
&gt;&gt; If a new drive is inserted at a lower bus numĀ  than other drives, it gets<br>&gt;&gt; called sda. Move the drive in socket 0 to socket 5 and it now is called sdf.<br>&gt;&gt;<br>&gt;&gt; But so what?! Most distros use UUID anyway so you can move your drives<br>
&gt;&gt; around between boots and it&#39;ll still work as long as the BIOS knows where<br>&gt;&gt; the /boot drive is. Cool thing is error messages will reflect the current<br>&gt;&gt; configuration.<br>&gt;&gt;<br>&gt;&gt; So if the bad drive is moved from sdb to sdf, on reboot the error will<br>
&gt;&gt; reflect the bad drive is sdf.<br>&gt;&gt;<br>&gt;&gt; So as long as drives stay plugged in the same, detection will be<br>&gt;&gt; deterministic but the name is not. Remember, empty sockets 0-5 and a single<br>&gt;&gt; drive in 5 will be called sda.<br>
&gt;&gt;<br>&gt;&gt; Thus by looking for the next to lowest numbered drive will reveal sdb, the<br>&gt;&gt; failed drive in the OP. :-)<br>&gt; <br>&gt; Unless, of course, there are udev rules that specify otherwise.<br>&gt; Serial # is still the most reliable way to be CERTAIN of what you&#39;re<br>
&gt; pulling.  Removing the wrong drive from a RAID can make your day very<br>&gt; bad.  (I&#39;ve placed SN labels on the visible end of drives in my home<br>&gt; system for exactly this reason.  Or paranoia.  Or because I like<br>
&gt; labels.  Take your pick.)<br>&gt; <br>&gt; <br>&gt; <br>&gt; -- <br>&gt; David Tomaschik, RHCE, LPIC-1<br>&gt; System Administrator/Open Source Advocate<br>&gt; OpenPGP: 0x5DEA789B<br>&gt; <a href="http://systemoverlord.com">http://systemoverlord.com</a><br>
&gt; <a href="mailto:david@systemoverlord.com">david@systemoverlord.com</a><br>&gt; <br>&gt; _______________________________________________<br>&gt; Ale mailing list<br>&gt; <a href="mailto:Ale@ale.org">Ale@ale.org</a><br>
&gt; <a href="http://mail.ale.org/mailman/listinfo/ale">http://mail.ale.org/mailman/listinfo/ale</a><br>&gt; See JOBS, ANNOUNCE and SCHOOLS lists at<br>&gt; <a href="http://mail.ale.org/mailman/listinfo">http://mail.ale.org/mailman/listinfo</a><br>
</div>