如何“断开”网络接口

如何“断开”网络接口

我想删除 Ubuntu 11.10 桌面上未使用的网络接口但失败了。

virbr0    Link encap:Ethernet  HWaddr 16:13:97:0c:0f:4f
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:19 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:4800 (4.8 KB)

me@linux:~$ sudo ifconfig virbr0 down
me@linux:~$ sudo ifconfig virbr0 unplumb
unplumb: Unknown host
ifconfig: `--help' gives usage information.

unplumb似乎在 Solaris 中可用,但在 Ubuntu 中不可用。有什么想法吗?

答案1

使用以下命令

ifconfig virbr0 down
brctl delbr virbr0

(大多数时候 virbr0 是由 Virtualbox 或 Xen 之类的虚拟机管理程序创建的桥梁)

答案2

该过程的完整解释如下这篇 LWN 文章,但这里有一个片段:

在 sysfs 树中,每个驱动程序现在都有与其关联的绑定和取消绑定文件:

$ tree /sys/bus/usb/drivers/ub/
/sys/bus/usb/drivers/ub/
|-- 1-1:1.0 -> ../../../../devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0
|-- bind
|-- module -> ../../../../module/ub
`-- unbind

为了从驱动程序解除设备绑定,只需将设备的总线 ID 写入解除绑定文件:

echo -n "1-1:1.0" > /sys/bus/usb/drivers/ub/unbind

相关内容