Sunday, July 19, 2009

iSAW - Update

In a previous post I pointed to the iSAW which was available for pre order. The website is now updated with the message pro-order is clossed. Check the website for the reason.
http://www.usbchainsaw.com/

Monday, July 13, 2009

KON-BOOT

Today I stumbled on a piece of hacking software: KON-BOOT by Piotr Bania
I haven' tried it yet but the information on the site is promissing:
Kon-Boot is an prototype piece of software which allows to change contents of a linux kernel (and now Windows kernel also!!!) on the fly (while booting). In the current compilation state it allows to log into a linux system as 'root' user without typing the correct password or to elevate privileges from current user to root. For Windows systems it allows to enter any password protected profile without any knowledge of the password. It was acctually started as silly project of mine, which was born from my never-ending memory problems :) Secondly it was mainly created for Ubuntu, later i have made few add-ons to cover some other linux distributions. Finally, please consider this is my first linux project so far :) Entire Kon-Boot was written in pure x86 assembly, using old grandpa-geezer TASM 4.0.
And the list of tested Windows version is scary:

Tested Windows versions

Windows Server 2008 Standard SP2 (v.275)
Windows Vista Business SP0
Windows Vista Ultimate SP1
Windows Vista Ultimate SP0
Windows Server 2003 Enterprise
Windows XP
Windows XP SP1
Windows XP SP2
Windows XP SP3
Windows 7
Check it out on http://www.piotrbania.com/all/kon-boot/
Also check out his blog: http://blog.piotrbania.com/

Enabling virtualization on a Sony Vaio (The Unofficial guide)

Since the Sony Vaio is a pretty expensive laptop, and Sony won't give full support, an Sony customer needs to be creative to unleash the full potential of his Sony Vaio.

