Problème udev

Bonjour à tous,

J’ai installé une machine virtuel avec virtualbox,(dernière version de debian 7 32) tout est opérationnel, mais j’ai remarqué, que dans le dossier “/etc/udev/rules.d/”, il n y a pas le fichier “70-persistent-net.rules”, alors que j’ai bien du réseau. Si j’ajoute une nouvelle carte réseau, au reboot, elle n’apparaît , et bien entendu le fichier rules n’existe toujours pas!
Mais si je fais ifconfig eth1 up la carte apparaît.

J’ai lu sur le net qu’avec le noyau 3.2 il y avait ce genre de problème avec les machines virtuels.
Car avec un noyau en 2.6 et sous squeeze, pas de soucis le fichier “70-persistent-net.rules” est bien présent, ainsi que d’autres…

Merci de m’aiguiller, pour comprendre ce problème.

Elle apparaît ou n’apparaît pas ? Où ?
Le fichier rules d’udev n’est pas indispensable pour utiliser des interfaces réseau. On perd juste le nommage persistant, ce qui peut être gênant si les interfaces n’ont pas toujours le même nom par défaut.

Ifconfig up ne crée pas d’interface mais ne fait que l’activer, donc eth1 existait déjà et il suffisait de l’activer et de la configurer, par exemple dans /etc/network/interfaces.

merci de la réponse

Mais pourquoi sous une machine physique, le fichier rules est présent? Mais pas sous une virtuel, alors qu’avant le noyau 3.2 de debian , il n’y avait pas de soucis.

Quel type d’interface réseau utilises-tu dans la machine virtuelle, avec quel module pilote ? Emulation d’une carte réseau physique quelconque ou carte virtuelle propre au système de virtualisation ?
J’ai cru comprendre qu’udev ne crée pas de règles pour certaines interfaces réseau dont aucun des “parents” ne définit la valeur DRIVER (c’est le cas notamment, et cela se comprend, des interfaces virtuelles de type bridge, bonding, VLAN…)
Qu’affiche la commande suivante ?

la commande donne:

[code] looking at device ‘/devices/pci0000:00/0000:00:11.0/0000:02:01.0/net/eth0’:
KERNEL=="eth0"
SUBSYSTEM==“net"
DRIVER==”"
ATTR{addr_assign_type}=="0"
ATTR{addr_len}=="6"
ATTR{dev_id}==“0x0"
ATTR{ifalias}==”"
ATTR{iflink}=="2"
ATTR{ifindex}=="2"
ATTR{type}=="1"
ATTR{link_mode}=="0"
ATTR{address}=="00:0c:29:a4:cf:47"
ATTR{broadcast}=="ff:ff:ff:ff:ff:ff"
ATTR{carrier}=="1"
ATTR{dormant}=="0"
ATTR{operstate}=="unknown"
ATTR{mtu}=="1500"
ATTR{flags}=="0x1003"
ATTR{tx_queue_len}=="1000"
ATTR{netdev_group}==“0”

looking at parent device ‘/devices/pci0000:00/0000:00:11.0/0000:02:01.0’:
KERNELS=="0000:02:01.0"
SUBSYSTEMS=="pci"
DRIVERS=="pcnet32"
ATTRS{vendor}=="0x1022"
ATTRS{device}=="0x2000"
ATTRS{subsystem_vendor}=="0x1022"
ATTRS{subsystem_device}=="0x2000"
ATTRS{class}=="0x020000"
ATTRS{irq}=="19"
ATTRS{local_cpus}=="ffffffff"
ATTRS{local_cpulist}=="0-31"
ATTRS{dma_mask_bits}=="32"
ATTRS{consistent_dma_mask_bits}=="32"
ATTRS{enable}=="1"
ATTRS{broken_parity_status}==“0"
ATTRS{msi_bus}==”"
ATTRS{label}=="Ethernet0"
ATTRS{acpi_index}==“16777736”

looking at parent device ‘/devices/pci0000:00/0000:00:11.0’:
KERNELS=="0000:00:11.0"
SUBSYSTEMS==“pci"
DRIVERS==”"
ATTRS{vendor}=="0x15ad"
ATTRS{device}=="0x0790"
ATTRS{subsystem_vendor}=="0x15ad"
ATTRS{subsystem_device}=="0x0790"
ATTRS{class}=="0x060401"
ATTRS{irq}=="0"
ATTRS{local_cpus}=="ffffffff"
ATTRS{local_cpulist}=="0-31"
ATTRS{dma_mask_bits}=="32"
ATTRS{consistent_dma_mask_bits}=="32"
ATTRS{enable}=="1"
ATTRS{broken_parity_status}=="0"
ATTRS{msi_bus}==“1”

looking at parent device ‘/devices/pci0000:00’:
KERNELS==“pci0000:00"
SUBSYSTEMS==”“
DRIVERS==”"
[/code]

Mes connexions réseaux fonctionnent correctement, mais ces juste pour comprendre la différence.

Merci

C’est pour eth0, pas eth1. On peut voir que le premier parent a l’attribut DRIVERS==“pcnet32”, il s’agit donc d’une classique émulation de carte réseau AMD PCnet32 PCI et udev devrait normalement créer une règle de nommage persistant. Pas d’autre idée, désolé.