Tag Archive: dell


I was very much surprised just how easy it is to convert a Microsoft Windows 7 laptop into a virtual machine running within Sun’s VirtualBox.  This is what I did:

  • Pull the hard drive from the laptop.  On my Dell Latitude, it was simply unscrewing the two screws on the bottom of the laptop marked with the hard drive simble
  • Attach the drive to a SATA to USB connector and plug it in to your Linux box
  • If you don’t have VirtualBox installed, do so now using apt-get, rpm, or whatever you use to install software
  • Follow How to migrate existing Windows installations to VirtualBox but make sure you specify the entire drive (i.e. /dev/sdh) and not individual partitions else you will miss the hidden partitions that Vista and Windows 7 create

You should have a working Windows 7 Virtual Machine.  You’ll notice that you probably have a huge vdi file.  Let’s shrink that down:

  • Within Windows
    • download and install sdelete from Microsoft
    • download and install PowerDefragmenter
    • Run PowerDefragmenter on your c: drive (as administrator)
    • Run “sdelete -c c:” from a cmd window (as administrator)
    • shutdown windows
  • On the host
    • run “VBoxManage modifyvdi my_disk.vdi compact” replacing “my_disk.vdi” with the name of your vdi file you created earlier
    • Note that if you get a “Shrink hard disk operation is not implemented” error, then you’ve hit bug #2833 and you will want to download the latest VirtualBox to fix it.

At work we have three generic LCD monitors mounted on a pole to view monitoring metrics for our Oracle & Sybase database servers. On a previous machine that was cannibalized for another task, we ran Microsoft Windows XP to drive the three monitors.

Last week we were given a hand me down desktop, a Dell Optiplex GX520 with integrated Intel 82945G/GZ video on the motherboard. When we added the NVidia GeForce4 MX 4000 low profile video card, Windows XP for whatever reason was unable to use both video cards. I proposed Kubuntu 9.04 Linux as an alternative. As it was only myself that I had to convince to make the attempt, I was hard pressed to say no ;-)

The Intel 82945G/GZ video card will be the primary card and must be attached to “Screen 0″ in the ServerLayout section.

The NVidia video card has two connectors:

  1. A standard VGA port driven by a GeForce4 MX 4000 GPU < - Primary nvidia port
  2. A super-video port driven by a Quadro NVS 110M

After the base install of the operating system, XWindows was only able to see the Intel video card. After much tinkering with the /etc/xorg.conf file, I was able to get all three LCD monitors to work with Xinerama. There are a number of gotchas that you might run into:

  • If the integrated Intel video card is set to Auto in the BIOS, the card will be completely disabled. You need to disable Auto
  • You need to know which Nvidia Device entry drives the VGA connector. It must be initialized prior to the S-Video port.
  • Disable NVidia’s TwinView and metamodes option lines in the Screen Section.
  • Use sudo lspci to identify the pci bus ids. You will need to put them in the Device Sections.
  • The integrated Intel video card must use the vesa video driver as the intel video driver will stacktrace when used with xinerama.
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 1.0  (buildd@palmer)  Sun Feb  1 20:21:04 UTC 2009

Section "ServerLayout"
    Identifier     "Default Layout"
    Screen      0  "Screen0" 0 0  
    Screen      1  "Screen2" Above "Screen0"
    Screen      2  "Screen1" Above "Screen2"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"    
    Option "Xinerama" "On"                  
EndSection                                  

Section "Files"
    ModulePath      "/usr/lib/xorg/modules/extensions"
    ModulePath      "/usr/lib/xorg/modules/drivers"  
    ModulePath      "/usr/lib/xorg/modules"          
EndSection                                            

Section "Module"
    Load           "glx"
EndSection              

Section "ServerFlags"
    Option         "xinerama" "true"
    Option         "DefaultServerLayout" "Default Layout"
EndSection                                              

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"      
EndSection                    

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"  
EndSection                              

Section "Monitor"
    Identifier     "Configured Monitor"
EndSection                            

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "CMO CMC 17 AD"
    HorizSync       30.082.0  
    VertRefresh     50.075.0  
EndSection                        

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "CMO CMC 17 AD"
    HorizSync       30.082.0  
    VertRefresh     50.075.0  
EndSection                        

Section "Monitor"
    Identifier     "Monitor2"
    VendorName     "Unknown"
    ModelName      "Seiko"  
    HorizSync       30.075.0
    VertRefresh     60.0      
EndSection                    

Section "Device"
    Identifier     "Configured Video Device"
    Driver         "nvidia"                
    Option         "NoLogo" "True"          
EndSection                                  

Section "Device"
   Identifier  "Device0"
   #Driver      "intel"
   Driver      "vesa"  
   VendorName  "Intel Corporation"
   BoardName   "82945G/GZ Integrated Graphics Controller"
   BusID       "PCI:0:2:0"                              
   Screen          0                                    
EndSection                                              

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "Quadro NVS 110M"
    BusID          "PCI:4:0:0"
    Screen          1
EndSection

Section "Device"
    Identifier     "Device2"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce4 MX 4000"
    BusID          "PCI:4:0:0"
EndSection

Section "Screen"
    Identifier     "Default Screen"
    Device         "Configured Video Device"
    Monitor        "Configured Monitor"
    DefaultDepth    24
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "TwinView" "0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen2"
    Device         "Device2"
    Monitor        "Monitor2"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "TwinViewXineramaInfoOrder" "CRT-0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Extensions"
    Option         "Composite" "on"
EndSection

This should work with any Dell Latitude laptop but YMMV.

wget -q -O – http://linux.dell.com/repo/firmware/bootstrap.cgi > dell_bootstrap.sh
sudo bash dell_bootstrap.sh
sudo aptitude install firmware-addon-dell firmware-tools
sudo aptitude install $(sudo bootstrap_firmware -a)
sudo update_firmware –yes

After upgrading the BIOS, you will need to perform a warm reboot (System -> Quit -> Restart). You don’t need to boot into Windows to upgrade the BIOS :)

My mom’s new Dell Vostro 1500 laptop worked quite well until we hooked it up to her Dell All In One 962 Photo printer. When we installed the printer driver software, we received a MFC C++ 6.0 “runtime error” on the dlbxmon.exe program. Reinstalling the software made no difference. What did was a full uninstall of the software and a reinstall of the software.

How to:

  1. download and run the Vista 32 bit (yes, you need the Vista software) PC Upgrade software from Dell’s web page which will completely uninstall the XP driver
  2. download and run the Windows XP driver from Dell’s web page.

You may need to reboot the machine between steps 1 & 2.