个人工具

“UbuntuHelp:SeamlessVirtualization”的版本间的差异

来自Ubuntu中文

跳转至: 导航, 搜索
第4行: 第4行:
  
 
Rather than have an entire separate Windows desktop, you can run virtualized programs directly on your Linux desktop using the latest (version 1.5.0) '''rdesktop''' package that comes with Ubuntu 7.04, and Windows XP Professional's Terminal Services feature.
 
Rather than have an entire separate Windows desktop, you can run virtualized programs directly on your Linux desktop using the latest (version 1.5.0) '''rdesktop''' package that comes with Ubuntu 7.04, and Windows XP Professional's Terminal Services feature.
 +
* You do not however need a whole Windows installation to:
 +
** run Windows applications in general. This can be done with the open source project [Wine]
 +
** use Internet Explorer. See InstallingInternetExplorer
 +
** edit video, develop web applications, etc... There are very many open source alternatives to your old Windows application. See http://www.osalt.com/
  
 
https://help.ubuntu.com/community/SeamlessVirtualization?action=AttachFile&do=get&target=OpenSourceSeamlessVirtualizationResized.png
 
https://help.ubuntu.com/community/SeamlessVirtualization?action=AttachFile&do=get&target=OpenSourceSeamlessVirtualizationResized.png
第9行: 第13行:
 
* Start a Windows XP pro VM.  
 
* Start a Windows XP pro VM.  
 
** If using VMware, configure host-only networking, and note the VMs IP address for later.
 
** If using VMware, configure host-only networking, and note the VMs IP address for later.
 +
*** You do not '''have''' to use host-only networking. Worked for me with "Custom: Specific visual network" [Ramvi]
 
** If using QEmu, use the following command
 
** If using QEmu, use the following command
 
** This also works with VirtualBox, similarly easy as in VmWare. The only "tricky" part is configuring a host-only network in VirtualBox. Check these links for more information:http://ubuntuforums.org/showthread.php?p=2062234#post2062234 and http://www.happyassassin.net/2007/02/06/vmware-to-virtualbox/
 
** This also works with VirtualBox, similarly easy as in VmWare. The only "tricky" part is configuring a host-only network in VirtualBox. Check these links for more information:http://ubuntuforums.org/showthread.php?p=2062234#post2062234 and http://www.happyassassin.net/2007/02/06/vmware-to-virtualbox/
第17行: 第22行:
  
 
This makes any connections to the localhost port 3389 be directed to the QEmu VM on port 3389, where Windows Terminal Services will run.
 
This makes any connections to the localhost port 3389 be directed to the QEmu VM on port 3389, where Windows Terminal Services will run.
* In the VM, log in as Administrator. Then click '''Start''' → '''Control Panel''' '''System'''. On the '''Remote''' tab, tick '''Allow users to connect remotely to this computer'''. Click '''OK'''.
+
* In the VM, log in as Administrator. Open the Control Panel (click '''Start''' → '''Control Panel''')
 +
* Enable Terminal Services: in the control panel, click '''User Accounts'''. Ensure that '''Use the Welcome Screen''' and '''Fast User Switching''' are both checked. Click '''OK'''.
 +
* Allow remote connections: in the control panel, click '''System'''. On the '''Remote''' tab, tick '''Allow users to connect remotely to this computer'''. Click '''OK'''.
 
