Convert Dell Service Tag to Express Service Tag

Over the last few weeks I’ve found myself more and more frequently on the phone to Dell. They’ve recently introduced a system where you can key in the Express Service Tag of the system you’re calling about.
Dell Service Tag Converter
Most of the records we keep are of the service tag, not the express service tag. Keen to quickly convert a service tag, I put together a Windows Gadget to do the conversion from my desktop.

Click here to download and install the gadget. I’ve only tested it on Windows 7 x64, but it should work on Vista too.

Technically speaking, the Express service tag is a Base 10 (Decimal) number. The service tag is just a Base36 representation of that number.

Deleting the TFS workspace for a missing account fails (TF50605)

Having decommissioned a few legacy AD DS domains over the last year or so we’ve had a few references in TFS to missing accounts. When attempting to delete the workspace you get the following error:

TF50605: There was an error looking up the SID for OLD-DOMAIN\CCNETNIGHTLYBUILD.

In order to delete the workspace, we need to remap it to a valid user account. Here’s the process to do just that.

Firstly, we should list the workspaces on this computer we’re having problems with (in this case, BUILDSERVER01).

C:\>tf workspaces /owner:* /server:http://tfs-server:8080 | findstr BUILDSERVER01
Workspace		Owner				Computer	Comment
----------------------- ------------------------------- --------------- -------------------------------
BUILDSERVER01		saCCNetNightly			BUILDSERVER01	Temporary CruiseControl.NET Wo
BUILDSERVER01		OLD-DOMAIN\CCNETNIGHTLYBUILD	BUILDSERVER01 	Temporary CruiseControl.NET Wo
BUILDSERVER01		saCCNetNightly			BUILDSERVER01

We may as well attempt to delete the workspace, though the process is likely to fail as it wont be able to resolve the SID if the domain is no longer available.

C:\>tf workspace /delete /server:http://tfs-server:8080 BUILDSERVER01;OLD-DOMAIN\CCNETNIGHTLYBUILD
TF50605: There was an error looking up the SID for OLD-DOMAI\CCNETNIGHTLYBUILD.

At this point, we need to open up the TfsVersionControl table and manually point the workspaces to a valid identity. The first stage is to identify the ID of the missing account:

SELECT IdentityId FROM tfsVersionControl.tbl_Identity WHERE (DisplayName LIKE 'OLD-DOMAIN\CCNETNIGHTLYBUILD')

Now that we have the ID, we can locate the workspaces the owner has on the server we’re having problems with.

SELECT WorkspaceId, OwnerId, WorkspaceName FROM tfsVersionControl.tbl_Workspace WHERE (OwnerId = 311) AND (Computer = 'BUILDSERVER01')

We should now update the tfsVersionControl.tbl_Workspace table with a valid IdentityId from the tfsVersionControl.tbl_Identity table. Once that’s done, try the delete command again:

C:\>tf workspace /delete /server:http://tfs-server:8080 "BUILDSERVER01;Dave Hope"
A deleted workspace cannot be recovered.
Workspace 'BUILDSERVER01;Dave Hope' on server 'http://tfs-server:8080' has 0 pending change(s).
Are you sure you want to delete the workspace? (Yes/No) Yes

And hey presto, the workspace is gone.

Join Ubuntu to Active Directory

Having recently deployed a handful of Ubuntu Linux systems for proxies and other roles I wanted to join them to Active Directory for Single Signon. Nobody wants to remember lots of different passwords, lets face it.

I came across a product called Likewise, the free open-source version is available in the standard Ubuntu repositories. Here’s a quick guide for how to get up and running with likewise-open.

Firstly, install Likewise.

$ sudo aptitude install likewise-open

The final part of the installation will prompt you for some information about your Active Directory domain. If you need to change the settings you enter here run dpkg-reconfigure krb5-config.

Likewise Active Directory Domain Controllers

The second screen asks you for an administrative domain controler where password changes will occur.

Administrative server for Likewise

With the installation complete we now need to join the system to the Active Directory domain, this is accomplished with one simple command.

$ sudo domainjoin-cli join NWTRADERS.MSFT Administrator

Likewise Domain Join

I then wanted domain admins to be able to use sudo. This can easily be achieved by adding the following to the end of the /etc/sudoers file.

%NWTRADERS\\domain^admins ALL=(ALL) ALL
« Older Entries