Differences between revisions 15 and 16
Revision 15 as of 2008-07-13 10:10:39
Size: 13160
Editor: FranklinPiat
Comment: kernel 2.6.22+ network around.
Revision 16 as of 2008-08-28 08:50:48
Size: 13202
Editor: ?farcel
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
#pragma description How to install Debian/Linux on a Microsoft Virtual PC 2007 #pragma description How to install Debian/Linux on a Microsoft Virtual PC 2007 (It also applies to Microsoft Virtual Server 2005 R2 SP1)
Line 10: Line 10:
##||<tablestyle="width: 100%;" style="border: 0px hidden">~-Translation(s): none-~||<style="text-align: right;border: 0px hidden"> (!) [:/Discussion:Discussion]||

[[BR]]
`` /!\ Microsoft Virtual PC is a {{{non-free}}} (proprietary) software. It isn't supported by Debian. It's probably wiser to use a free [:SystemVirtualization:Virtualization] tool.
[[BR]]
[[BR]]

||<tablestyle="width:100%" style="width:96px;border-right-style:none">[[Include(InstallingDebianOn/Ratings/CategoryEtchUnrated)]]||<style="border-left-style:none">[[Include(InstallingDebianOn/PageFragments/Philosophy)]]||
##||~-Translation(s): none-~|| (!) [:/Discussion:Discussion]||
[[BR]] {{{}}} /!\ Microsoft Virtual PC is a {{{non-free}}} (proprietary) software. It isn't supported by Debian. It's probably wiser to use a free SystemVirtualization tool. [[BR]] [[BR]]
||<tablewidth="100%"width="96px" style="BORDER-RIGHT-STYLE: none">[[Include(InstallingDebianOn/Ratings/CategoryEtchUnrated)]]||<style="BORDER-LEFT-STYLE: none">[[Include(InstallingDebianOn/PageFragments/Philosophy)]]||
Line 23: Line 19:

