查看: 6767|回复: 12
收起左侧

[分享] vBox用户手册第9章 高级主题 翻译资料(一)

[复制链接]
乐活
发表于 2011-6-26 15:40:05 | 显示全部楼层 |阅读模式
本帖最后由 zhouzh 于 2011-7-2 16:44 编辑

声明:本人是vBox菜鸟级用户,还没学到这个地方呢,翻译此部分是由于卡饭  豆先生  的指导,说是前边的部分基本上都可以找到中文资料了,有哪里翻译不合适的地方,请各位多提宝贵意见。
第九章9.1--9.4(未完待续)

9 高级主题
9.1 VBoxSDL,简化的VM显示器
9.1.1 引言
VBoxSDL是一个简单的图形用户接口(GUI),缺少VirtualBox,主GUI提供的好的点击支持。目前,VBoxSDL主要用于内部调试VirtualBox,因此不提供官方支持。然而,你会发现它在虚拟机不必有同一人使用虚拟机控制的这种环境中是非常有用的。
注:VBoxSDL 在Mac OS X的主机平台上不可用。
你可以在下面的截图中看到,VBoxSDL实际上只提供一个简单的窗口,仅仅包括“纯粹的”虚拟机,没有用于单击菜单和其他控件,并且没有额外虚拟机活动的指示:
无标题.png



使用VBoxSDL而不是VirtualBox GUI重启虚拟机,在命令行输入下面语句:
VBoxSDL  --startvm  <vm>
这里,<vm>像往常的VirtualBox命令行参数一样,是名字或现有虚拟机的UUID。

