热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

linux系统下在virtualbox虚拟机中使用usb设备

在UbuntuLinux下使用软件源中默认的VirtualBoxOSE时因为是开源版本所以不能使用USB端口,若想在Linux下使用USB设备的话你就需要安装VirtualBox虚拟机的闭源版本,其闭源版本可以到VirtualBox官方网站http://www.virtualbox.org/下载对你应
    在 Ubuntu Linux 下使用软件源中默认的 VirtualBox OSE 时因为是开源版本所以不能使用 USB 端口,若想在 Linux 下使用 USB 设备的话你就需要安装 VirtualBox 虚拟机 的闭源版本,其闭源版本可以到 VirtualBox 官方网站 http://www.virtualbox.org/ 下载对你应你系统的版本并安装,也可以在 Debian 和 Ubuntu 等支持软件源的 Linux 中添加 VirtualBox 官方的源在命令模式或软件管理器中安装。下面就简单介绍一下将 VirtualBox 闭源版本的源添加到 Ubuntu 8.10 软件源中去,添加源 到软件源中的好处是可以在以后让 Ubuntu 自动检查 VirtualBox 软件的更新。
    首先,点击 Ubuntu 中的 系统 -> 系统管理 -> 软件源 ,打开 软件源 设置页后再点击 第三方软件 -> 添加 ,在 添加 项中填入下面代码,以下代码仅对 Ubuntu 8.10 版本:
deb http://download.virtualbox.org/virtualbox/debian intrepid non-free 
若使用的是 Ubuntu 8.04 版本,请填入以下代码:
deb http://download.virtualbox.org/virtualbox/debian hardy non-free
    因为各版本的代号不一样,所以要选择你对应版本的版本代码。正确填入以上第三方源代码后确认并关闭 添加 界面,但建议先不要关闭 软件源 设置页,因为还有条命令要在终端执行,打开终端后输入以下命令:
wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add - 
    命令执行完成后便可以关闭 软件源 设置页面了,关闭后会自动重新更新软件源中的包(前面建议不要先关闭 软件源 设置页的原因就是为了少更新一次,因为如果你的源或网络不是很好的话每更新一次都要花一定时间)。
    经过以上步骤添加完成后便可以进行安装了,可以打开 系统 -> 系统管理 -> 新立得软件包管理器 在 新立得 中搜索 “VirtualBox” 并安装。搜索中可能有 “VirtualBox OSE” 项,那是 Ubuntu 源中默认带有的 VirtualBox 虚拟机的开源版本,如果你已经安装了 VirtualBox OSE 版本,那么请先卸载 VirtualBox OSE 版本再安装 VirtualBox 版,也就是闭源版本。卸载 VirtualBox OSE 版本后再安装 VirtualBox 原来在 VirtualBox OSE 版本中安装的虚拟系统数据还可以在闭源版中继续使用。
    在安装完成闭源版本后 USB 设备并不是直接可以使用的,首先确认你对应虚拟机中系统的 USB 端口是打开的,如下图:

    如果 USB 设备没有 启用 则需点击如上图中 USB 设备 项或在 设置 中找到 USB 设备 项,如下图中钩选相应选项来启用虚拟机对应系统的 USB 设备端口。

    如果你没有 系统管理员权限 来使用 VirtualBox 的话可能你打开对应的虚拟系统后只能在系统框的 设备 选项中显示 USB 设备 但并不能钩选来启用已经识别并显示的 USB 设备,因为你的默认权限不够,需要使用 系统管理员权限 来设置你对应帐户的 USB 使用 权限。
    下面再说一下Linux 下 USB 设备使用权限的设置方法,如果你的电脑仅仅自己使用不去考虑 USB 设备使用的安全性,那么你可以在终端输入以下命令来打开设置页:
sudo gedit /etc/fstab 
    在设置页的最后换行并加上以下文字:
# 对所有用户开放 USB 设备 的读写权限 
none /proc/bus/usb usbfs devmode=666 0 0 
    这样,在你的普通权限帐户中重新打开你已经启用 USB 端口 的 VirtualBox 虚拟机系统后就可以使用 USB 设备 了。因为考虑到安全性,建议用以下方法开启指定帐户 USB 端口 的使用权限。先在终端用以下命令来新增一个用户组 usbfs :
sudo groupadd usbfs 
    输入以下命令来添加当前用户到 usbfs 组:
