Difference between pages "Windows 7 Virtualization with KVM" and "Welcome"

From Funtoo
(Difference between pages)
Jump to: navigation, search
(Emerge Qemu)
 
 
Line 1: Line 1:
This page describes how to set up Funtoo Linux to run Windows 7 Professional 32-bit within a KVM virtual machine. KVM is suitable for running Windows 7 for general desktop application use. It does not provide 3D support, but offers a nice, high-performance virtualization solution for day-to-day productivity applications. It is also very easy to set up.
+
<div style="float:right; width: 35%">
 +
{{#Widget:MonthlyDonate}}
 +
moof
 +
<div class="boxy">
 +
== Get on the UserMap! ==
 +
{{#compound_query:[[Category:People]] [[Role type::Staff]];?Geoloc;icon=Purplemarker.png;limit=9999
 +
    |[[Category:People]][[Role type::Contributor]];?Geoloc;icon=Orangemarker.png;limit=9999
 +
    |[[Category:People]][[Role type::User]];?Geoloc;icon=Greenmarker.png;limit=9999
 +
    |format=googlemaps3|height=275|zoom=1|type=hybrid|markercluster=yes}}
 +
See our full-size [[Usermap]] and find out how to become part of the Funtoo Universe!
 +
</div>
 +
<div class="boxy">
 +
== Join the User Community ==
  
== Introduction ==
+
Funtoo Linux is focused on the needs of our users. Here's how to get involved:
 +
;wiki: Help us maintain content on this wiki. Add yourself to the Funtoo [[Usermap]].
 +
;bugs: Our [http://bugs.funtoo.org bug tracker] is used to track all ongoing development work in Funtoo Linux. If you find a bug in Funtoo Linux, report it here. Also used for enhancement requests.
 +
;IRC: Join us in the <tt>#funtoo</tt> IRC channel on <tt>irc.freenode.net</tt>.
 +
;mailing list: The [https://groups.google.com/forum/#!forum/funtoo-dev funtoo-dev mailing list] is used for development discussion.
 +
;forums: [http://forums.funtoo.org Funtoo Forums] are available for forum-style Funtoo discussion.
 +
;blogs: [http://larrythecow.org LarryTheCow.org] is a blog aggregation service for Gentoo ecosystem developers and users.
 +
;rss/atom: [[Funtoo RSS and Atom Feeds]] displays the latest posts on the Forums and Planet Larry.
 +
</div>
 +
</div>
  
KVM is a hardware-accelerated full-machine hypervisor and virtualization solution included as part of kernel 2.6.20 and later. It allows you to create and start hardware-accelerated virtual machines under Linux using the QEMU tools.
+
= Welcome to the Funtoo Wiki! =
  
[[File:Windows7virt.png|400px|Windows 7 Professional 32-bit running within qemu-kvm]]
+
[[Funtoo Linux]] is a Linux-based operating system created by [[user:Drobbins|Daniel Robbins]], the creator and former Chief Architect of Gentoo Linux. Funtoo Linux is a Free software, or "Open Source" operating system. All distribution source code is freely available, and it can be used and distributed free of charge.
  
== Kernel Setup ==
+
Who develops and improves Funtoo Linux? '''You do.''' We are a completely open meta-distribution that is run by our users and a small group of support staff. Our development centers around the needs of our users. Any user can contribute code and help improve Funtoo Linux functionality on our [http://bugs.funtoo.org bug tracker].
  
If you are using an automatically-built kernel, it is likely that KVM is already available.
+
== Featured Video ==
  
If you are compiling your own kernel, the following kernel config parameters should be enabled (this is based on a 3.x kernel):
+
In this video, Jonathan Vasquez ([[User:Fearedbliss|fearedbliss]]) walks you through the process of installing Funtoo Linux with ZFS. See the [[ZFS Install Guide]] for detailed instructions.
  
Under <tt>Processor type and features</tt>, enable <tt>Paravirtualized Guest Support</tt>. Under the <tt>Paravirtualized Guest Support</tt> menu, enable any options related to KVM, such as <tt>KVM paravirtualized clock</tt> and in particular <tt>KVM Guest Support</tt>.
+
{{#widget:YouTube|id=kxEdSXwU0ZI|width=640|height=360}}
  
Under the <tt>Virtualization</tt> category from the main kernel config menu, enable <tt>Kernel-based Virtual Machine (KVM) support</tt>, and enable at least one type of KVM, either for Intel or AMD processors. It is also recommended to enable <tt>Host kernel acceleration for virtio net</tt>.
+
== Meta-Distribution, Optimized ==
  
You can use modules or build these parts directly into the kernel. Build your new kernel and modules, and reboot.
+
Funtoo Linux is also a ''meta''-distribution, which means that it is built automatically from source code and is customized with the functionality that ''you'' want it to have, and ''without'' the unnecessary features and "bloat" that you want to avoid.  
  
== Emerge Qemu ==
+
In addition, a Funtoo Linux system is [[Download|optimized for your CPU]], and we offer optimized versions for ''Intel Core i7'', ''Intel Atom'', ''AMD Opteron'', and other processors and architectures.
  
First, add the following USE flags to <tt>/etc/portage/make.conf</tt>
+
These combination of factors work together to create an extremely high-performance and flexible computing platform -- a platform where ''you'' are in control, and your system performs optimally. We believe that Funtoo Linux is the most ideal expression of how operating system technology "should" work, and we continually strive to make it better.
  
<pre>
+
== The Gentoo Ecosystem ==
USE="sdl usbredir"
+
</pre>
+
  
Now, emerge qemu:
+
We are committed to maintaining high-levels of compatibility and collaboration with the Gentoo Linux project, and challenge ourselves to innovate while providing new approaches that can be easily leveraged by the Gentoo Community. We appreciate the support we receive from members of the Gentoo Community and strive to contribute back to the larger [[Gentoo Ecosystem]].
  
<console>
+
== Ultimate Flexibility for Developers ==
# ##i##emerge -av qemu
+
</console>
+
  
After <tt>qemu</tt> and its dependencies have been installed, you are now ready to start setting up your Windows 7 environment.
+
Does your Linux distribution allow multiple versions of <tt>php</tt>, <tt>[[python]]</tt> or <tt>ruby</tt> installed happily alongside each other? Funtoo Linux does. Are you tired of hand-building key packages from source to configure them exactly the way you want? Funtoo Linux allows you to tweak the build-time features of packages using handy things called USE variables. Other distributions are forced to either leave stuff out that you want, or include stuff you don't want.
  
== Windows 7 ISO Images ==
+
== Virtualization ==
  
In this tutorial, we are going to install Windows 7 Professional, 32-bit Edition. Microsoft provides a free download of the ISO DVD image, but this does require a valid license key for installation. You can download Windows 7 Professional, 32 bit at the following location:
+
We support the [[OpenVZ]] project and build up-to-date Funtoo Linux OpenVZ containers that you can [[Download|download]]. Also see [[VagrantUp]] for a nice way to deploy VirtualBox-based Funtoo Linux systems. [[Metro]], our automated distro build tool, is capable of building OpenVZ, Linux VServer and [[Linux Containers]] (LXC) images. Funtoo Linux also makes an excellent virtualization host system for [[Xen]].
  
http://msft-dnl.digitalrivercontent.net/msvista/pub/X15-65804/X15-65804.iso
+
== Features ==
  
In addition, it's highly recommended that you download "VirtIO" drivers produced by Red Hat. These drivers are installed under Windows and significantly improve Windows 7 network and disk performance. You want to download the ISO file (not the ZIP file) at the following location:
+
[[Funtoo Linux]] features native [[wikipedia:UTF-8|UTF-8]] support enabled by default, a [[wikipedia:Git (software)|git]]-based, [[Portage Tree|distributed Portage Tree]] and funtoo overlay, an enhanced [[Portage]] with more compact mini-manifest tree, automated imports of new [http://www.gentoo.org Gentoo] changes every 12 hours, [[GUID Booting Guide|GPT/GUID boot support]] and [[Boot-Update|streamlined boot configuration]], [[Funtoo Linux Networking|enhanced network configuration]], up-to-date [http://ftp.osuosl.org/pub/funtoo/funtoo-stable/ stable] and [http://ftp.osuosl.org/pub/funtoo/funtoo-current/ current] Funtoo [[Stage Tarball|stages]], all built using Funtoo's [[Metro]] build tool. We also offer Ubuntu Server, Debian, RHEL and Fedora-based [[Funtoo Linux Kernels|kernels]].
  
http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/
+
Funtoo is currently supported on the following processor families :
 +
* PC-compatible, both 32 and 64-bit (''x86-32bit'', ''x86-64bit'')
  
== Create Raw Disk ==
+
== Resources ==
  
In this tutorial, we are going to create a 30GB raw disk image for Windows 7. Raw disk images offer better performance than the commonly-used QCOW2 format. Do this as a regular user:
+
* Learn more about [[Funtoo Linux]].
 +
* Why you should [[Choose Funtoo]]: ...and how it is different from other distros.
 +
* Visit [[:Category:Projects|Funtoo Linux Projects]] and also look at the stuff online for [[Metro]].
 +
* Learn [[:Category:Linux Core Concepts| Core Linux concepts]] from articles originally written by Daniel Robbins.
 +
* [[Funtoo Linux Installation|Install Funtoo Linux]]
  
<console>
 
$ ##i##cd
 
$ ##i##qemu-img create -f raw win7.img 30G
 
</console>
 
  
We now have an empty virtual disk image called <tt>win7.img</tt> in our home directory.
+
__NOTOC__
 +
__NOTITLE__
 +
__NOEDITSECTION__
  
== QEMU script ==
+
[[Category:Funtoo|*]]
 
+
Now, we'll create the following script to start our virtual machine and begin Windows 7 installation. Note that this script assumes that the two ISO files downloaded earlier were placed in the user's <tt>Downloads</tt> directory. Adjust paths as necessary if that is not the case. Also be sure to adjust the following parts of the script:
+
 
+
* Adjust the name of <tt>VIRTIMG</tt> to match the exact name of the VirtIO ISO image you downloaded earlier
+
* Adjust the <tt>smp</tt> option to use the number of CPU cores and threads (if your system has hyperthreading) of your Linux system's CPU.
+
 
+
Use your favorite text editor to create the following script. Name it something like <tt>vm.sh</tt>:
+
 
+
<syntaxhighlight lang="bash">
+
#!/bin/sh
+
export QEMU_AUDIO_DRV=alsaDISKIMG=~/win7.img
+
WIN7IMG=~/Downloads/X15-65804.iso
+
VIRTIMG=~/Downloads/virtio-win-0.1-74.iso
+
qemu-kvm --enable-kvm -drive file=${DISKIMG},if=virtio -m 2048 \
+
-net nic,model=virtio -net user -cdrom ${WIN7IMG} \
+
-drive file=${VIRTIMG},index=3,media=cdrom \
+
-rtc base=localtime,clock=host -smp cores=2,threads=4 \
+
-usbdevice tablet -soundhw ac97 -cpu host -vga vmware
+
</syntaxhighlight>
+
 
+
Now, make the script executable:
+
 
+
<console>
+
$ ##i##chmod +x vm.sh
+
</console>
+
 
+
Here is a brief summary of what the script does. It starts the <tt>qemu-kvm</tt> program and instructs it to use KVM to accelerate virtualization. The system disk is the 30GB raw image you created, and we tell QEMU to use "virtio" mode for this disk, as well as "virtio" for network access. This will require that we install special drivers during installation to access the disk and enable networking, but will give us better performance.
+
 
+
To assist us in installing the VirtIO drivers, we have configured the system with two DVD drives -- the first holds the Windows 7 installation media, and the second contains the VirtIO driver ISO that we will need to access during Windows 7 installation.
+
 
+
The <tt>-usbdevice tablet</tt> option will cause our mouse and keyboard interaction with our virtual environment to be intuitive and easy to use.
+
 
+
== Starting Windows 7 Installation ==
+
 
+
Now, it's time to start Windows 7 installation. Run <tt>vm.sh</tt> as follows:
+
 
+
<console>
+
$ ##i##./vm.sh
+
</console>
+
 
+
Windows 7 installation will begin. During the installation process, you will need to enter a valid license key, and also load ''both'' VirtIO drivers from Red Hat when prompted (Browse to the second DVD, then win7 directory, then x86).
+
 
+
After some time, Windows 7 installation will complete. You will be able to perform Windows Update, as by default, you will have network access if your host Linux system has network access.
+
 
+
Enjoy your virtualized Windows 7 system!
+
 
+
[[Category:Tutorial]]
+
[[Category:First Steps]]
+

Revision as of 18:43, 23 November 2013

moof

Get on the UserMap!

Loading map...

See our full-size Usermap and find out how to become part of the Funtoo Universe!

Join the User Community

Funtoo Linux is focused on the needs of our users. Here's how to get involved:

wiki
Help us maintain content on this wiki. Add yourself to the Funtoo Usermap.
bugs
Our bug tracker is used to track all ongoing development work in Funtoo Linux. If you find a bug in Funtoo Linux, report it here. Also used for enhancement requests.
IRC
Join us in the #funtoo IRC channel on irc.freenode.net.
mailing list
The funtoo-dev mailing list is used for development discussion.
forums
Funtoo Forums are available for forum-style Funtoo discussion.
blogs
LarryTheCow.org is a blog aggregation service for Gentoo ecosystem developers and users.
rss/atom
Funtoo RSS and Atom Feeds displays the latest posts on the Forums and Planet Larry.

Welcome to the Funtoo Wiki!

Funtoo Linux is a Linux-based operating system created by Daniel Robbins, the creator and former Chief Architect of Gentoo Linux. Funtoo Linux is a Free software, or "Open Source" operating system. All distribution source code is freely available, and it can be used and distributed free of charge.

Who develops and improves Funtoo Linux? You do. We are a completely open meta-distribution that is run by our users and a small group of support staff. Our development centers around the needs of our users. Any user can contribute code and help improve Funtoo Linux functionality on our bug tracker.

Featured Video

In this video, Jonathan Vasquez (fearedbliss) walks you through the process of installing Funtoo Linux with ZFS. See the ZFS Install Guide for detailed instructions.

Meta-Distribution, Optimized

Funtoo Linux is also a meta-distribution, which means that it is built automatically from source code and is customized with the functionality that you want it to have, and without the unnecessary features and "bloat" that you want to avoid.

In addition, a Funtoo Linux system is optimized for your CPU, and we offer optimized versions for Intel Core i7, Intel Atom, AMD Opteron, and other processors and architectures.

These combination of factors work together to create an extremely high-performance and flexible computing platform -- a platform where you are in control, and your system performs optimally. We believe that Funtoo Linux is the most ideal expression of how operating system technology "should" work, and we continually strive to make it better.

The Gentoo Ecosystem

We are committed to maintaining high-levels of compatibility and collaboration with the Gentoo Linux project, and challenge ourselves to innovate while providing new approaches that can be easily leveraged by the Gentoo Community. We appreciate the support we receive from members of the Gentoo Community and strive to contribute back to the larger Gentoo Ecosystem.

Ultimate Flexibility for Developers

Does your Linux distribution allow multiple versions of php, python or ruby installed happily alongside each other? Funtoo Linux does. Are you tired of hand-building key packages from source to configure them exactly the way you want? Funtoo Linux allows you to tweak the build-time features of packages using handy things called USE variables. Other distributions are forced to either leave stuff out that you want, or include stuff you don't want.

Virtualization

We support the OpenVZ project and build up-to-date Funtoo Linux OpenVZ containers that you can download. Also see VagrantUp for a nice way to deploy VirtualBox-based Funtoo Linux systems. Metro, our automated distro build tool, is capable of building OpenVZ, Linux VServer and Linux Containers (LXC) images. Funtoo Linux also makes an excellent virtualization host system for Xen.

Features

Funtoo Linux features native UTF-8 support enabled by default, a git-based, distributed Portage Tree and funtoo overlay, an enhanced Portage with more compact mini-manifest tree, automated imports of new Gentoo changes every 12 hours, GPT/GUID boot support and streamlined boot configuration, enhanced network configuration, up-to-date stable and current Funtoo stages, all built using Funtoo's Metro build tool. We also offer Ubuntu Server, Debian, RHEL and Fedora-based kernels.

Funtoo is currently supported on the following processor families :

  • PC-compatible, both 32 and 64-bit (x86-32bit, x86-64bit)

Resources