9.1.2 VBoxSDL安全标记
当在全屏幕模式下运行客户机操作系统时,客户机操作系统通常控制整个屏幕。这样可能会带来安全风险,因为客户机操作系统欺骗用户,让用户认为它或者是一个可能有更高安全级别的不同的系统,或者它可能在屏幕上提供好像是来自主机操作系统的信息。
为了让用户免受上述的安全风险,开发了安全标记功能。安全标记目前仅在VBoxSDL中可用。当安全标记被使能后,一部分用于标记的显示区域被保留,该区域用于显示用户定义的信息。在VBoxSDL中标记高度设置为20像素。标记字体颜色和背景颜色可以被选择设置为16进制RGB颜色值。下面的语句用于启动安全标记:
VBoxSDL  --startvm  "VM  name"
--securelabel  --seclabelfnt  ~/fonts/arial.ttf
--seclabelsiz  14  --seclabelfgcol  00FF00  --seclabelbgcol  00FFFF
除了启动安全标记之外,还提供了一个TrueType字体。使用另一种字体大小而不是12point,使用参数—seclabelsiz。
标记文本可以被设置使用:
VBoxManage  setextradata  "VM  name"  "VBoxSDL/SecureLabel"  "The  Label"
改变这个标记将立即生效。
通常,全屏幕分辨率被某些“标准”的几何形状如1024×768限制。通过20行增加分辨率通常是不可行的。因此,在大多数情况下,VBoxSDL会选择下一个较高的分辨率,如1280×1024。并且客户机的屏幕将不会覆盖整个显示屏。如果VBoxSDL不能选择更高的分辨率,安全标记将显示在客户机屏幕的顶部。为了解决客户机屏幕被隐藏的问题,VBoxSDL可以给客户提供自定义视频模式,这些模式可以减少标记的高度。对于Windows客户,和最近的Solaris以及Linux客户,VBoxSDL客户添加自动地提供了这种减少的视频模式。另外,VESA BIOS已被调整去复制标准模式表通过使用调整的分辨率。调整模式IDs可以通过下面的公式计算:
reduced_modeid  =  modeid  +  0x30
例如,为了在1024×748×16启动Linux,使用标准模式0x1024×748×16作为基准。Linux视频模式内核参数可以计算通过使用:
vga  =  0x200  |  0x117  +  0x30
vga  =  839
复制标准模式而不是仅提供调整模式的原因是大多数的客户机操作系统需要安装标准VESA模式,并且拒绝在不同模式下启动。
当使用X. org VESA驱动时,已计算自定义配置行,并且添加到配置中(通常在/etc/X11/xorg.conf.定义配置行语句的一种方便工具可以找到在http://www.tkk.fi/Misc/Electronics/faq/vga2rgb/calc.html.)

9.1.3在Linux上释放修改VBoxSDL
当使用Ctrl-Alt-Fx键从一个虚拟终端VT切换到另一个VT,同时VBoxSDL窗口有输入焦点,客户机会受接收到Ctrl和Alt键触发事件,接收不到相应键的释放事件。这是Linux的一个设计限制。为了重置修改键,可以发送SIGUSR1到VBoxSDL主线程第一个语句,在ps列中。例如,当切换到另一个VT,并且从这个终端开始保存虚拟机,下面的语句可以用来确保VM没有被修改保存:
kill  -usr1  <pid>
VBoxManage  controlvm  "Windows  2000"  savestate

9.2客户机自动登录
VirtualBox为Windows,Linux和Solaris在客户机上提供客户添加模块来自动登录。
当客户机操作系统正在运行一个虚拟机时,可能需要使用来自主登录系统中的证书来协调和自动登录。有了证书,我们提及的登录信息包括用户名、密码和域名,其中每个值可以为空。

9.2.1 Windows客户机自动登录
从Windows NT以来,Windows已经提供了一个模块化登录的子系统(“Winlogon”),它可以使用所谓的GINA模块自定义和扩展(图形鉴定和验证)。随着Windows Vista和Windows 7的出现,GINA模块被一种叫做“信任提供者”的机制所取代。用于Windows的VirtualBox Guest Additions与GINA和信任提供者模块一起提供,并且因此使能任何一个Windows客户机来执行自动登录。
为了激活VirtualBox GINA或者信任提供者模块,通过使用命令行转换,或者使用自动登录,安装客户添加机制。以下用于安装这些模块的所有手动步骤将由安装者执行。
为了手动安装VirtualBox GINA模块,提取Guest Additions(见第4.2.1.4节,手工文件提取,第56页)并复制文件VBoxGINA.dll 到 Windows SYSTEM32目录中。然后在注册表中创建以下项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ Winlogon\GinaDLL
值同VBoxGINA.dll。
注:VirtualBox GINA模块被看作一个在标准Windows GINA模块周围的封装执行(MSGINA.DLL)。因此,它最有可能无法同第三方GINA模块正常工作。
为了手动安装 VirtualBox 信任提供者模块,提取Guest Additions(见第4.2.1.4,手动文件提取,第56页)第56页)并复制文件VboxCredProv.dll 到 Windows SYSTEM32目录中。然后在注册表中创建以下项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Auth-entication\CredentialProviders\{275D3BCC-22BB-4948-A7F6-3A3054EBA92B}
HKEY_CLASSES_ROOT\CLSID\{275D3BCC-22BB-4948-A7F6-3A3054EBA92B}
HKEY_CLASSES_ROOT\CLSID\{275D3BCC-22BB-4948-A7F6-3A3054EBA92B}\In-procServer32
所有的默认值(每项关键字命名为(默认))放在VboxCredProv中。这之后一个新的字符串被命名:
HKEY_CLASSES_ROOT\CLSID\{275D3BCC-22BB-4948-A7F6-3A3054EBA92B}\In-procServer32\ThreadingModel
该部分的值已被创建。
在正运行的VM上使用以下命令:
VBoxManage  controlvm  "Windows  XP"  setcredentials  "John  Doe"  "secretpassword"  "DOMTEST"
当VM运行时,证书可能被质疑,通过VirtualBox登录模块GINA或者信任提供者使用VirtualBox Guest Additions的设备驱动。当Windows在注销模式时,登录模块将会不断地调查证书,如果他们存在,将尝试登录。在检索到证书后,登录模块将擦除它们以至于上述命令将不得不被子登录系统重复。
出于安全原因,证书将不会以任何持久的方式存储,并在在VM重置后将丢失。此外,证书是“只写”的,即没有方法从主机端检索到证书。证书可以通过在主机端设置控制重置。
根据Windows 客户机的特定变型,采用以下限制:
1、对于Windows XP的客户机,登录子系统需要配置为使用经典登录框作为VirtualBox GINA模块,不支持XP样式的欢迎对话框。
2、对于Windows Vista和Windows 7的客户机,登录子系统不支持所谓的安全注意序列(CTRL+ALT+DEL)。因此,客户机的组策略设置需要被改变,不使用安全注意序列。此外,规定的用户名仅仅是与真实用户名相对的,而不是用户友好名。这意味着当你重命名一个用户时,你仍然需要提供原始的内部用户名,Windows不会重命名用户账号。
3、内建在Windows远程桌面服务的自动登录处理在默认情况下被禁用,这种服务以前被作为终端服务了解。启用它,创建注册表项
HKEY_LOCAL_MACHINE\SOFTWARE\Oracle\VirtualBox Guest Additions\ Au- toLogon  
DWORD值1。
下面的命令强制VirtualBox在证书被客户机读后或在VM复位后保留证书。
VBoxManage  setextradata  "Windows  XP"  VBoxInternal/Devices /VMMDev/0/Config/KeepCredentials  1
注意这是一个潜在的安全风险,因为在客户机上运行一个恶意的应用程序建议请求该信息使用合适的接口。