$ sudo adduser $USER usbfs 
   也可以将以上命令中的 “$USER” 改为你要添加的其他用户名来将其添加到 usbfs 组。
   除以上方法外还可以打开组文件来手动添加。输入以下命令查看 新组 usbfs 的 gid (也可以用其他组名,但对应下面的 usbfs 组名也相应要改为你使用的组名):
cat /etc/group | grep usbfs 
    显示如下,编号可能会不同:
usbfs:x:1001: 
    输入以下命令来打开组文件,并手动添加指定账户到 usbfs 组:
sudo gedit /etc/group 
    打开组文件后找到上面查询显示的行 “usbfs:x:1001:”<对应你的查询结果> ,在该行最后手动添加你会添加的新用户,添加后例子如下:
usbfs:x:1001:username 
    添加多个用户使用英文状态 “,” 分隔多个用户,添加后如下:
usbfs:x:1001:username,username2,username3 
    成功添加完用户后最后的步骤也就完成了,要将 新增的 usbfs 组 设为 USB 端口 有权限读写组,以下命令来打开设置文件:
sudo gedit /etc/fstab 
    在设置文件最后换行添加以下文字,将下面的 “1001” 改为你自己查询出来的 gid ,也就是上面查询出来的 “usbfs:x:1001:” 中的 “1001”:
# 对 usbfs 组 开放 USB 设备 的读写权限 
none /proc/bus/usb usbfs devgid=1001,devmode=664 0 0  
    最后的步骤也完成了,别忘记保存你的修改,在你指定有权限的帐户中重新启动你己启用 USB 设备 的虚拟机系统,是不是可以使用 USB 设备 了呢,最后祝使用 VirtualBox 愉快!

推荐阅读
  • Linux神奇漏洞:长按回车键70秒 即可轻松拿到Root权限
    一般来说获取系统root权限是很困难的,尤其是加密系统中,但西班牙安全研究员hectormarco、ismaelripoll发现,linux系统下只需按住回车键70秒钟,就能轻 ... [详细]
  • 主流操作系统简介
    主流操作系统简介子墨居士操作系统理论定义为管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。操作系统是计算机系统的关键组成部分࿰ ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • systemd-nspawn可以创建最轻量级的容器(ns的意思就是namespace),本文的实验平台是Ubuntu16.04,x86_64机器。本文的目的是:在Ubuntu中用syst ... [详细]
  • 如何将CentOS8转换为CentOSStream
    CentOS Stream是一个持续交付的Linux发行版,它在RHEL之前处于领先地位。它将具有滚动发布,即不断进行更改。CentOS将成为一个上游版本,它将具有测试补丁和更新。 ... [详细]
  • 系统安装Debian系统的安装方式和Ubuntu系统的安装方式几乎是一样的,毕竟Ubuntu系统是基于Debian的,就如同CentOS基于Redhat ... [详细]
  • 如何查看电脑系统版本_腾讯云服务器系统版本怎么看?Windows和Centos版本怎么选?...
    腾讯云服务器系统版本怎么看?想要知道自己的腾讯云服务器系统版本是哪个,可以登录云服务器后台管理系统查看,或者使用命令行查询,如果不会操作& ... [详细]
  • 如何监控 Linux 服务器状态?,分享
    Linux服务器我们天天打交道,特别是Linux工程师更是如此。为了保证服务器的安全与性能,我们经常需要监控服务器的一些状态,以保证工作能顺利开展。本文介绍的几个命令,不仅仅适用于 ... [详细]
  • 下载地址http:www.kbengine.org这货不错安装在Linux上安装(CentosDebianUbuntuetc.)服务端,请在终端输入:pythonkbenginek ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Linux环境变量函数getenv、putenv、setenv和unsetenv详解
    本文详细解释了Linux中的环境变量函数getenv、putenv、setenv和unsetenv的用法和功能。通过使用这些函数,可以获取、设置和删除环境变量的值。同时给出了相应的函数原型、参数说明和返回值。通过示例代码演示了如何使用getenv函数获取环境变量的值,并打印出来。 ... [详细]
  • python3.7 安装pip3_python3的pip3安装
    ---恢复内容开始---pip3的安装需要对应一整套python的编译工具库,所以安装好的pip3是这个样子:inearAi:~$pip3-Vpi ... [详细]
  • linux 字符串数组初始化,C++字符数组初始化方法的分析
    发现了一个字符数组初始化的误区,而这个往往能导致比较严重的性能问题,分析介绍如下:往往我们在初始化一个字符数组,大概有如下几 ... [详细]
author-avatar
7777-丿M
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有