再谈fedora23下Virutalbox的安装. --问题的关键在于 安装kernel-devel包
首先, 要使用 virutalbox的 rpm 安装包 进行安装.
在安装的过程中, 如果提示 有一些包, 没有, dependencies not resolved, 比如libQt..libvpx等之类的依赖包, 那么安装这些依赖包就是了, 然后再安装.

安装这些依赖包, 是很容易的, 依次 使用 sudo dnf install libpython...等进行安装就好了.. 注意, 如果需要完整 的python程序,不只是某一个lib库的时候, 一样的使用dnf进行安装即可: sudo dnf install python...
其次, 安装好这些依赖包后, 再次使用 rpm -ivh virtual.....rpm(或直接运行 ./...run) . 会提示 vboxdrv.sh运行错误...提示. 这个要注意, 第一, 这个时候, 这个包其实已经安装好了, 如果你下次,再去用rpm安装时, 就会提示已经安装了. 第二, 这个是包含再 virtual..rpm包的安装过程中的动作 , 首先它会删除/etc/vbox/vbox.cfg这个旧的配置文件, 然后 "在安装的过程中" 会去运行/usr/lib/vboxdrv.sh脚本 文件去创建 virtualbox的 内核 驱动文件, 即/dev/vboxdrv这个文件. 这时候, 如果你的系统中, 没有安装 kernel的相关模块, 那么这个创建就会失败, 从而会报错.
没有 /dev/vboxdrv的后果是, 你还是可以运行 virutalbox这个软件的, 也可以创建虚拟机, 但是你无法启动 虚拟机, 根本就没有办法启动winxp虚拟机的安装和运行.
但是依然没有成功, 提示说 没有 virtualbox的 相关系统内核: kernel module. 也就是说, 虚拟机要运行, 需要fdora操作系统中, 要有相关的virtualbox的内核模块来支持它, 可能live的fedora系统, 没有包括virtualbox相关的kernel Module. 所以要额外的进行安装.
然而要安装那个kernel module 内核模块, 即要安装 kernel-core-devel包. kernel核心开发包. (但是, 它又提醒说, 要安装kernel-core-devel包, 必须要先更新系统??)
最后, 这里最重要的是, 你要安装 kernel的开发包, 这个包的名字, 你要注意, 系统给出的提示信息是 yum install kernel-core-devel 其实不是这个开发包, 并不是这个名字, 而是 kernel-devel这个名字! 所以 如果你的名字写错了, 在dnf中, 你是查不到这个包的, 报错说, no package matched.
在dnf search kernel-devel包的时候, 他就是明确的说, 是用来 build kernel module 的, 所以创建 kernel module的就是这个开发包中的函数/类/数据结构被需要. 但是 确实还有 kernel-core 这个 核心包. 前面的那个 kernel-devel 包可能是创建内核的一些 外设设备的驱动模块的, 而kernel-core可能是创建 linux 要跑起来的一些需要核心模块.
当然, 你可以同时安装 kernel, kenel-headers包, 跟kernel-devel一同安装 通常前面两个包已经是安装了的. 只有后面这个devel开发包没有安装...

最后, 我们看到, virtualbox的安装, 问题的根源, 其实并不出在 软件 的版本上, 也不出在 软件的格式上, 不管是 .run格式的, .rpm格式的 还是编译安装的, 设置直接从 virtualbox的官网上下载下来的: https://www.virtualbox.org/wiki/Linux_Downloads, 等等, 这些都没有关系, 真正出问题 的是, vboxdrv.sh要去创建 virutalbox的驱动/dev/vboxdrv, 需要kernel-devel kernel kernel-headers这些核心的依赖包. 所以 只要把这些核心的依赖包安装好了之后( 创建 vboxdrv驱动, 需要用到 kernel-devel中的一些库和函数功能???) 自然一切问题就都解决了.
如下图所示: 重新以 root身份, 运行 vboxconfig命令后, 就能创建kernel module核心模块了, 而且也能启动 virtualbox这个服务了.
创建/dev/vboxdrv这个设备, 运行的命令是 /sbin/vboxconfig , 它会去调用vboxdrv.sh 这个命令脚本, 然后由这个脚本 首先停止vbox服务, 然后创建vbox的kernel modules, 然后再启动 vbox服务...

