Booting Windows PE from a USB flash drive

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Something that I’ve been playing around with for a while now is booting Windows Preinstallation Environment (Windows PE) from a USB flash drive and a few weeks back I finally found enough time to have a proper look at this and make some progress.

There’s lots of anecdotal evidence of success (or otherwise) on the ‘net, but because Microsoft restricts access to Windows PE, many people are using Bart Lagerweij’s BartPE as an alternative. I do have access to Windows PE and specifically wanted to get this working using the Microsoft version. Some people (e.g. Niko Sauer and Dag at bootdisk.info) have done similar things with Linux variants such as Knoppix.

It seems that not every USB flash drive is capable of acting as a boot device and not every PC BIOS supports USB boot. If there is no BIOS support, then it’s just not going to work (I think USB 2 is also a prerequisite). It’s also unlikely that a USB stick will work as shipped from the factory – it will need a boot partition to be (re)written and the easiest way to do this is with a USB disk format tool.

I got a Dell Latitude D600 to boot MS-DOS last year using a Dell 128MB USB flash drive (which is a rebadged Lexar Digital Film device) but didn’t get much further because Windows PE was too large to fit on the device. More recently, I’ve been using a 256MB SanDisk Cruzer Mini that I bought from MyMemory.co.uk for £9.99. I’ve use this to successfully boot an IBM Thinkpad T40 and a Compaq Evo D510SFF but can’t test on the Fujitsu Siemens Lifebook S7010D that I use for work because I don’t have access to the BIOS (thanks to my employer’s corporate information systems administrators).

Here’s my process for taking a USB flash drive from new to booting Windows PE:

  1. Check that the PC BIOS supports booking from USB-attached removable media and enable this.
  2. Download and install a USB flash drive format utility – I used the HP USB disk storage format tool v2.1.8 (SP27608) but alternatives include the Dell USB memory key utility revision 1.0.6.25 (R69131) and Martin List-Petersen also recommends MBRTool, which formats a USB flash drive in hard disk mode and installs a FreeDOS kernel (with FAT32 support); however he also reports that it seems to have trouble with USB keys of 256MB or larger.
  3. Format the USB flash drive with a FAT16 file system, including ability to work as an MS-DOS startup disk and with quick format deselected.
  4. Perform a test boot into MS-DOS using the USB flash drive.
  5. Download BootPart and copy this to the USB flash drive (I used v2.60).
  6. Copy a Windows PE installation that is known to work from CD/DVD to the USB flash drive.
  7. Rename the \i386 folder to \minint.
  8. Copy ntdetect.com from \minint to \.
  9. Copy setupldr.bin from \minint dir to \ and rename to ntldr (no extension).
  10. Reboot from the USB flash drive and run bootpart (you can now delete the DOS files on the stick and remove the boot. ini entry for MS-DOS (if really needed, personally I would leave it there).
  11. Reboot from the USB flash drive once more and Windows PE should load.

Some notes I’ve read suggest that there is an extra step – i.e. that of copying winbom.ini from \minint dir to \; however, using a colleague’s pre-built Windows PE 2005 images I couldn’t get the normal PE one to work – only the one which was configured to to use a RAM disk (and that didn’t have a winbom.ini). The downside of this was that it took about an hour to boot! I thought this was because the reference PC only had 256MB RAM but tried on a 512MB machine and no difference. Obviously need to do more work in this area, but the basic principle of booting from the USB flash drive is now proven.

I’ll post an update with the final configuration when I manage to make Windows PE more performant but, at present, the file system on my USB flash drive looks like this:

\bootpart.exe (01/08/2005 02:06 44,544 bytes)
\winnt.sif
\winpex86.iso
\ntldr (25/03/2005 11:00 298,096 bytes)
\ntdetect.com (25/03/2005 11:00 47,772 bytes)
\minint\bootfix.bin (25/03/2005 11:00 1,024 bytes)
\minint\ntdetect.com 25/03/2005 11:00 47,772 bytes)
\minint\setupldr.bin (25/03/2005 11:00 298,096 bytes)
\minint\winnt.sif