9.2.2 Linux/Unix客户机自动登录
从版本3.2开始,VirtualBox提供自定义PAM模块(Pluggable Authentication Module),该模块可用于在支持框架的平台上执行客户机自动登录。事实上现代所有的Linux/Unix发行版本都依赖于PAM。
pam_vbox.so模式本身不对传递给客户机OS的证书做实际的改变,而是依靠其他模块,诸如在PAM堆栈中的pam_unix. so 或者 pam_unix2. so,使用pam_vbox.so获得的证书做实际的改变。因此pam_vbox.so不得不在验证PAM服务列表上。
注意:pam_vbox.so仅支持原始验证,其他初始值,例如账户、会话或者密码等不被支持。
pam_vbox.so模块是客户添加机制的一部分,但是在客户机OS默认情况下没有被安装和/或激活。为了安装它,要从/opt/VBoxGuestAdditions-<version> /lib/VBoxGuestAdditions/ to the security modules directory, usually /lib/security/中拷贝。请参考您的客户机OS文件来获取正确的PAM模块目录。
例如,为了同Ubuntu Linux guest OS和 GDM (the GNOME Desktop Manager)一起使用pam_vbox.so,并带有主机通过的证书去执行用户自动登录,客户机OS需按如下配置:
1、pam_vbox.so模块必须被拷贝到安全模块目录,在这种情况下它是/lib/security。
2、为在/etc/pam.d/gdm中的GDM编辑PAM配置文件,在上面添加必要的行验证pam_vbox.so。另外,在大多数Linux版本中,有一个叫做/etc/pam.d/common-auth的文件。这个文件包含在许多其他服务中(像上面提到的GDM文件)。这里你也必须添加行验证pam_vbox.so。
3、如果需要使用pam_unix.so 或者 pam_unix2.so验证与影子数据库相悖,那么需要参数try-first-pass把证书从VirtualBox模块传递给影子数据库验证模块。对于Ubuntu来说,这需要被添加到/etc/pam.d/common-auth,到提到的pam_unix.so行的末尾。该参数让PAM模块使用已在堆栈中存在的证书,即由VirtualBox PAM模块所提供的。
警告:一个正确配置的PAM堆栈能有效地阻止你登录到你的客户机系统!
为了使调用更加简单,你可以在pam_vbox.so声明之后通过参数调试权限。调试日子将使用系统日子记录。
警告:目前,GDM显示管理器仅在启动时获取证书,因此除非在GDM开始之前已提供证书,否则自动登录将不会工作。这种限制必须通过GDM开发人员处理或者使用其他的显示管理器。

9.3 Windows客户机高级配置
9.3.1 Windows自动系统准备
从Windows NT开始,微软提供了一个“系统准备”工具(简写为:Sysprep)为Windows系统准备调用和再分配。而Windows 2000和XP带有Sysprep安装工具,该工具也可在微软网站上下载、在Windows Vista和 7 的标准安装中,已包括Sysprep。Sysprep主要由一个可执行sysprep.exe组成,sysprep.exe通过用户把Windows安装到准备模式请求。
从VirtualBox3.2.2开始,客户添加机制提供了一种在客户机准备系统中自动开启系统准备的方法。该方法由主机控制。实现过程见4.7节,客户机控制,第68页使用该带有特殊识别sysprep特性作为程序执行,以及系统准备用户名和系统准备密码的证书。然后系统准备获取启动所需的系统权限。
注意:指定“sysprep.exe”的位置是不可能的——相反使用下面的路径(基于操作系统)
•  C:\sysprep\sysprep.exe for Windows NT 4.0, 2000 and XP
•  %WINDIR%\System32\Sysprep\sysprep.exe  for Windows Vista,  2008 Server and 7
Guest Additions将自动使用合适的路径去执行系统准备工具。