Line 28: Line 22:
||||<tablestyle="margin-left:3em;width:90%">'''Core Components'''||<|10 style="text-align:right;border-style:none;vertical-align:top;"> inline:photo.png ||
||Boot Standard Kernel:  || {OK} ||
|| LAN network card:  || {OK} ||
|| Detect CD/DVD:  || {OK} ||
|| Detect hard drives:  || {OK} ||
## If Xorg doesn't work at all (not even with vesa driver), then move Xorg line here.
||||'''Extra Features'''||
|| Xorg || {i} ||
||
- OpenGL   || [?] ||
||  - Resize-and-Rotate(randr) || {OK} ||
|| Sound   || {i} ||
||
Mouse   || {OK} ||
~-Legend :[[BR]] {OK} = OK ; {X} Unsupported(No Driver) ; /!\ = Error (Couldn't get it working); [?] Unknown, Not Test ; [-] Not-applicable [[BR]] {i} = Configuration Required;  X-( = Only works with a proprietary driver-~
||||<tablewidth="90%" tablestyle="MARGIN-LEFT: 3em"style="TEXT-ALIGN: center">'''Core Components''' ||<style="VERTICAL-ALIGN: top; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; TEXT-ALIGN: center; BORDER-BOTTOM-STYLE: none" |10> attachment:photo.png ||
||Boot Standard Kernel: || {OK} ||
||LAN network card: || {OK} ||
||Detect CD/DVD: || {OK} ||
||Detect hard drives: || {OK} ||
||||<style="TEXT-ALIGN: center">'''Extra Features''' ||
||
Xorg || {i} ||
||
- OpenGL ||[?] ||
||- Resize-and-Rotate(randr) || {OK} ||
||Sound || {i} ||
||
Mouse || {OK} ||
~-Legend :[[BR]] {OK} = OK ; {X} Unsupported(No Driver) ; /!\ = Error (Couldn't get it working); [?] Unknown, Not Test ; [-] Not-applicable [[BR]] {i} = Configuration Required; X-( = Only works with a proprietary driver-~
Line 45: Line 38:
Line 47: Line 39:

[[BR]]
[[BR]]
[[BR]] [[BR]]
Line 52: Line 43:
Line 54: Line 46:
 :: the following bugs workaround aren't needed anymode : kernel parameter {{{i8042.noloop=1}}},  {{{clock=pit}}} and well as psmouse's hack.
 :: the following bugs workaround aren't needed anymode : kernel parameter {{{i8042.noloop=1}}}, {{{clock=pit}}} and well as psmouse's hack.
Line 57: Line 48:
Line 59: Line 49:
Line 62: Line 53:
 * At installation time, when you first boot the kernel, pass the following kernel parameters :  "{{{vesa i8042.noloop=1 clock=pit vga=791}}}" ~-(see [#boot-prompt CD Boot prompt screenshot])-~  * At installation time, when you first boot the kernel, pass the following kernel parameters : "{{{vesa i8042.noloop=1 clock=pit vga=791}}}" ~-(see [#boot-prompt CD Boot prompt screenshot])-~
Line 64: Line 55:
Line 74: Line 66:
Line 75: Line 68:
Line 77: Line 69:
Line 78: Line 71:
The video adapter __emulated__ is an "S3 Inc. 86c764/765 [Trio32/64/64V+]",  PciID:5333:8811

 /!\ If you installed a GUI (Desktop), you will have to reconfigure Xorg, because the display will be too wide and corrupted, like : 
inline:gdm-prompt-bug.png
The video adapter __emulated__ is an "S3 Inc. 86c764/765 [Trio32/64/64V+]", PciID:5333:8811

 . /!\ If you installed a GUI (Desktop), you will have to reconfigure Xorg, because the display will be too wide and corrupted, like :
attachment:gdm-prompt-bug.png
Line 86: Line 79:
Line 88: Line 82:
 * Then replace "!DefaultDepth 24" with "!DefaultDepth 16" in /etc/X11/xorg.conf  by running :
 {{{
sed -e 's/^DefaultDepth.*/DefaultDepth 16/' -i /etc/X11/xorg.conf 
 * Then replace "!DefaultDepth 24" with "!DefaultDepth 16" in /etc/X11/xorg.conf by running :
 {{{
sed -e 's/^DefaultDepth.*/DefaultDepth 16/' -i /etc/X11/xorg.conf
Line 96: Line 90:
Line 99: Line 92:
Line 102: Line 94:
Line 104: Line 95:
Line 114: Line 104:
Line 121: Line 110:
  inline:networkmanager-bug.png
  . attachment:networkmanager-bug.png
Line 124: Line 112:
Line 133: Line 120:
Line 140: Line 126:
Line 142: Line 127:
Line 147: Line 131:
Line 151: Line 134:
 (not covered... use VPC suspend feature.)

 . (not covered... use VPC suspend feature.)
Line 156: Line 137:
Line 158: Line 138:
Pick the Installation that best fits you needs, from [http://www.debian.org/CD/]. I've picked the NetInst CD (at the time of writing, [http://cdimage.debian.org/debian-cd/4.0_r3/i386/iso-cd/debian-40r3-i386-netinst.iso debian-40r3-i386-netinst.iso]). Pick the Installation that best fits you needs, from http://www.debian.org/CD/. I've picked the NetInst CD (at the time of writing, [http://cdimage.debian.org/debian-cd/4.0_r3/i386/iso-cd/debian-40r3-i386-netinst.iso debian-40r3-i386-netinst.iso]).
Line 161: Line 141:
 * Launch "Microsoft Virtual PC" (!!!) [[BR]] inline:Virtual_PC.png

* Click on the "New" button [[BR]] inline:wz1.png

 * Give your VM a name. [[BR]] inline:wz2-name.png

 * Select the type of the hosted OS (Currently, all linux' are considered ''other''). [[BR]] inline:wz3-os.png

 * Allocate some RAM (128Mb is enough for text only. 512Mb is recommended for GUI/Desktop). [[BR]] inline:wz4-ram.png

 * Create a new Virtual Hard-disk image (.VHD, in Microsoft's jargon). [[BR]] inline:wz5-vhd.png

 * Define __maximum__ size and location for the VHD. [[BR]] inline:wz6-vhd-file.png

* Profile created.. [[BR]] inline:wz7-complete.png
 * Launch "Microsoft Virtual PC" (!!!) [[BR]] attachment:Virtual_PC.png
 * Click on the "New" button [[BR]] attachment:wz1.png
 * Give your VM a name. [[BR]] attachment:wz2-name.png
 * Select the type of the hosted OS (Currently, all linux' are considered ''other''). [[BR]] attachment:wz3-os.png
 * Allocate some RAM (128Mb is enough for text only. 512Mb is recommended for GUI/Desktop). [[BR]] attachment:wz4-ram.png
 * Create a new Virtual Hard-disk image (.VHD, in Microsoft's jargon). [[BR]] attachment:wz5-vhd.png
 * Define __maximum__ size and location for the VHD. [[BR]] attachment:wz6-vhd-file.png
 * Profile created.. [[BR]] attachment:wz7-complete.png
Line 178: Line 150:
 * Select the VM, and click on Start, then quickly... [[BR]] inline:Start.png

* Go to the Virtual machine window, in the menu "CD". Go to "Capture CD Image", then pick the debian cdrom image you have downloaded previously. [[BR]]  ''(FYI, You can enter the VirtualPC's host BIOS by pressing the "DEL" key, at boot time).'' [[BR]]  inline:cd-01-boot+menu.png
 * Select the VM, and click on Start, then quickly... [[BR]] attachment:Start.png
 * Go to the Virtual machine window, in the menu "CD". Go to "Capture CD Image", then pick the debian cdrom image you have downloaded previously. [[BR]] ''(FYI, You can enter the VirtualPC's host BIOS by pressing the "DEL" key, at boot time).'' [[BR]] attachment:cd-01-boot+menu.png
Line 183: Line 153:
 * You should now reach the Debian CD boot prompt. [[BR]] ''You can type {{{installgui vesa i8042.noloop=1 clock=pit vga=791}}} to run the nice graphical installer, or just press Enter for text mode''. [[BR]] inline:cd-boot-prompt.png

* You should now reach the Debian CD boot prompt. [[BR]] ''You can type {{{installgui vesa i8042.noloop=1 clock=pit vga=791}}} to run the nice graphical installer, or just press Enter for text mode''. [[BR]] attachment:cd-boot-prompt.png
Line 188: Line 158:
 inline:gdm-prompt.png
 . attachment:gdm-prompt.png
Line 193: Line 162:
Line 197: Line 165:
~-{{{ ~--~

{{{
Line 199: Line 169:
 Flags: bus master, medium devsel, latency 0         Flags: bus master, medium devsel, latency 0
Line 202: Line 172:
 Flags: bus master, medium devsel, latency 0         Flags: bus master, medium devsel, latency 0
Line 205: Line 175:
 Flags: bus master, medium devsel, latency 0
 I/O ports at ffa0 [size=16]
        Flags: bus master, medium devsel, latency 0
        I/O ports at ffa0 [size=16]
Line 209: Line 179:
 Flags: medium devsel, IRQ 9         Flags: medium devsel, IRQ 9
Line 212: Line 182:
 Flags: bus master, fast devsel, latency 0
 Memory at f8000000 (32-bit, non-prefetchable) [size=64M]
        Flags: bus master, fast devsel, latency 0
        Memory at f8000000 (32-bit, non-prefetchable) [size=64M]
Line 216: Line 186:
 Subsystem: Unknown device [0a00:2114]
 Flags: bus master, medium devsel, latency 64, IRQ 11
 I/O ports at ec00 [size=128]
 Memory at febff000 (32-bit, non-prefetchable) [size=4K]
 Expansion ROM at febe0000 [disabled] [size=64K]
}}}-~
        Subsystem: Unknown device [0a00:2114]
        Flags: bus master, medium devsel, latency 64, IRQ 11
        I/O ports at ec00 [size=128]
        Memory at febff000 (32-bit, non-prefetchable) [size=4K]
        Expansion ROM at febe0000 [disabled] [size=64K]
}}}
Line 223: Line 193:
## Uncomment and Paste the output of one of the three lines (within some {{{ }}}} brackets)  ## Uncomment and Paste the output of one of the three lines (within some {{{ }}}} brackets)
Line 226: Line 196:
##lsusb -v | grep -E '\<(Bus|iProduct|bDeviceClass|bDeviceProtocol)' 2>/dev/null  ##lsusb -v | grep -E '\<(Bus|iProduct|bDeviceClass|bDeviceProtocol)' 2>/dev/null
Line 235: Line 205:
Line 236: Line 207:
## Some interesting files you can attach: (Named with computer name and model, and debian version, like "dmidecode.Etch_Thinkpad_T60_1952-W5R.txt")  ## Some interesting files you can attach: (Named with computer name and model, and debian version, like "dmidecode.Etch_Thinkpad_T60_1952-W5R.txt")
Line 241: Line 212:
##[[AttachList]] 
##[[AttachList]]
Line 244: Line 216:
Line 253: Line 224:
Line 255: Line 225:
 * Color depth bug  : ~- [https://help.ubuntu.com/community/HowToConfigureUbuntuForMicrosoftVirtualPC2004] -~
 * keyboard bug : ~- [http://www.fedoraforum.org/forum/showthread.php?t=181428] -~
 * kernel 2.6.19 keyboard bug (not affecting Debian/Etch) ~-[https://help.ubuntu.com/community/HowToConfigureUbuntuForMicrosoftVirtualPC2004]-~
 * Mouse scroll bug : ~-[http://ubuntuforums.org/showthread.php?t=302862&page=2]-~
 * Mouse freezing on 2.6.19+ : ~-[https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/87262]-~
 * Color depth bug : ~-https://help.ubuntu.com/community/HowToConfigureUbuntuForMicrosoftVirtualPC2004 -~
 * keyboard bug : ~-http://www.fedoraforum.org/forum/showthread.php?t=181428 -~
 * kernel 2.6.19 keyboard bug (not affecting Debian/Etch) ~-https://help.ubuntu.com/community/HowToConfigureUbuntuForMicrosoftVirtualPC2004-~
 * Mouse scroll bug : ~-http://ubuntuforums.org/showthread.php?t=302862&page=2-~
 * Mouse freezing on 2.6.19+ : ~-https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/87262-~
Line 262: Line 232:
## CategoryDesktopComputer  ## CategoryDesktopComputer

?BR /!\ Microsoft Virtual PC is a non-free (proprietary) software. It isn't supported by Debian. It's probably wiser to use a free SystemVirtualization tool. ?BR ?BR

?Include(InstallingDebianOn/Ratings/CategoryEtchUnrated)

?Include(InstallingDebianOn/PageFragments/Philosophy)

Models covered?BRVirtual PC 2007 (32bits), on Windows XP and Vista 32bit

Overall Status

Core Components

attachment:photo.png

Boot Standard Kernel:

{OK}

LAN network card:

{OK}

Detect CD/DVD:

{OK}

Detect hard drives:

{OK}

Extra Features

Xorg

{i}

- OpenGL

[?]

- Resize-and-Rotate(randr)

{OK}

Sound

{i}

Mouse

{OK}

Legend :?BR {OK} = OK ; {X} Unsupported(No Driver) ; /!\ = Error (Couldn't get it working); [?] Unknown, Not Test ; [-] Not-applicable ?BR {i} = Configuration Required; X-( = Only works with a proprietary driver

Important Note

Debian Etch
Make sure read at least the sections [#kernel-param Kernel Parameters] and [#xorg Xorg Display] before installing Debian.

?BR ?BR


Debian testing and unstable aren't really coverd by this guide, but still, here are a few hints :

Debian Testing

same as Etch. Also, kernel 2.6.22 requires the i8042.noloop=1 hack listed below

Debian Sid

Use 2.6.24-486 (kernel 2.6.24-686 hangs at boot time see bug 433606).

the following bugs workaround aren't needed anymode : kernel parameter i8042.noloop=1, clock=pit and well as psmouse's hack.

Configuration

?Anchor(kernel-param)

Kernel Parameters

You should pass some parameter to the kernel. This can be achieved in two ways :

  • At installation time, when you first boot the kernel, pass the following kernel parameters : "vesa i8042.noloop=1 clock=pit vga=791" (see [#boot-prompt CD Boot prompt screenshot])

or, after installation :

  • Open a terminal as Root (under Gnome : Menu> Application> Accessories > Root Terminal)

  • run :
    gedit /boot/grub/menu.lst
  • Find the line starting with "# defoptions=", and replace it with :
    # defoptions=vesa i8042.noloop=1 clock=pit vga=791

(Leave the "#" at the beginning of the line).

  • then run update-grub

?Anchor(xorg)

Xorg Display

The video adapter emulated is an "S3 Inc. 86c764/765 [Trio32/64/64V+]", PciID:5333:8811

  • /!\ If you installed a GUI (Desktop), you will have to reconfigure Xorg, because the display will be too wide and corrupted, like :

attachment:gdm-prompt-bug.png

That's because the Virtual PC emulation is incomplete ("s3" doesn't support 24bit mode, as explained [http://blogs.msdn.com/virtual_pc_guy/archive/2005/05/09/415814.aspx here]. see bug 470408 )

That's easy to fix :

  • Press Ctrl-Alt-F1, to switch to virtual console.
  • Login as root.

  • Then replace "DefaultDepth 24" with "DefaultDepth 16" in /etc/X11/xorg.conf by running :

    sed -e 's/^DefaultDepth.*/DefaultDepth 16/' -i /etc/X11/xorg.conf
  • then restart gdm, with :
    invoke-rc.d gdm restart

RandR

  • xrandr is working

High Resolution

  • If you need higher resolution (1280x1024), you can use fbdev video driver in /etc/X11/xorg.conf, with vga=794 as kernel parameter (but xrandr doesn't seems to work anymore)

  • Another solution to get high resolution: Instead of using the fbdev video driver you can simply change the default "S3" driver in section "Device" Identifier "S3 Inc. 86c764/765 [Trio32/64/64V+]" to "vesa" in /etc/X11/xorg.conf - In conjunction with vga=794 as kernel parameter you will get 1280x1024 too (xrandr will still work!)

Audio

The emulated audio device is a "SoundBlaster 16" compatible device.

  • Open a terminal as Root (under Gnome : Menu> Application> Accessories > Root Terminal)

  • run :
    gedit /etc/modules
  • Add the line "snd-sb16" at the bottom of the page.

This problem has been reported upstream [https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3842 alsabug 3842].

Networking

The emulated device is a "Digital Equipment Corporation DECchip 21140 [FasterNet]" PCI id:1011:0009.

  • The device (or driver) has no link detection. So network-manager will show an unplugged device. Even though it's working ! (known upstream by Gnome as bug [http://bugzilla.gnome.org/show_bug.cgi?id=418745 #418745]). ?BR If you lose Network connection then left click on the nm-applet then click on "Wired Network" :

    • attachment:networkmanager-bug.png
  • Slow/stalling file transfers on kernel 2.6.22 and 2.6.24. Workaround : run a ping command (typically, you can ping your IP gateway).

Mouse

The mouse is working well.

To enable the scroll wheel, you'll have to pass "proto=imps" to the module psmouse :

  • Open a terminal as Root (under Gnome : Menu> Application> Accessories > Root Terminal)

  • run :
    echo options psmouse proto=imps > /etc/modprobe.d/psmouse
  • Then reboot (or unload and reload that module)
  • Debian Testing and Unstable (kernels >= 2.6.19) have "The mouse pointer appears in the center of the screen, but it is unresponsive." which can be solved by passing i8042.noloop=1 to the kernel at boot time (see bug 433815).

Computer Timer

Due to a bug in Virtual PC ([http://support.microsoft.com/Default.aspx?kbid=918461 KB918461]), you need to pass clock=pit as kernel parameter.

  • See [#kernel-param Kernel Parameters] above

The problem can be that the clock is shifting/drifting, or the keyboard repeat the pressed keys.

Power Management

  • (not covered... use VPC suspend feature.)


Step by Step Installation

Download Debian ISO image

Pick the Installation that best fits you needs, from http://www.debian.org/CD/. I've picked the NetInst CD (at the time of writing, [http://cdimage.debian.org/debian-cd/4.0_r3/i386/iso-cd/debian-40r3-i386-netinst.iso debian-40r3-i386-netinst.iso]).

Create the VM

  • Launch "Microsoft Virtual PC" (!!!) ?BR attachment:Virtual_PC.png

  • Click on the "New" button ?BR attachment:wz1.png

  • Give your VM a name. ?BR attachment:wz2-name.png

  • Select the type of the hosted OS (Currently, all linux' are considered other). ?BR attachment:wz3-os.png

  • Allocate some RAM (128Mb is enough for text only. 512Mb is recommended for GUI/Desktop). ?BR attachment:wz4-ram.png

  • Create a new Virtual Hard-disk image (.VHD, in Microsoft's jargon). ?BR attachment:wz5-vhd.png

  • Define maximum size and location for the VHD. ?BR attachment:wz6-vhd-file.png

  • Profile created.. ?BR attachment:wz7-complete.png

Configure the VM to boot from CD

  • Select the VM, and click on Start, then quickly... ?BR attachment:Start.png

  • Go to the Virtual machine window, in the menu "CD". Go to "Capture CD Image", then pick the debian cdrom image you have downloaded previously. ?BR (FYI, You can enter the VirtualPC's host BIOS by pressing the "DEL" key, at boot time). ?BR attachment:cd-01-boot+menu.png

?Anchor(boot-prompt)

  • You should now reach the Debian CD boot prompt. ?BR You can type installgui vesa i8042.noloop=1 clock=pit vga=791 to run the nice graphical installer, or just press Enter for text mode. ?BR attachment:cd-boot-prompt.png

After installation, make sure you read the paragraph about [#xorg S3/Xorg bug].

That's it !

  • attachment:gdm-prompt.png


System Summary

lspci

00:00.0 Host bridge [0600]: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (AGP disabled) [8086:7192] (rev 03)
        Flags: bus master, medium devsel, latency 0

00:07.0 ISA bridge [0601]: Intel Corporation 82371AB/EB/MB PIIX4 ISA [8086:7110] (rev 01)
        Flags: bus master, medium devsel, latency 0

00:07.1 IDE interface [0101]: Intel Corporation 82371AB/EB/MB PIIX4 IDE [8086:7111] (rev 01) (prog-if 80 [Master])
        Flags: bus master, medium devsel, latency 0
        I/O ports at ffa0 [size=16]

00:07.3 Bridge [0680]: Intel Corporation 82371AB/EB/MB PIIX4 ACPI [8086:7113] (rev 02)
        Flags: medium devsel, IRQ 9

00:08.0 VGA compatible controller [0300]: S3 Inc. 86c764/765 [Trio32/64/64V+] [5333:8811] (prog-if 00 [VGA])
        Flags: bus master, fast devsel, latency 0
        Memory at f8000000 (32-bit, non-prefetchable) [size=64M]

00:0a.0 Ethernet controller [0200]: Digital Equipment Corporation DECchip 21140 [FasterNet] [1011:0009] (rev 20)
        Subsystem: Unknown device [0a00:2114]
        Flags: bus master, medium devsel, latency 64, IRQ 11
        I/O ports at ec00 [size=128]
        Memory at febff000 (32-bit, non-prefetchable) [size=4K]
        Expansion ROM at febe0000 [disabled] [size=64K]

lsusb

No USB !

Resources

?Anchor(attachments)

Attachments

Some configuration files and sample outputs.

  • attachment:debian-etch-on-vpc2007.dmidecode.txt
  • attachment:debian-etch-on-vpc2007.xorg.conf.txt

Credits