The winnt.sif file contains the following text:

[SetupData]
BootDevice = "ramdisk(0)"
BootPath = "\i386\System32\"
OsLoadOptions = "/noguiboot /fastdetect /minint /rdexportascd /rdpath=winpex86.iso"
Architecture = "i386"

Links
USB articles at bootdisk.info
MSFN forum – Boot PE from USB flash drive
Oliver Aaltonen’s USB booting tips
Jacopo Lazzari’s USB pendrive how to
The CD Forum – boot your WinPE or UBCD4Win on USB flash drive

How not to use e-mail

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Jon Boxall’s blog features the sorry tale of a solicitor who clearly hasn’t got to grips with modern technology. Made me laugh, although I do hope Jon got somewhere with his conveyancing in the end… poor bloke.

BT’s view of networks in the 21st century

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Last year, I wrote about the emergence of MPLS as an alternative network technology to traditional leased lines. It seems that everyone I work with is in the process of, or thinking about, dumping their kilostream/megastream/frame relay links and moving to something more cost-efficient.

Thus have a full-page advert in this week’s IT Week for their National Ethernet (a UK-based network with points of presence from the Shetland Islands to the south coast of England, but strangely none in Wales, east or south-west England). COLT, have their EuroLAN (only three UK POPs, but coverage in many major European cities) and BT are touting their global presence, whilst investing heavily in their 21st Century Network (dubbed 21CN).

Last week I was present at a presentation given by BT about what they call the “digital networked economy” (and their 21CN). Although they wouldn’t share their slide deck with me, I’m not aware of any non-disclosure agreement and much of the following information is available from a Google search anyway!

BT explained that the “inter-human web” has arrived. After the Internet had existed for many years as an e-mail and file transfer mechanism, mainly used by government and educational establishments, Sir Tim Berners-Lee invented the world wide web, making the Internet user-friendly. Now we have a collaborative infrastructure built on e-mail, file transfer and the human aspects that the web provides and furthermore, according to BT, “a hurricane is ripping our industry apart”:

  • Traditional voice services face increased market pressure – 4 major US telcos lost 2% of their retail market base in one quarter.
  • Next-generation networks (NGNs) offer greater bandwidth and have taken the first steps towards replacing terrestrial television – viewers of last summer’s Live 8 concerts on AOL outnumbered MTV viewers 2:1 and BSkyB has linked up with EasyNet to offer broadband and telephony services combined with satellite television.
  • Revenue per megabit for broadband connectivity has collapsed – meanwhile UK connections are now pushing past the 10mbps mark, the US has 25mbps, and the far east is looking at 50-100mbps.
  • Network/service separation is expanding the base for traditional telcos’ competitors – using IT, homeworkers can be called wherever they are, and no-one need know that they are not in the office.

BT claims that it’s 21CN is about giving its customers control to enable communications; offering new services (faster than previously); and reducing costs to grow cash. They are betting the company on 21CN (to put this into context, BT is investing more into 21CN than the UK Government is investing in our road infrastructure).

Having said that, they are coming from a pretty poor starting point. The current infrastructure is a mess, with a mixture of networking technologies. 21CN is intended to offer Ethernet right back to the Exchange, with copper (DSL), wireless, and fibre links through to aggregators at 5500 sites, and onwards to BT’s core IP/MPLS/wavelength division multiplexing (WDM) network.

Ethernet has not traditionally been a successful wide area networking technology, so BT is investing in the use of carrier grade Ethernet, looking at fast restoration, auto discovery, scalability, class-based queuing, protection switching, fault and performance monitoring.

BT’s vision sees 21CN to be at the heart of the UK economy, innovating to provide “more than dumb fat pipes” connecting data centres, branches, headquarters campus buildings, home and mobile workers to offer enterprise virtualisation – a global virtual network with virtual applications and ubiquitous access to any application from any broadband location. They cite example technologies (many of which are here today) including:

  • VOIP (BT Communicator).
  • Fixed-mobile convergence (BT Fusion).
  • Broadband home (network-enabled wireless hubs).
  • Multimedia infotainment (BT Livetime mobile TV)
  • Application assured interface (single, robust and flexible platform which is able to prioritise at the application layer, e.g. to offer priority to applications which require low latency).