9.4 Linux和Solaris客户机高级配置
9.4.1 Linux上选择的客户机服务的手动安装
VirtualBox Guest Additions包括几种不同的驱动程序。如果有其他原因你不想全部安装上,你可以使用以下命令安装Guest Additions:
sh  ./VBoxLinuxAdditions.run  no_setup
然后,你将至少需要通过运行该命令来编译内核模块。
/usr/lib/VBoxGuestAdditions/vboxadd  setup
作为 root(你需在64位客户机上用lib64代替lib),在没有udev服务的较旧的客户机上,你将需要把vboxadd服务添加到默认运行级别,以确保模块被加载。
安装时间同步服务,运行该命令
/usr/lib/VBoxGuestAdditions/vboxadd-service  setup
并且添加服务vboxadd-service到默认运行级别。创建Guest Additions的X11和OpenGL部分,运行该命令
/usr/lib/VBoxGuestAdditions/vboxadd-x11  setup
(你不必为其启用任何服务)。
重新编译客户机内核模块,使用这条命令:
/usr/lib/VBoxGuestAdditions/vboxadd  setup
编译后你应重新启动你的客户机确保新的模块确实被使用了。

9.4.2客户机图形和鼠标驱动深度安装
本节假设你熟悉使用xorg.conf配置X.Org服务器和使用hal或者udev 和 xorg.conf.d随意配置较新的机制。如果不能你可以通过学习带有X.Org的文档学习。
VirtualBox Guest Additions带有X.Org版本的驱动
•  X11R6.8/X11R6.9 and XFree86 version 4.3 (vboxvideo_drv_68.o 和 vboxmouse_drv_68.o)
•  X11R7.0 (vboxvideo_drv_70.so和vboxmouse_drv_70.so)
•  X11R7.1 (vboxvideo_drv_71.so和vboxmouse_drv_71.so)
• X.Org Server versions 1.3 and later (vboxvideo_drv_13.so和vboxmouse_drv_13.so 等等)。
默认情况下可以在下面的目录中找到这些驱动:
/opt/VBoxGuestAdditions-<version>/lib/VboxGuestAdditions
并且X服务器的正确版本能够象征性的链接到X.Org驱动目录。
为了让图形集正常工作,X服务器必须加载vboxvideo驱动(最近许多X服务器版本自动寻找它,如果X服务器发现它们在VirtualBox中运行)为了获得最佳用户体验,客户机内核驱动必须被加载,并且Guest Additions工具VboxClient在X会话中必须作为一个客户端执行。为了让鼠标集正常工作,必须加载客户机驱动,此外X服务器从X.Org X11R6.8到X11R7.1和Xfree86版本4.3必须加载正确的vboxmouse驱动,和/dev/mouse or /dev/psaux联系一起;X.Org服务器1.3或者更后的版本,PS/2鼠标驱动必须被加载并且正确vboxmouse的驱动器必须与/dev/vboxgues联系在一起。
VirtualBox客户机图形驱动可以使用任何图形配置,正因为这样分配给虚拟机的虚拟视频内存(减去由客户机驱动使用的小量内存)的适合的虚拟分辨率见3.5节所述,显示设置,第45页。驱动程序将提供一系列标准模式,至少满足默认客户机分辨率给所有活动的客户机监视程序。从X.Org服务器1.3和以后版本,默认模式可以通过设置任意客户机监视程序的输出特性VBOX_MODE的“<width>x<height>”。当VboxClient和内核驱动程序活动时,这是自动完成的。这时主机申请一个模式改变。老版本的驱动程序只能通过定期查询主机请求来接受新的模式。
随着per-1.3 X服务器,你也可以向X服务器配置文件添加自己的模式。你只需将它们添加到“屏幕”章节的“显示”部分的“模式”列表中。例如,这节给出了一个添加的自定义2048×800分辨率模式:
Section  "Screen"
Identifier        "Default  Screen"
Device "VirtualBox  graphics  card"
Monitor "Generic  Monitor"
DefaultDepth    24
SubSection  "Display"
Depth 24
Modes "2048x800"  "800x600"  "640x480"
EndSubSection
EndSection