原来没有vboxdrv,后来就有了:


linux的sh脚本的第一句话, 说明执行脚本的命令, (原来说 #! 和 /bin/bash之间不可以有空格, )其实 在 #! 和 /bin/sh(bash) 之间是可以有空格的. 这里就有一个例子

linux中的搜索, 除了使用命令 find之外, 也有 "可视化"的搜索, 只不过是"集成"在nautilus中的,不是弹出一个对话框之类的东西

更重要的是, 要想保证xp系统能够安装成功的话,必须按下面的方式来进行: 在使用virtualbox进行安装winxp的时候, 一定要使用 “进入Win8 PE "进入系统, 然后格式化虚拟磁盘, 然后再用ghost安装, 这样才能安装成功。 但是不要用其他任何选项, 比如:不要用PQ, GM等去格式化什么的(会出现死机, 无任何反应的现象), 也不要用”第一个选项“安装到第一个分区” , 因为此时还没有格式化磁盘, 无active分区, 无mbr。所以, 唯一的方式就是要通过进入 PE系统后, 来安装。
如何安装fedora23中的virutalbox虚拟机的winxp的分辨率,不能调整到笔记本的全屏状态?
- 本身vbox软件安装完成后, 会自动在/usr/share/virtualbox/目录中, 有copy软件: VBoxGuestAdditions.iso这个iso文件.如果某些vbox简化版, 没有这个文件,可以从网上下载它
- 如何启动安装这个iso呢? **在启动虚拟机的winxp系统机器后, 在菜单 /device中, 看到: "Insert Vbox Guest Additions CD Image", 单击它, 就会将这个iso加载到winxp系统中.



安装好VBoxGuestAdditions后, 客户机的分辨率就可以跟host主机的分辨率调整到一样的了. 都可以设置到笔记本的最大分辨率: 1366*768 了

如何调整到seamless模式?
the virtual machine window will be now switched to seamless mode. you can press Host+L to switch to windowed mode at any time.
note that the Host key is right "CTRL"
And seamless mode will hide the virtualbox main window!
就是说, 使用 host+L 在无缝模式和 窗口模式之间切换.
- 要隐藏virutalbox的mini-toolbar, 只要取消勾选mini-toolbar的复选框就好了.

- seamless无缝模式非常有意思, 无缝模式并不是不显示mini-toolbox, 那个mini-toolbox你只要取消显示就可以了. 无缝模式是不显示主窗口, 你看到的还是linux的桌面, 但是, 此时, 实际上你还是在虚拟机里面. 你的所有操作都是对虚拟机winxp的操作. 但是你要切换到linux host, 只要单击 Right "CTRL" 就好了.这样就可以在linux主机和winxp虚拟机之间 自由的 "无缝"的切换了. 所以实际上, 使用 "host+L" 确实就能做到无缝 切换了. 在linux和winxp之间 同时 工作, 非常方便.感觉毫无障碍!!
- 那么如何判断当前是处于host中还是 winxp虚拟机中呢? 实际上 看鼠标 指针的颜色就可以了. 黑色的鼠标指针就表示在linux host主机中,而白色的 鼠标指针就表示在 winxp中.
- 而且通过设置 双向的 "共享"文件夹, 以及 双向的拖放, 在host和guest之间 共享文档就更方便了.
- 当然, 毕竟是虚拟机, 像这种 共享文件夹以及拖放都是非常 耗费系统资源, 很缓慢的. 更好的方式是 通过u 盘来转移或共享.
再谈fedora23下Virutalbox的安装. --问题的关键在于 安装kernel-devel包的更多相关文章
- 再谈fedora下的音乐和视频播放器的安装
rpm包就相当于windows下的exe,已经是编译后的二进制代码,可以使用rpm命令或dnf install ???.rpm来安装 lnux下软件的安装跟windows不同, 后者要到处去找, 要做 ...
- 再谈应用环境下的TIME_WAIT和CLOSE_WAIT
昨天解决了一个HttpClient调用错误导致的服务器异常,具体过程如下: http://blog.csdn.net/shootyou/article/details/6615051 里头的分析过程有 ...
- 再谈应用环境下的 TIME_WAIT 和 CLOSE_WAIT
转自:http://blog.csdn.net/shootyou/article/details/6622226 昨天解决了一个 HttpClient 调用错误导致的服务器异常,具体过程如下: htt ...
- 再谈Retina下1px的解决方案
https://www.w3cplus.com/css/fix-1px-for-retina.html
- C++ Primer 学习笔记_32_STL实践与分析(6) --再谈string类型(下)
STL实践与分析 --再谈string类型(下) 四.string类型的查找操作 string类型提供了6种查找函数,每种函数以不同形式的find命名.这些操作所有返回string::size_typ ...
- C++ Primer 学习笔记_44_STL实践与分析(18)--再谈迭代器【下】
STL实践与分析 --再谈迭代器[下] 三.反向迭代器[续:习题] //P355 习题11.19 int main() { vector<int> iVec; for (vector< ...
- Another Look at Events(再谈Events)
转载:http://www.qtcn.org/bbs/simple/?t31383.html Another Look at Events(再谈Events) 最近在学习Qt事件处理的时候发现一篇很不 ...
- 再谈IE的浏览器模式和文档模式
原文:再谈IE的浏览器模式和文档模式 以前在 “IE8兼容视图(IE7 mode)与独立IE7的区别”一文中曾经涉及过浏览器模式和文档模式,但二者的区别却不甚了了,现在有了新的认识,再补充一下. 1. ...
- 浅谈Linux下/etc/passwd文件
浅谈Linux 下/etc/passwd文件 看过了很多渗透测试的文章,发现在很多文章中都会有/etc/passwd这个文件,那么,这个文件中到底有些什么内容呢?下面我们来详细的介绍一下. 在Linu ...
随机推荐
- mysql 5.6 每天凌晨12:00 重置sequence表中的某个值
#.创建evevt要调用的存储过程update_current_value_procedure delimiter // drop procedure if exists update_current ...
- Oracle创建禁止DDL的触发器
create or replace trigger forbid_ddl before ddl on DATABASEbegin --if ora_dict_obj_owner = or ...
- 关于toolchain(工具链)的一点知识
之前一直觉得toolchain是个高大上的东西,现摘录 uClibc中的FAQ以助理解. A toolchain consists of GNU binutils, the gcc compiler, ...
- ReentrantLock源码(二)
一.ReentrantLock类中的方法解读. 1.lock方法.实现了接口Lock中的lock方法.这里实际上是调用了sync成员变量的lock方法来实现.所以取决于sync的实现. 2.unloc ...
- Metasploit渗透技巧:后渗透Meterpreter代理
Metasploit是一个免费的.可下载的渗透测试框架,通过它可以很容易地获取.开发并对计算机软件漏洞实施攻击测试.它本身附带数百个已知软件漏洞的专业级漏洞攻击测试工具. 当H.D. Moore在20 ...
- XMLHttpRequest对象(Ajax)的状态码(readystate) HTTP状态代码(status)
2018-11-28 14:19:00 来自 :XMLHttpRequest对象(Ajax)的状态码(readystate) HTTP状态代码(status) XMLHttpRequest对象(Aj ...
- Java输入输出流(IO)-----文件类File详解
1.java.io.File类简介 凡是与输入.输出相关的类.接口等都定义在java.io包下 File是一个类,可以有构造器创建其对象.此对象对应着一个文件(.txt .avi .doc .p ...
- Hive复制分区表和数据
1. 非分区表: 复制表结构: create table new_table as select * from exists_table where 1=0; 复制表结构和数据: create tab ...
- 微信小程序制作家庭记账本之一
制作的第一天,思索着制作手机端APP还是微信小程序,首先是想到制作APP但是各种收费让我不得不换一条路,所以开始制作小程序,下载了微信小程序开发工具,试着学习制作方法,但是似乎没有成效,但我坚信要一步 ...
- Linux基础命令---间歇执行命令watch
watch watch指令可以间歇性的执行程序,将输出结果以全屏的方式显示,默认是2s执行一次.watch将一直运行,直到被中断. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS ...
