Pcnet32 Driver For Mac
Is there any way to swap network interfaces ( eth1 eth0) after system installation. My brand new Debian 6.0 install assigned PCI network card as ' eth0' and motherboards integrated network device as ' eth1' by default. The problem is I want to use the integrated device as default ( eth0) network interface. I already edited: /etc/udev/rules.d/70-persistent-net.rules to swap the names and everything seems to be ok and network is working but programs are still trying to use the PCI network card (which is now ' eth1') as the default interface. For example iftop now tries to use ' eth1' as default device as it used ' eth0' before the swap.
Is this purely a software problem as the applications are trying to use the first found device as a default device despite their interface naming or is there any way to fix this by configuring OS? Edit: I wrote a small app to print out iflist and the PCI device ( eth1) came up before ' eth0'. Any ideas how to swap the device order. Edit: I found a about the same problem and I tried everything they suggested and none of the solutions are working except for swapping the names 'virtually'. I am answering to my own question now because I finally found a workaround for this problem. I found out that it is possible to reorder the devices by unloading the drivers and then loading them in correct order. First method (bruteforce): So the first method I came up with was simple to bruteforce the driver reload with init.d script.
Following init script is tailored for Debian 6.0, but the same principle should work on almost any distribution using proper init.d scripts. #!/bin/sh -e ### BEGIN INIT INFO # Provides: reorder-nics # Required-Start: # Required-Stop: # Default-Start: S # Default-Stop: # Short-Description: Reloads the nics in correct order ### END INIT INFO # # This script should reload the nic drivers in corrected order. # Basically it just unloads and then loads the drivers in different order. # echo 'Reloading NICs!' # unload the drivers modprobe -r driver0 # eth0 nic interface modprobe -r driver1 # eth1 nic interface # load the drivers in corrected order modprobe driver1 modprobe driver0 #EOF Then the script must be added to proper runlevel directory. This can be done easily on Debian with ' update-rc.d' command. For example: update-rc.d reorder-nics start S Second method (Better I think): I also found a bit more elegant way (at least for Debian & Ubuntu systems).
Hp Printer Driver For Mac
First Make sure that kernel doesn't automatically load the NIC drivers. This can be done by creating a blacklist file in /etc/modprobe.d/. I created a file named ' disable-nics.conf'. Note that files in /etc/modprobe.d/ must have.conf suffix.
Also naming modules in /etc/modprobe.d/blacklist.conf do not affect autoloading of modules by the kernel, so you have to make your own file. # Disable automatic loading of kernel driver modules # Disable NIC drivers blacklist driver0 # eth0 by default blacklist driver1 # eth1 by default Then run ' depmod -ae' as root Recreate your initrd with ' update-initramfs -u' And finally add the driver names in corrected order into /etc/modules file. # /etc/modules: kernel modules to load at boot time. # # This file contains the names of kernel modules that should be loaded # at boot time, one per line. Lines beginning with '#' are ignored. # Parameters can be specified after the module name. # drivers in wanted order driver1 # this one should be loaded as eth0 driver0 # this one should be loaded as eth1 Changes should come in effect after the next boot.
Reboot is not necessary though; it's easy to switch the devices with following command (as root, of course): modprobe -r driver0; modprobe -r driver1; modprobe driver1; modprobe driver0 Some useful links I found while searching the solution:. You can't change which interface is used by default in applications like iftop. They call the C library function and use the first element in the returned array by default. GNU libc's ifnameindex on Linux is a thin wrapper around the. That returns interfaces in a fixed order, based on the order in which the network drivers were initialized and the order in which each driver detected each device.
If you really don't want to have to pass -i to iftop and similar programs, you can make a small wrapper around ifnameindex that reorders the elements in the returned list, with. I would call that a lot more trouble than it's worth.
Hey, That's a strictly Linux issue. There is a daemon on Linux, UDEV (that controls naming of the Ethernet devices. This can be customized as per the link.
This also resolves at least one case of the error you posted. For other solutions, see eth0 does not seem to be present (here as well. But again, it's all Linux based.