评分

参与人数 3经验 +80 人气 +2 收起 理由
zby_1991 + 1 豆先生~~哈
FreeEquFraT + 1 欢迎发翻译教程
詩、未詺 + 80 精品翻译~

查看全部评分

种过一豆
发表于 2011-6-26 15:53:03 | 显示全部楼层
来杀花学习,好多命令在linux下用过,windows下还没尝试过...惭愧...

学费先欠着,最近被打劫穷死了

评分

参与人数 1人气 +1 收起 理由
乐活 + 1 感谢支持,欢迎常来: )

查看全部评分

FreeEquFraT
发表于 2011-6-26 16:00:43 | 显示全部楼层
说实话,咋看一眼就把我看晕了。不过还是感谢楼主的翻译作品了,方便了很多人找资料了。

评分

参与人数 1人气 +1 收起 理由
乐活 + 1 版区有你更精彩: )

查看全部评分

乐活
 楼主| 发表于 2011-6-26 16:06:23 | 显示全部楼层
种过一豆 发表于 2011-6-26 15:53
来杀花学习,好多命令在linux下用过,windows下还没尝试过...惭愧...

学费先欠着,最近被打劫穷死 ...

感谢你的指导,我在第9章这一个系列中都会提你的,豆先生,嘿嘿
乐活
 楼主| 发表于 2011-6-26 16:07:40 | 显示全部楼层
FreeEquFraT 发表于 2011-6-26 16:00
说实话,咋看一眼就把我看晕了。不过还是感谢楼主的翻译作品了,方便了很多人找资料了。

正如我开头所说,我也在学习阶段,英文也不是很好,可能会有很多不足。不过,多谢你的支持!
FreeEquFraT
发表于 2011-6-26 16:13:44 | 显示全部楼层
zhouzh 发表于 2011-6-26 16:07
正如我开头所说,我也在学习阶段,英文也不是很好,可能会有很多不足。不过,多谢你的支持!

谢谢你的人气了,看了楼主翻译的教程我感觉VBOX还挺复杂的啊,看来还得慢慢消化了
种过一豆
发表于 2011-6-26 16:14:16 | 显示全部楼层
zhouzh 发表于 2011-6-26 16:06
感谢你的指导,我在第9章这一个系列中都会提你的,豆先生,嘿嘿

又看到我名字了

其实你可以把前面别人已经汉化的部分总结出来合成一本手册,不过这就要花不少时间去整理排版了

就如我之前跟你说的,涉及到太多命令、手动去删删改改的东西,大部分人还是比较不会耐心去看(普通使用者一般看看使用之类的教程就够);VirtualBox的命令比图形界面要强许多,显得繁琐不少

有时间可以多整理一些出来,期待zhouzh系列vbox中文手册的诞生
zby_1991
发表于 2011-6-26 16:29:48 | 显示全部楼层
好长的翻译~~
lz翻译辛苦

命令啥的,最头疼了
乐活
 楼主| 发表于 2011-6-26 19:41:15 | 显示全部楼层
FreeEquFraT 发表于 2011-6-26 16:13
谢谢你的人气了,看了楼主翻译的教程我感觉VBOX还挺复杂的啊,看来还得慢慢消化了

虽然我学的时间不长,但是我感觉vBox还是要比vm简单很多的,让我们一起努力吧,呵呵
乐活
 楼主| 发表于 2011-6-26 19:42:43 | 显示全部楼层
种过一豆 发表于 2011-6-26 16:14
又看到我名字了

其实你可以把前面别人已经汉化的部分总结出来合成一本手册,不过这就要花不少时 ...

多谢鼓励!我不知道能不能整出来,不过我会努力的,第9章剩下的部分我会尽快翻译好发上来,嘿嘿
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-11-25 02:04 , Processed in 0.143531 second(s), 20 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表