无需物理访问即可重置 USB 调制解调器(KVM 虚拟机)

无需物理访问即可重置 USB 调制解调器(KVM 虚拟机)

我使用 USB 调制解调器将虚拟机连接到互联网。因此主机和客户机不共享相同的 IP/网络。我通过 进行模拟qemu-kvm,设备转发与 配合得很好*-usb -usbdevice host:1c9e:9603*。虚拟机使用 Ubuntu 10.04,主机使用 11.10。

不幸的是,调制解调器在大约 3 天后就卸载了。显然,从现在开始无法建立连接。虚拟机重新启动后,可以再次建立连接。

nmcli可用于建立互联网连接并检查其是否仍处于活动状态。但是如何使用小型 bash 脚本重新安装设备/调制解调器?

下面的系统日志显示了设备使用约 3 天后如何拔掉电源:

pppd[1369]: LCP terminated by peer
pppd[1369]: Connect time 1104.9 minutes.
pppd[1369]: Sent 1279 bytes, received 790 bytes.
kernel: [66423.705380] device ppp0 left promiscuous mode

pppd[1369]: Modem hangup
pppd[1369]: Connection terminated.

avahi-daemon[424]: Withdrawing workstation service for ppp0.
modem-manager[483]: <info>  (ttyUSB2) closing serial port...

NetworkManager[431]:    SCPlugin-Ifupdown: devices removed (path: /sys/devices/virtual/net/ppp0, iface: ppp0)
NetworkManager[431]: <info> (ttyUSB2): now unmanaged
NetworkManager[431]: <info> (ttyUSB2): device state change: 8 -> 1 (reason 36)
NetworkManager[431]: <info> (ttyUSB2): deactivating device (reason: 36).
NetworkManager[431]: <warn> could not read ppp stats: No such device
NetworkManager[431]: <info> (ttyUSB2): cleaning up...
NetworkManager[431]: <info> (ttyUSB2): taking down device.
NetworkManager[431]: <info> Unmanaged Device found; state CONNECTED forced. (see http://bugs.launchpad.net/bugs/191889)

nm-dispatcher.action: Error in get_property: Method "Get" with signature "ss" on interface "org.freedesktop.DBus.Properties" doesn't exist#012
modem-manager[483]: <info>  (ttyUSB2) serial port closed
modem-manager[483]: <info>  Modem /org/freedesktop/ModemManager/Modems/0: state changed (connected -> disconnecting)
modemqemu-kvm-manager[483]: <info>  Modem /org/freedesktop/ModemManager/Modems/0: state changed (disconnecting -> connected)

pppd[1369]: Exit.
NetworkManager[431]: <info> disconnect failed: (32) The serial port is not open.

我担心,在虚拟机上重新启动这些 USB 守护程序是不够的 - 因为我必须告诉 qemuKVM 管理器再次转发该设备。但那将是第二步。

答案1

我试过http://marc.info/?l=linux-usb&m=121459435621262&w=2c 程序重置 usb。

$ cc usbreset.c -o usbreset
$ lsusb
Bus 002 Device 003: ID 0fe9:9010 DVICO
$ chmod +x usbreset
$ sudo ./usbreset /dev/bus/usb/002/003

UMTS 调制解调器消失了约 20 秒,然后又出现在虚拟机中。幸运的是,它被 qemu 管理器自动重定向了!

问题仍然存在不是已解决,因为 3 天后即使这个 USB 重置也无法让我建立正常运行的连接。

重新启动虚拟机是我的最后手段......

@ppetraki:

调制解调器不会从网络管理器中消失,它仍然在那里,但无法建立连接。

相关内容