Remko Weijnen's Blog (Remko's Blog)

About Virtualization, VDI, SBC, Application Compatibility and anything else I feel like


4,553 views

In the previous part we have already setup the Ubuntu Virtual Machine and we did a build of the kernel image.

So now we can finally compile the driver, in my case I needed a driver for VMWare’s VMXNET3 Network Card.

VMXNET3 is VMWare’s paravirtualized network driver and offers better performance with less host processing power compared to the default e1000 driver.

First we need the source for the driver, we can obtain this from the VMWare Tools either from a running Linux VM or like I did by transferring the file linux.iso from /vmimages/tools-isomages from the vSphere server.

In the iso file is a single file, VMWARETO.TGZ and after unpacking we get a folder called vmware-tools-distrib.

In vmware-tools-distrib/lib/modules/source we find the vmxnet3.tar file that contains our sources. Copy the tar to the Virtual Machine and unpack it, then start a Terminal and cd to the directory where you unpacked the tar.

The first time I attempted a compile I received an error indicating that the file autoconf.h could not be found. After I found this bug report I was able to fix this by creating a link:

We can compile the driver with the make command, referencing the kernel image we created earlier:

Read the rest of this entry »

3,943 views

First we need to setup a Linux Virtual Machine with a distro of choice (I recommend a 32 bit version). I will be using Ubuntu here and the first step is to download the iso.

At the time of writing Ubuntu 10.10 was the Latest version so I used that one.

Create a new Virtual Machine and use the iso as install media, I am using VMWare Workstation and it recognises Ubuntu and performs an “easy install”:

image

The install is unattended (when VMWare Tools are installed you need to perform a login) and took only 6 minutes on my laptop!

Now we need to install gcc (the compiler), open the Ubuntu Software Center:

image

 

