From: Bit Twister on
On Tue, 11 May 2010 13:09:22 +0000 (UTC), J G Miller wrote:
> On Tue, 11 May 2010 04:30:24 +0000, Robert Riches wrote:
>
>> To force a particular sound card to be seen first, put
>> something like this in /etc/modprobe.conf:
>>
>> options snd slots=snd-intel8x0
>
> I thought the actual syntax was along the lines of
>
> options snd_module_for_device_to_be_first index=0
> options snd_module_for_device_to_be_second index=1

What worked for me was
options snd slots=snd_atiixp,snd_hda_intel

New video card's hdmi was picked as my audio driver until I set the above
to use motherboard's audio hardware.
From: Tauno Voipio on
On 11.5.10 2:33 , Pascal Hambourg wrote:
> Rahul a �crit :
>> I have 2 different eth cards in a bunch of machines: a 1Gig and a 10Gig.
>> Each is a different vendor. How can I always make the 1 Gig come up as eth0
>> and the 10Gig as a eth2?
>>
>> The MACs are of course all different, but the first 4 places of each vendor
>> are unique. i.e. Vendor1's cards (the 1GigE's) start with 00:26 and the
>> Vendor2's (10 Gig) with 00:07.
>>
>> Normally I net install the machines automatially using PXE+Kickstart. I am
>> using CentOS 5.4.
>>
>> Is udev the correct solution? I tried adding to /etc/udev/rules.d a file
>> havin the line:
>>
>> KERNEL="eth*" ATTR{address}=="00:07:*" NAME="eth2"
>>
>> but it didn't seem to work. Are there any other solutions? Or maybe I am
>> doing something wrong?
>
> Shouldn't it be KERNEL=="eth*" (with double =) ?
> If the wildcard on the MAC address does not work and if the interfaces
> use different drivers, you may try to match them with a DRIVER key.

Yes, it has.

I crashed one system to an un-startable state by one such error,
which mixed up the names of the disks.

To debug, use udevadm with the monitor options.

--

Tauno Voipio
tauno voipio (at) iki fi

From: Rahul on
Robert Heller <heller(a)deepsoft.com> wrote in
news:keudnbhvoeqisHTWnZ2dnUVZ_sSdnZ2d(a)posted.localnet:

> The order is a matter of the order on the PCI buss(es), as seen by the
> BIOS's POST code. So for a given model motherboard (and its BIOS) and
> a given order of cards in PCI slots, yes, the order will be the same
> for all instances of that specific model motherboard, with those NICs in
> that partitular slot ordering of cards. The BIOS's POST code has a hard
>

Not true in my case at least. I can boot the same machine or another
identical machine and the card order keeps changing.

--
Rahul
From: marrgol on
On 2010-05-11 07:28, Rahul wrote:
> There seems to be one other confounding factor. I find files
> of this sort:
>
> cat /etc/sysconfig/network-scripts/ifcfg-eth0
> # Broadcom Corporation NetXtreme II BCM5716 Gigabit Ethernet
> DEVICE=eth0
> HWADDR=00:26:B9:58:EB:0A
> ONBOOT=yes
>
> This seems to be overriding what I put in udev. Any idea what produces this
> file with an hardcoded HWADDR?

kudzu does when detecting new hardware.

OK, I've found it interesting so I played with this today a little
and here's what had worked for me:

~ # ip link show eth0; ip link show eth1
3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
qlen 1000^M
link/ether 08:00:27:11:11:11 brd ff:ff:ff:ff:ff:ff^M
2: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
qlen 1000^M
link/ether 08:00:27:22:22:22 brd ff:ff:ff:ff:ff:ff^M
~ #
~ # ifdown eth0
~ # ifdown eth0
~ #
~ # vi /etc/udev/rules.d/59-persistent.net.rules
~ # cat /etc/udev/rules.d/59-my.net.rules
KERNEL=="eth*", ACTION=="add", SYSFS{address}=="08:00:27:11:*", NAME="eth1"
KERNEL=="eth*", ACTION=="add", SYSFS{address}=="08:00:27:22:*", NAME="eth2"
~ #
~ # rm /etc/sysconfig/network-scripts/ifcfg-eth[01]
~ #
~ # vi /etc/sysconfig/hwconf # edit to remove sections containing \
info about these two network interfaces (look for the word NETWORK \
or the MACs).
~ #
~ # shutdown -r now

Instead of the reboot, you can run "udevcontrol reload_rules",
use ifrename or unload/load the cards' drivers, run kudzu
and finally ifup the "new names".

--
mrg

From: marrgol on
On 2010-05-12 04:06, marrgol wrote:
> ~ # ifdown eth0
> ~ # ifdown eth0
> ~ #
> ~ # vi /etc/udev/rules.d/59-persistent.net.rules
> ~ # cat /etc/udev/rules.d/59-my.net.rules

Damn, I knew it was a bad idea writing it at 4 AM... :-/

I meant:

~ # ifdown eth0
~ # ifdown eth1
~ #
~ # vi /etc/udev/rules.d/59-my.net.rules
~ # cat /etc/udev/rules.d/59-my.net.rules


--
mrg