In the words of BT’s Tim Hubbard “21CN is big, bold, and it’s going to change the world forever”. I’m not sure if 21CN will change the world for ever, but NGNs in general will and BT is well placed to capitalise on this, as it builds a seamless global MPLS network, rolling out a new POP every week.

Incessant infrastructure and tech gossip

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

It seems that you can’t please all of the people all of the time.

Alex accuses me of being Microsoft-sponsored and jumps in whenever I dare to criticise Apple (or, to be fair, anything he knows more than me about).

Then, a few days back, Sunny (who knew my blog before he knew me) remarked that I’d “gone over to the dark side” with “all this Solaris stuff”.

Actually, Jamie summed it up best of all when he christened my ramblings “incessant infrastructure and tech gossip” – it just happens that in the past I’ve written mainly Microsoft stuff because that’s what I know best, but there’s always been a bit of industry chatter and stuff about my home network or technology that excites me.

For everyone who has me in their feed reader for Microsoft-related posts, please bear with me – I’ve got a whole load of posts which are in a half-written state – I promise there will be something for you all soon.

Selecting a UK keyboard in Solaris 10

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Since I installed Solaris, I’ve been getting more and more annoyed with my keyboard pretending to be American (mostly with ” and @ being mixed up). Today, I needed to write a post which included a lot of UK currency symbols (£ – pounds sterling) and rather than switching to a Windows PC, I spent a considerable amount of my weekend researching the solution.

It seems that setting a UK keyboard within the Java Desktop System doesn’t make a blind bit of difference, and the answer is to use the kdmconfig utility. After running this and switching the Window system server from Xorg to Xsun (I haven’t a clue what the difference is), I was able to define my keyboard type (Generic UK-English) as well as selecting the correct display and pointing device settings. After restarting the graphical interface (logoff/logon), I was back in action with all the keys in the right place.

Incidentally, there is another setting which, although not related to the keyboard layout, will affect the display language – at logon, ensure that the language option is set to en_GB.ISO8559-15 – Great Britain (Euro) for an English language interface with European currency symbol (€€) support.

Phenomenal growth in UK e-commerce

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Every year, it seems that retailers put out dire warnings of falling sales on the high street and Christmas 2005 was no exception. We’ve grown used to retailers starting the “new year” sales in late December (and I was amazed to hear a friend admitting to being one of the many reported to be queuing outside Next when their sale started in the early hours of the morning on 27 December 2005). BHS was discounting in mid-December this year – I bought one item at a 60% discount (reduced to half price from £12 and then another 20% off making it just £4.80 on the day I happened to be in town and making my final Christmas purchases).

It strikes me that falling high-street sales are only half the picture, and last Friday’s BBC Working Lunch programme confirmed that for me, outlining some amazing statistics on Internet shopping growth over the Christmas period, with online sales up 50% on the previous year to a total of £5bn in the 10 weeks up to Christmas 2005.

Whether or not people really are deserting the high street (I suspect it is all hype designed to get us into the shops), the Internet has become a core part of our lives (and therefore a significant channel to market for retailers) – unfortunately, not everyone is ready to take advantage of this.

In fact, according to Working Lunch, if you look at the growth in UK online shopping as a whole the e-commerce market has grown 2600% from £87m in April 2000 to £2.26bn in December 2005. Some high street retailers (e.g. Boots) are now taking more business through their website than even their largest brick and mortar stores (up 40% in Q3 2005 alone).

For those who doubt that people really do use the Internet, research by Forrester indicates that 33% of of people enjoy spending time online. Working Lunch reported that when asked “which of the following do you enjoy doing in your leisure time?” the results came back as follows:

  1. Listening to music (60%).
  2. Watching films (54%).
  3. Walking (47%).
  4. Travelling (45%).
  5. Gardening (41%).
  6. Restaurants/bars (35%).
  7. Surfing the Internet (33%).
  8. Watching TV soaps (31%).
  9. Sightseeing (29%).

