×
新网 > 虚拟主机 > 正文

虚拟机VMware下的UbuntuUSB设备识别问题的解决方法

  • 作者:新网
  • 来源:新网
  • 浏览:100
  • 2018-05-12 11:06:16

先确定u盘的位置:如果你的Linux操作系统是安装在虚拟机上的,那么首先打开虚拟机进入Linux系统。注意:首先确认把当前活动界面是定位在Linux系统上的,然后把U盘插到电脑的USB接口上。

   先确定u盘的位置:如果你的Linux操作系统是安装在虚拟机上的,那么首先打开虚拟机进入Linux系统。注意:首先确认把当前活动界面是定位在Linux系统上的,然后把U盘插到电脑的USB接口上。

<div>  此时,在Linux里以root身份运行#fdisk -l(#号不用输入)命令(或者直接输入命令:#sudo fdisk -l),然后观察命令运行的结果(如下图所示),看看有没有与你的u盘容量、文件系统格式相符的设备符号出来。如果能找到的话,那出来的结果应该和下图类似(图1处为系统为当前虚拟机分配的空间;图2显示的即为所插U盘的容量大小;图3为U盘的硬盘分区文件名:/dev/sdb1 即第二个(b)SCSI硬盘(sd)的第1分区);如果没有找到相符的设备符号,则跳过以下的步骤看下面的方法。

30b1OOOPICb6.jpg
  或者第一步也可以这样:在保证当前焦点在Linux操作系统中,在命令终端中先执行#cat /proc/partitions这条命令来查看当前系统中有哪些分区;插上U盘之后再执行#cat /proc/partitions命令来查看多出来什么分区(通常是多出来sda1,由于我的是在虚拟机下装的,所以多出来的是sdb1),所以也可以找到当前U盘的位置即为:/dev/sdb1。
  创建挂载位置
  一般都是挂载在/mnt 文件夹之下,因为mnt文件夹主要存放光盘,软盘等移动存储介质的信息。运行命令#sudo mkdir /mnt/usb,在/mnt目录下新建一个/usb目录。
  挂载U盘
  由第一步的U盘位置和第二步创建的挂载位置就可以执行第三条指令了,
  #sudo mount -t vfat /dev/sdb1 /mnt/usb
  参数-t vfat指明挂载的文件类型,U盘一般为vfat(文件系统为Fat32格式)格式;如果你U盘的文件系统为ntfs,那么参数改为-t ntfs;如果文件系统为Fat16,那么参数相应改为-t msdos;如果文件系统为ext2,那么参数改为-t ext2。如果执行完命令后不出现提示信息,就说明挂载成功了。
  挂载成功后,输入命令#cd /mnt/usb后就可以看到你U盘中的东西了。
  卸载U盘
  #sudo umount /mnt/usb
  上面的命令就是卸载U盘的命令,后面的那个路径/mnt/usb就是上面第三步中挂载U盘的位置。(注意在/mnt/usb路径下直接运行这个命令是卸载不了的,要到根目录下或者其他目录下才可以;当执行完这个命令后,你的U盘上的指示灯可能仍然亮着,这不代表卸载失败,因为Linux对U盘的管理是内核模块式,只要usb设备的内核模块没有移除,卸载完后指示灯仍然是亮着的。)
  还可以用启动VMware USB Arbitration Service 服务的方法。
  问题现象:接通虚拟机电源后就会出现下面提示“Host USB device connections disabled.
  The connection to the VMware USB Arbitration Service was unsuccessful.Please check the status of this service in the Microsoft Management Console.”在虚拟机Linux系统下插入U盘也不能被识别。
  问题原因:VMware USB Arbitration Service 服务没有启动。
  解决方法为:右键我的电脑,点击管理-服务和应用程序-服务,找到VMware USB Arbitration Service,右键点击,启动即可;或者直接在命令行中输入:#net start VMUSBArbService亦可。
  方法三:卸载ehci_hcd 模块,加载uhci_hcd 模块。
  问题现象:在Linux下查找不到U盘信息,即系统识别不出来U盘。
  问题原因:ehci可能和usb2.0支持有关。
  解决方法:
  1、卸载ehci_hcd 模块,命令 #rmmod ehci_hcd
  2、加载uhci_hcd 模块,命令 #modprobe uhci_hcd
  然后,插上U盘试试,若U盘不自动出来,用命令fdisk -l 看看是否出现U盘相关的设备还不行的话,把ohci_hcd模块也卸载掉,再次加载hci_hcd模块再试试。
  ehci可能和usb2.0支持有关,不知道具体作用。可以参考下面这段话:
  要理解EHCI及其同类是什么,首先要知道每块支持插入 USB 设备的主板或 PCI 卡都需要有 USB 主控制器芯片组。这个特别的芯片组与插入系统的 USB 设备进行相互操作,并负责处理允许 USB 设备与系统其它部分通信所必需的所有低层次细节。
  Linux USB驱动程序有三种不同的 USB 主控制器选项是因为在主板和 PCI 卡上有三种不同类型的 USB 芯 片。EHCI驱动程序设计成为实现新的高速USB 2.0 协议的芯片提供支持。OHCI驱动程序用来为非 PC 系统上的(以及带有 SiS 和 ALi 芯片组的 PC 主板上的 USB 芯片提供支持。UHCI驱动程序用来为大多数其它 PC 主板(包括 Intel 和 Via)上的 USB 实现提供支持。只需选择与希望启用的USB 支持的类型对应的"?HCI"驱动程序即可。如有疑惑,为保险起见,可以启用EHCI、 UHCI(两者中任选一种,它们之间没有明显的区别和OHCI。(根据文档,EHCI已经包含了UHCI和OHCI,但根据目前的测试,单独加EHCI是不行的,通常的做法是根据主板类型加载UHCI或OHCI后,再加载EHCI这样才可以支持USB2.0设备)。

免责声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,也不承认相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,请发送邮件至:operations@xinnet.com进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

免费咨询获取折扣

Loading