In this case my Sony Vaio doesn't support Virtualization. This is needed to use XP mode in Windows 7. Or if you want to use Hyper-V in Windows Server 2008. My processor supports virtualization, but only the BIOS won't let me enable this :-(

Several mails to sony support al came back stating that it is not supported and won't ever be supported on my model. Sony has made choices on which models to support, and the model I have is NOT one of them...

Since I want the full package if I buy something, and cannot return the laptop, I had to be creative. I started nosing around on the internet and with help I came to the following guide:

This is my guide to enable Virtualization on a Sony Vaio.
· Download HP USB Disk Storage Format Tool (http://www.bootdisk.com/plan040109/hpflash1.zip)
· Download Virtual Floppy Driver (http://chitchat.at.infoseek.co.jp/vmware/vfd21-080206.zip)
· Download a boot floppy image (http://www.bootdisk.info/modules.php?modid=1&id=55)
· Install and start the Virtual Floppy Driver
· Initiate the floppy drive (Run as Admin)
· Install the boot floppy image on the virtual floppy drive
· Install and Start the HP USB Disk Storage Format Tool ( Run as Admin )
o Install as FAT32
o Select Quick Formateren
o Select DOS Startup disk
§ Use the files on the virtual floppy drive
o Click Start
· Copy SYMCMOS.EXE to the USB Drive (ftp://ftp.supermicro.com/utility/Phoenix_bios_utility/SYMCMOS.EXE)
· Copy pedit to the USB Drive (http://www.flaxfx.com/dwl/pedit.zip )
· Restart your Sony Vaio from the USB Disk
· Enter the following commands:
o symcmos -v2 -lcmos.sav
o pedit\pedit.exe cmos.sav
§ Modify the register from 0000 to 0001 on the following place (dependent of the laptop model)
§ SONY MODEL      BIOS VERSION    REGISTER
==========      ============    ========
VGN-AR21S       R0200J6         reg 0195
VGN-AR41S R0030J8  reg 027F
VGN-AR51M       R1050J8         reg 027F
VGN-AR51SU      R1050J8         reg 027F
VGN-AR51E   reg 027F
VGN-AR61ZRU R2080J8  reg 0285
VGN-AR670       R1050J8         reg 027F
VGN-AR71M R2090J8  reg 0285
VGN-AR71S R2090J8  reg 0285
VGN-C290N R0080J4  reg 0318
VGN-CR520E R3041Q0  reg 05BB
VGN-FE890       R0200J3         reg 0195
VGN-FZ11ZR      R0050J7         reg 02D3
VGN-FZ180E      R0050J7         reg 02D3
VGN-FZ21M                       reg 02CD
VGN-FZ21Z       R1120J7         reg 02CD
VGN-TZ27GN R0071N7  reg 0363
VGN-FZ280E      R1120J7         reg 02CD
VGN-FZ290                       reg 02CD
VGN-FZ290E      R1120J7         reg 02CD
VGN-FZ31M       R2110J7         reg 02D0
VGN-FZ340E R2110J7  reg 02D0
VGN-FZ470E R2110J7  reg 02D0
VGN-FZ490N R2110J7  reg 02D0
VGN-FZ91NS      R1120J7         reg 02CD
VGN-SZ          R0112N0         reg 0354
VGN-SZ          R0101S5         reg 02F1
VGN-SZ1XP                       reg 0399
VGN-SZ330P R0096N0         reg 0399
VGN-SZ370       R0096N0         reg 0399
VGN-SZ3XP R0096N0  reg 0318
VGN-TX3XP R0034N3  reg 03A2
VGN-TZ130N      R0052N7         reg 0363
VGN-TZ180         reg 027F
VGN-TZ1RXN_B R0061N7  reg 0363
VGN-TZ91HS R0052N7  reg 0363
§ Save your changes ( Alt-F Save )
§ Close pedit ( alt-x )
o symcmos -v2 -ucmos.sav
·Cold Reboot the systeem and virtualization should be on.

NOTE: Use at own Risks. I am not responsible for any problems which might occur from this change

Created a guide with the information from How to Enable Intel VT and AHCI on a VAIO SZ
Tested on my Sony Vaio

Edit: Updated the list
Edit: modified bootflop download link

Friday, July 10, 2009

Wednesday, July 8, 2009

i.Saw - The World's First USB-powered Chainsaw



I knew it is possible to bring IT to every job. Even the lumberjack is not safe for improvement:

i.Saw - The World's First USB-powered Chainsaw

Tuesday, July 7, 2009

Add HD Audio bus driver using txtsetup.sif

This shows how to add the HD Audio bus driver without PNP support in WinPE 2005. This is the recommended method for BDD 2007 since it doesn't require recompiling the WinPE image, and is a lot faster than using WinPE 2005 PNP support. But this also works for MDT 2008.

This example assumes that you have created an OSD deployment point and created the WinPE 2005 Generic Image by updating the Deployment Point. In the example my OSD Deployment point is on F:\OSD-XP

1. Request, download and extract the 888111 hotfix to c:\tmp
2. Copy the hdaudbus.sys file from c:\tmp\common files to F:\OSD-XP\Boot\Source\i386\system32\drivers
3. Modify the F:\OSD-XP\Boot\Source\i386\txtsetup.sif file using following info
a. In the [SCSI.LOAD] section add
hdaudbus = hdaudbus.sys,4
b. In the [HardwareIdsDatabase] section, add
PCI\CC_0403 = "hdaudbus" ( NOTE: Make sure that the " are correct )
4. Update OSD with the new WinPE structure (F:\OSD-XP\Boot\Source)
5. Create a new Zero Touch Installation CD

Source: For John - Don't mess with my audio drivers

No more driver issues for new Dell systems

When deploying systems ever found yourself in need for a good driver set which contains all drivers, and no duplicates.
I was.
For our customer we had to create a deployment solution to deploy several Dell systems. We had some problems with the Latitudes E4300, E6400 and E6500 and the Precision M6400. The problem was that not all drivers were easily found on the internet. For instance we had problems with the Broadcom USH driver.

We were glad to find that Dell created a website with on there cabfiles with all drivers for a system.
Also they created a page with a lot of instructions and howtos, and a complete instruction how to inject the winpe driver set into winpe. Really awesome.

Single partition when refreshing a computer?

In my search for a script to copy the $OEM$ files I also found a script on the Project84 website which makes it possible to have only one partition when deploying a computer in a refresh scenario. A refresh scenario is the scenario in which you reinstall the computer and use USMT to save and restore the userstate. Normaly when this is done it is not possible to format the harddrive since you might remove all the needed files.
This script simply removes all additional partitions on the disk and then resize the System Partition.

For our customer this is used to come to a standard client and remove all legacy states with multiple partitions.. Really great script.

$OEM$ Files when using SCCM and MDT

When deploying images with MDT in combination with SMS or just MDT you can place the $oem$ files in the MDT Distribution share. With SCCM this is not possible (or at least not working)
To find a solution for this I started searching the internet (just following my motto not to create anything I someone else has already shared this.
This search brought me to the site of Project84 mirror where they placed a script which did exactly what I wanted. The script simply copies the files which are placed in the MDT Settings Package $OEM$ folder (you have to create this folder)
This are the steps to perform to get this working (taken from the Project84 mirror website)
  1. Added my $OEM$ Files to my MDT Settings Package. (The one with unattend.txt, sysprep.inf and customsettings.ini)
  2. Add Z-CONFIG-CopyOEM.wsf to your MDT Source Files package. I've provided it below. (Remember to update DP)
  3. In your Task Sequence right before "Setup Windows and ConfigMgr" add a new "Run Command Line" task.
  4. Set the Name to "Copy OEM Files".
  5. Set the Command Line to "cscript.exe "%deployroot%\scripts\Z-CONFIG-CopyOEM.wsf".
  6. Click the "Package" checkbox and select your MDT Settings Package.
  7. All Done!

SMS / SCCM Client healthscript

For a customer we needed a solution for the SMS agents which were failing.
I stumbled upon the script from Brian Mason: SMS Client Health Script Since the use of this script the failures of clients have minimized. But then the customer decided to upgrade their SMS environment to SCCM 2007. Since I didn't know if the script was SCCM complient I started searching on the internet. There I found the blog of Shaun Cassels with an updated version of the script.
We tried that script and found a little problem during deployment. When a client is being deployed the client is reassigned to another SCCM Site server. The deployment server is a seperate server. Bummer.

Did some hobbying arround and came up with the following

Made changes are:

If WKS_ASSIGNSITECODE is not equal to AUTO have the sitecode set in the client to the requested

If the installation is still ongoing in a different site ( PXEInstallationSite ) the reassignment will not occur and the script will exit.

' =============================================================================
' Method:       CHK_ASSIGNMENT
' Description:  Checks Client Site Assignment
' =============================================================================
Dim PXEInstallationSite = "S01"
Sub CHK_ASSIGNMENT
On ERROR Resume Next
Err.clear
COLLECTMSG "CHK_ASSIGNMENT",">",NULL
Dim oSMSClient
Set oSMSClient = CreateObject ("Microsoft.SMS.Client")
If err.Number<>0 Then
COLLECTMSG "CHK_ASSIGNMENT","ERROR", Err.description
COLLECTMSG "CHK_ASSIGNMENT","Could not create SMS Client Object - Quitting", Null
Else
' BSt modification start
Dim mySMSSite
mySMSSite = oSMSClient.GetAssignedSite
if mySMSSite = PXEInstallationSite and objFSO.FolderExists("c:\_SMSTaskSequence") then
wscript.quit
End if
' BSt modification end
If Len(mySMSSite) = 0 Then
CLIENTSTATE = CLIENTSTATE + 1
RegCounter "CHK_ASSIGNMENT",1
If WKS_ASSIGNSITECODE = "AUTO" Then
'have the client determine from AD or SLP appropraite site code
oSMSClient.ReAssignSite
COLLECTMSG "CHK_ASSIGNMENT", _
"Error - Client not installed correctly - Setting AUTO", _
Null StrERRType=StrERRType & "ASSIGNMENT_"
Else
oSMSClient.SetAssignedSite(WKS_ASSIGNSITECODE)
COLLECTMSG "CHK_ASSIGNMENT", _
"Error - Client not installed correctly - Setting " &_
WKS_ASSIGNSITECODE, Null StrERRType=StrERRType & "ASSIGNMENT_"
End If
Else
COLLECTMSG "CHK_ASSIGNMENT",">", "Assigned Site = " & _
oSMSClient.GetAssignedSite
End If
End If
Set oSMSClient=Nothing
End Sub