(Maybe I’m not such a geek after all – I enjoy 8 out of those 9 activities, only finding watching TV soaps to be a bit dull).

To those who think that not that many people have fast enough Internet connections to take advantage of e-commerce sites, think again – the UK is third in a table of European online access levels and second when looking at how many people shop online regularly – both figures well above the European average:

  • Sweden: 77% have online access, 49% regularly shop online.
  • Netherlands: 73% have online access, 33% regularly shop online.
  • United Kingdom: 67% have online access, 48% regularly shop online.
  • Germany: 62% have online access, 37% regularly shop online.
  • France: 52% have online access, 28% regularly shop online.
  • Italy: 47% have online access, 12% regularly shop online.
  • Spain: 35% have online access, 7% regularly shop online.
  • Europe as a whole: 56% have online access, 29% regularly shop online.

Looking further at the UK, 60% of those Internet connections are classified as broadband.

It seems that the initial barrier to Internet sales – worries about online security – is no longer inhibiting consumers (my view is that it was always an issue of perception – people are perfectly happy to read their card details over an unsecured phone line) and the figures seem to confirm that it was more of an issue of unfamiliarity; however, as Working Lunch highlighted, there are still some issues for online retailers to overcome, for example:

  • Delivery times (how about evening deliveries?).
  • Quality of service (returns are often at the expense of the purchaser – even if the wrong item is shipped).
  • Product type (people want to try clothes/shoes for size, smell some items, and feel others).

Even if at first some items don’t seem to fit logically with the Internet, the statistics don’t seem to bear that out (and after all, catalogue sales were popular for many years) – when asked “which products have you bought online?”, consumers responded:

  1. Books (52%).
  2. Leisure/travel (41%).
  3. CDs (40%).
  4. Clothing (37%).
  5. Event tickets (36%).

Often, it is the items which have a personal touch that fit best with retailers who also have a shop front, allowing unsuitable items to be returned in store.

So, even if brick and mortar sales are slipping, Internet sales are looking extremely healthy, but as Lorraine Branch, of IT and business consultancy Conchango, says:

“Success will hinge on offering customers as many different ways to buy as possible while maintaining a consistent retail experience [and] retailers who fail to provide a fully integrated channel approach will find themselves left out in the cold”.

Configuring a Solaris 10 client to print to a network printer

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

For weeks now, I’ve been trying to configure my Solaris client to print to a network-attached HP LaserJet 2200dn printer and I finally got it working today. It’s probably really easy for an experienced systems administrator but there were a few gotchas that caught me out – hopefully my experiences will help someone else out.

In many ways the Solaris Print Manager makes setting up a printer easy, but there were some important settings I needed to use (I found some of this on an HP support document, but there was also a lot of trial and error involved as I don’t think the advice in HP’s document applies to Solaris 10 x86):

  1. For an HP LaserJet 2200, the recommended printer driver was Foomatic/Postscript – I didn’t use this but selected Foomatic/hpijs instead.
  2. The destination is more than just the IP address or hostname of the print server (i.e. the LPD service on the printer’s JetDirect card) – I needed to append :RAW (LPD queues can be configured through the printer’s own web administration console).
  3. The protocol is BSD (not TCP as I expected).

One really handy feature is the ability to show the command line console, on which all the commands issued by the print manager will be displayed. Using this, I was able to determine that the commands to configure my printer (now saved as a shell script) were:

lpadmin -p hplj2200dn -v /dev/null -A write -n /usr/lib/lp/model/ppd/system/foomatic/HP/HP-LaserJet_2200-hpijs.ppd.gz -i /usr/lib/lp/model/netstandard_foomatic -o dest=printer1:RAW -o protocol=bsd -I postscript -u allow:all
lpadmin -p hplj2200dn -D "Laser printer in Mark's Den (duplex/network)"
lpadmin -d hplj2200dn
enable hplj2200dn
accept hplj2200dn

These will, of course, vary by model. Note that the first (very long) line will wrap on this web page – each of the first three commands should begin with lpadmin.