Read the rest of this entry »

  • 1 Comment
  • Filed under: Altiris, VMWare
  • 4,333 views

    I was booting a new VMWare Virtual Machine with Windows PE through Altiris for initial deployment but Windows PE halted with a BSOD:

    image

    0x0000005D means UNSUPPORTED_PROCESSOR (defined in bugcodes.h) so I expected there was a x86 vs x64 problem.

    The VM was configured for a 32 bit OS:

    image

    The Altiris Job was configured to use Auto Select:

    image

    But instead of the x86 version of Windows PE, Altiris attempts to boot the x64 version and this explains the BSOD: VMWare prevents the CPU from going to x64 mode and thus Windows has no choice but to halt.

    Workaround is to change the Automation pre-boot environment in Altiris to x86:

    image

    Note that it’s no problem to deploy an x64 OS using the x86 version of Windows PE so I don’t see any real problems with this workaround.

    4,036 views

    If you read one of VMWare’s Best Practices Guides (in my case this one) then you may have read that it’s important to align guest partitions.

    We can do this (for Windows OS) using the DiskPart tool that comes with the OS since Windows 2003 SP1 (there is a hotfix for earlier versions).

    On Windows 2008, and higher, all partitions are automatically aligned to a 1 MB boundary.

    But how to do this for the OS disk on Server 2003?

    My first thought was to open a command prompt during setup, right before creating the partitions and then use diskpart.

    However the OS partition is created during the Text portion of the install process and even though we can get a cmd prompt using SHIFT-F10 we get the recovery console (which has a builtin diskpart but cannot align).

    So I used a Windows PE bootdisk. Any version with Diskpart should do but I used a bootdisk from Symantec Backup Exec System Recovery that I’ve customized to my own needs.

    If you boot the original Symantec disk you can open a command prompt by accessing a hidden feature: move the mouse above the “S” from Symantec until you get a Hand icon and press the left mouse button:

    image

     

     

    Read the rest of this entry »

    2,539 views

    I wanted to boot a Virtual Machine from an USB Stick but even though you can Connect USB devices to VMWare you cannot boot from it.

    It can be done however using a boot manager that is able to perform a boot from USB media. I used Plop Boot Manager.

    Download one of the stable releases (I used 5.0.11-2) and extract plpbt.img from the archive and mount this (don’t forget to select the Connect at power on option) and when booting press Esc for the Boot Menu.

    image

    This would be a good time to Connect the USB device to the Virtual Machine, right click the USB device in the bottom bar:

    image

    And select the Connect option:

    image

    Click OK on the warning message:

    image

    Read the rest of this entry »

  • 0 Comments
  • Filed under: VMWare
  • 5,604 views

    As you may know, recent Intel processors have an extension to the x86 instruction set called Advanced Encryption Standard Instruction Set (AES-NI).

    AES-NI is basically hardware support for AES based encryption and because I had a chance to run some benchmarks on differing systems I was curious what the impact of AES-NI would be.

    I used TrueCrypt for running the benchmarks because this is a real life application and it had support for AES-NI.

    I first ran the benchmark on a laptop with an Intel Core2 DUO (P9700 2,80 GHz):

    image

    clip_image002[5]

    The next system was an Intel Core i7 Q740 (Quad Core with Hyperthreading, so 8 in total) machine.

    image

    Read the rest of this entry »

  • 3 Comments
  • Filed under: General
  • 7,905 views

    After I uninstalled Office 2010 64 bit and installed Office 2010 32 bit I had a problem with Office Communicator 2007 R2.

    After entering my password and clicking sign in it crashed every time:

    image

    In the EventLog an Application Error was recorded with some additional error info:

    Event Type: Error Event Source: Application Error Event Category: (100) Event ID: 1000 Date: 10-3-2011 Time: 15:20:52 User: N/A Computer: remkolaptop Description: Faulting application name: communicator.exe, version: 3.5.6907.221, time stamp: 0x4cddcd9f Faulting module name: KERNELBASE.dll, version: 6.1.7601.17514, time stamp: 0x4ce7bafa Exception code: 0xc06d007e Fault offset: 0x0000b727 Faulting process id: 0xf94 Faulting application start time: 0x01cbdf2e592fc53c Faulting application path: C:\Program Files (x86)\Microsoft Office Communicator\communicator.exe Faulting module path: C:\Windows\syswow64\KERNELBASE.dll Report Id: 9a4e3adf-4b21-11e0-8f0f-c0cb38a92f9b For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

    The exception code is 0xc06d007e which is defined in WINERROR.h as ERROR_MOD_NOT_FOUND, the error description is: “The specified module could not be found”.

    Read the rest of this entry »

  • 0 Comments
  • Filed under: General
  • 17,285 views

    I have worked with Office 2010 x64 for a while now but because of compatibility issues I wanted to remove it and install the x86 version instead.

    After uninstall Office left a key in the registry:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Common\SmartTag\Actions\{B7EFF951-E52F-45CC-9EF7-57124F2177CC}

    I couldn’t remove it so I figured there was a specific process that had opened this key but couldn’t find anything (using Process Explorer).

    Then I checked the permissions on the Office key but it was set to Full Control for Administrators.
    Read the rest of this entry »

  • 9 Comments
  • Filed under: General
  • 3,589 views

    In the previous parts (part 1 part 2) i’ve described the theoretical part and implementation problems. So, now we can write the code:

    1) In case we login the user, we just call LsaLogonUser to get the token:
    Read the rest of this entry »

    3,319 views

    In part 1 I’ve described the theoretical parts needed for a custom autologon application implementation.

    But there are some practical problems which I will describe here.

    1) I use the LsaLogonUser function to log in the user. However, if I do not pass not null for the LocalGroups parameter, msgina.dll fails to process the logon.

    Why? Because it looks for the SE_GROUP_LOGON_ID SID and treat it as logon SID. So we have to add the logon SID manually:
    Read the rest of this entry »

    Donate


    Blogroll


    Categories


    Archives