* In the VM, download [http://www.cendio.se/files/thinlinc/seamlessrdp/seamlessrdp.zip]. Extract to '''C:\seamlessrdp'''. Then log out of the VM.
 
* In the VM, download [http://www.cendio.se/files/thinlinc/seamlessrdp/seamlessrdp.zip]. Extract to '''C:\seamlessrdp'''. Then log out of the VM.
 
* Install '''rdesktop''' on the host. See InstallingSoftware.
 
* Install '''rdesktop''' on the host. See InstallingSoftware.
第40行: 第47行:
 
* In the VM, download the [http://www.deviantart.com/deviation/37743373/ Human for Windows theme] from http://www.deviantart.com/download/37743373/. Extract the file to '''C:\windows\resources\Themes'''.
 
* In the VM, download the [http://www.deviantart.com/deviation/37743373/ Human for Windows theme] from http://www.deviantart.com/download/37743373/. Extract the file to '''C:\windows\resources\Themes'''.
 
* In the VM, specify the theme to be used for Terminal Services in\the Group Policy Object Editor.  
 
* In the VM, specify the theme to be used for Terminal Services in\the Group Policy Object Editor.  
** Click '''Start''' → '''Run'''. Then type '''mmc'''.  
+
** Click '''Start''' → '''Run'''. Then type '''gpedit.msc'''.  
** In the application that pops up, click '''File''' → '''Add/Remove Snap In'''. Click '''Add'''. Select '''Group Policy Object Editor''' and click '''Add''' again.
+
 
** In the Group Policy Object Editor, navigate to '''User Configuration/Administrative Templates/Control Panel/Display/Desktop Themes'''.  
 
** In the Group Policy Object Editor, navigate to '''User Configuration/Administrative Templates/Control Panel/Display/Desktop Themes'''.  
** Open the '''Load a specific visual style file or force Windows Classic''' setting. Enable the setting, and enter '''C:\windows\resources\Themes\Human\Human.msstyles''' as the style.
+
** Open the '''Load a specific visual style file or force Windows Classic''' setting. Enable the setting, and enter '''%windir%\Resources\Themes\Human\Human.msstyles''' as the style.
 +
* Note: Windows 2003 only must also enable the Theme Service under '''services.msc'''.
 
* Log out of Windows
 
* Log out of Windows
 
* Test your application from the host:
 
* Test your application from the host:
第57行: 第64行:
 
==== Shortcomings ====
 
==== Shortcomings ====
 
* Due to limitations in Windows XP clients, only one user can be logged in remotely at a time. The way the current solution is designed, this translates to one program running at a time.  
 
* Due to limitations in Windows XP clients, only one user can be logged in remotely at a time. The way the current solution is designed, this translates to one program running at a time.  
 +
** I find that the best application to start is "C:\WINDOWS\SYSTEM32\taskmgr.exe". It lets you start more applications and got options for logging out (which you should do when done with Windows. Or else I've found that you're not able to log back in) [[User:Oneleaf|Oneleaf]] 2007年11月21日 (四) 18:06 (CST)
 
** Not necessarily. I've found that if you launch a program that can launch other programs (ex: my computer or cmd.exe), you can use it to open other programs, which then also show up as windows. I've tried it, and I was able to run Internet Explorer and Adobe Acrobat at the same time. The limitation seems to be in the windows program, not anything in rdp. -- JoeTerranova
 
** Not necessarily. I've found that if you launch a program that can launch other programs (ex: my computer or cmd.exe), you can use it to open other programs, which then also show up as windows. I've tried it, and I was able to run Internet Explorer and Adobe Acrobat at the same time. The limitation seems to be in the windows program, not anything in rdp. -- JoeTerranova
 
** However, RDP 6.0 (since Windows Server 2003 SP1) supports running individual programs, so no need for seamless desktop. Does rdesktop support 6.0 features yet? -- MarkReitblatt
 
** However, RDP 6.0 (since Windows Server 2003 SP1) supports running individual programs, so no need for seamless desktop. Does rdesktop support 6.0 features yet? -- MarkReitblatt
 
** There's an unofficial patch for XP Service Pack 2 that allows you to run unlimited concurrent remote user sessions to get around this limitation (it uses a terminal services library from a beta of SP2 that accidentally removed the limitation).  It's probably OK for home users although I wouldn't recommend it for a business. http://www.kood.org/terminal-server-patch/
 
** There's an unofficial patch for XP Service Pack 2 that allows you to run unlimited concurrent remote user sessions to get around this limitation (it uses a terminal services library from a beta of SP2 that accidentally removed the limitation).  It's probably OK for home users although I wouldn't recommend it for a business. http://www.kood.org/terminal-server-patch/
 
* The Human theme does not work in Windows XP x64.
 
* The Human theme does not work in Windows XP x64.
 +
* There is an unoficial rdesktop version with seamless support made by Fontis IT Consulting. It's provide some interesting feature like loading multiple application in a Master Slave mode. So you can call rdesktop several time to open more application in the same user session. https://www.fontis.com.au/rdesktop
 +
----
 +
[[category:CategoryDocumentation]]
  
 
[[category:UbuntuHelp]]
 
[[category:UbuntuHelp]]

2007年11月21日 (三) 18:06的版本

Seamless Virtualization

Rather than have an entire separate Windows desktop, you can run virtualized programs directly on your Linux desktop using the latest (version 1.5.0) rdesktop package that comes with Ubuntu 7.04, and Windows XP Professional's Terminal Services feature.

  • You do not however need a whole Windows installation to:
    • run Windows applications in general. This can be done with the open source project [Wine]
    • use Internet Explorer. See InstallingInternetExplorer
    • edit video, develop web applications, etc... There are very many open source alternatives to your old Windows application. See http://www.osalt.com/

SeamlessVirtualization?action=AttachFile&do=get&target=OpenSourceSeamlessVirtualizationResized.png

qemu -m 384 -redir tcp:3389::3389 windows.img


This makes any connections to the localhost port 3389 be directed to the QEmu VM on port 3389, where Windows Terminal Services will run.

  • In the VM, log in as Administrator. Open the Control Panel (click StartControl Panel)
  • Enable Terminal Services: in the control panel, click User Accounts. Ensure that Use the Welcome Screen and Fast User Switching are both checked. Click OK.
  • Allow remote connections: in the control panel, click System. On the Remote tab, tick Allow users to connect remotely to this computer. Click OK.
  • In the VM, download [1]. Extract to C:\seamlessrdp. Then log out of the VM.
  • Install rdesktop on the host. See InstallingSoftware.
  • Test running an application seamlessly.
rdesktop -A -s "c:\seamlessrdp\seamlessrdpshell.exe C:\Program Files\Internet Explorer\iexplore.exe" <IP of VM>:3389 -u administrator -p password

For QEmu, use 'localhost' for <IP of VM>. For VMWare and for VirtualBox, use the IP address noted down earlier.

A large window will pop up briefly with the Windows login screen, then your application should start in its own window.

You can now create a desktop launcher to run the command above in future, when the VM has been started. High-resolution .PNG icons for Windows applications are available from DeviantArt.

Making Windows Apps Look at Home in Ubuntu

To help Windows apps look at home in Ubuntu, you may configure Windows to use the Ubuntu Human theme.

SeamlessVirtualization?action=AttachFile&do=get&target=SeamlessVirtualizationWithThemingResized.png

  • In the VM, download the Human for Windows theme from http://www.deviantart.com/download/37743373/. Extract the file to C:\windows\resources\Themes.
  • In the VM, specify the theme to be used for Terminal Services in\the Group Policy Object Editor.
    • Click StartRun. Then type gpedit.msc.
    • In the Group Policy Object Editor, navigate to User Configuration/Administrative Templates/Control Panel/Display/Desktop Themes.
    • Open the Load a specific visual style file or force Windows Classic setting. Enable the setting, and enter %windir%\Resources\Themes\Human\Human.msstyles as the style.
  • Note: Windows 2003 only must also enable the Theme Service under services.msc.
  • Log out of Windows
  • Test your application from the host:
rdesktop -A -s "c:\seamlessrdp\seamlessrdpshell.exe C:\Program Files\Internet Explorer\iexplore.exe" <IP of VM>:3389 -u administrator -p password

If using QEmu, use 'localhost' rather than the IP of the VM.

The new theme will take effect after the login screen.

Some themes that are larger or smaller than default might show a few lines of the Windows wallpaper color.

Shortcomings

  • Due to limitations in Windows XP clients, only one user can be logged in remotely at a time. The way the current solution is designed, this translates to one program running at a time.
    • I find that the best application to start is "C:\WINDOWS\SYSTEM32\taskmgr.exe". It lets you start more applications and got options for logging out (which you should do when done with Windows. Or else I've found that you're not able to log back in) Oneleaf 2007年11月21日 (四) 18:06 (CST)
    • Not necessarily. I've found that if you launch a program that can launch other programs (ex: my computer or cmd.exe), you can use it to open other programs, which then also show up as windows. I've tried it, and I was able to run Internet Explorer and Adobe Acrobat at the same time. The limitation seems to be in the windows program, not anything in rdp. -- JoeTerranova
    • However, RDP 6.0 (since Windows Server 2003 SP1) supports running individual programs, so no need for seamless desktop. Does rdesktop support 6.0 features yet? -- MarkReitblatt
    • There's an unofficial patch for XP Service Pack 2 that allows you to run unlimited concurrent remote user sessions to get around this limitation (it uses a terminal services library from a beta of SP2 that accidentally removed the limitation). It's probably OK for home users although I wouldn't recommend it for a business. http://www.kood.org/terminal-server-patch/
  • The Human theme does not work in Windows XP x64.
  • There is an unoficial rdesktop version with seamless support made by Fontis IT Consulting. It's provide some interesting feature like loading multiple application in a Master Slave mode. So you can call rdesktop several time to open more application in the same user session. https://www.fontis.com.au/rdesktop