Don’t be put off by error messages after the enable and accept commands:

UX:enable: ERROR: Can’t establish contact with the LP print service. TO FIX: Either the LP print service has stopped, or all message channels are busy. If the problem continues, get help from your system administrator.
UX:accept: ERROR: Can’t establish contact with the LP print service. TO FIX: Either the LP print service has stopped, or all message channels are busy. If the problem continues, get help from your system administrator.

These fooled me for a while but I think the problem was just that the printer had not yet been established when I tried to enable it. By waiting a few seconds and re-issuing the last two commands, everything jumped into life.

I don’t know why there is a postscript reference in there – as far as I know this is a PCL printer, but it seems to work.

Finally, the commands to remove the printer (also now saved as a shell script) are:

reject hplj2200dn
lpadmin -x _default
lpadmin -x hplj2200dn

Configuring a Solaris 10 DHCP client to register with a Windows Server 2003 DNS server

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Last week, I wrote about configuring a hostname for a Solaris 10 DHCP client. Alan Thompson very kindly left a comment on that post about using DHCP to set the hostname on the network (i.e. in the DNS) and I’m pleased to say that it works a treat on my Windows network.

I have a Windows Server 2003 server which acts as my domain controller, DNS server and DHCP server. DHCP is configured to update DNS (always dynamically update DNS A and PTR records, discard them on lease deletion, and to do this for clients that do not request updates) and this was working well for my Windows clients but although my Solaris client (laptop3) had been retrieving IP information from the DHCP server, the DHCP console showed no name for the lease (and so couldn’t update DNS).

By following Sun’s instructions for enabling a Solaris client to request a specific hostname, DHCP was able to register the client’s name in DNS, using the fully qualified domain name as set in the DHCP scope options (option 015 DNS Domain Name).

I tested this using the nslookup laptop3 command, which returned:

Server: dnsserveripaddress
Address:
dnsserveripaddress#53

Name: laptop3.domainname
Address:
laptop3ipaddress

It’s worth pointing out that Sun’s instructions are not quite correct for Solaris 10 x86, as step 1 is not necessary (the comments in the /etc/default/dhcpagent file explain that, by default, the DHCP agent will try to request the hostname currently associated with the interface performing DHCP); however the other steps were spot on (add inet hostname to /etc/hostname/interface, flush cached DHCP data using pkill dhcpagent and rm /etc/dhcp/ interface.dhc, then reboot), meaning that my Solaris client now participates in my Windows network name resolution.

Checking how much power a USB device requires

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

I have a number of USB-attached hard disks that I use for portable mass storage, backups, etc. Very occasionally, Windows XP will report that there has been a power surge on the USB port and that it has been shut down. This can happen when the total number of devices attached to a USB hub (internal or external) exceeds the total power available. I’ve always treated that as a minor annoyance (and as these disks have two USB connections and a Y-shaped cable, I can simply use two ports) but then a few days back I noticed something I’ve never see before – the ability to view power details for (or more precisely current drawn through) a USB root hub:

USB device power draw

As can be seen in the example above, my scanner is using the full 500mA on its port, but there is still a port available which could potentially provide another 500mA. To view this information, open Device Manager from the Computer Management MMC snap-in and expand the Universal Serial Bus Controllers node. There will normally be a number of controllers listed, along with some devices and USB root hubs. Each USB root hub should have include power details within its properties.

Checking my IEEE 1394 (FireWire/i.Link) controller doesn’t seem to offer the same facilities, presumably because it doesn’t have the same concept of a root hub.

A business case for an iPod?

This content is 20 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Ever since the Apple iPod Nano was launched last September, I’ve been saying that I would like one (but can’t justify it because I only bought my iPod Mini in May last year).

Then, a few days back, I met up with a friend who is a professional photographer. He showed me his iPod with video and now that’s the one I want. I was always suspicious of how good a 2.5″ screen could be, but it really is clear and bright (even in daylight). My friend explained that by putting his portfolio onto his iPod he has already got two new commissions, meaning that it has effectively paid for itself already!

Now if only I could build a case for an IT Consultant to sell services via an iPod…