<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The Stone that the Builder Refused &#187; LinkedIn</title>
	<atom:link href="http://www.jasonrashaad.org/tag/linkedin/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jasonrashaad.org</link>
	<description>The sarcastic blatherings of Jason Rashaad</description>
	<lastBuildDate>Tue, 22 Dec 2009 03:23:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Workstation Imaging: Transitioning from Symantec Ghost to PING</title>
		<link>http://www.jasonrashaad.org/it/workstation-imaging-transitioning-from-symantec-ghost-to-ping/</link>
		<comments>http://www.jasonrashaad.org/it/workstation-imaging-transitioning-from-symantec-ghost-to-ping/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 00:03:09 +0000</pubDate>
		<dc:creator>Jason Rashaad</dc:creator>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[sysadmin]]></category>

		<guid isPermaLink="false">http://www.jasonrashaad.org/?p=152</guid>
		<description><![CDATA[Recently I faced the challenge of imaging a series of workstations using Symantec (nee Norton)&#160;Ghost 8.0.&#160; Traditionally these workstations had been imaged by physically attaching an internal hard drive containing the Ghost image files to the workstation to be imaged. &#160;The workstation was then booted with the Ghost boot disks, and the workstation primary drive ]]></description>
			<content:encoded><![CDATA[<p>Recently I faced the challenge of imaging a series of workstations using Symantec (nee Norton)&nbsp;<a href="http://en.wikipedia.org/wiki/Ghost_%28software%29#Ghost_8.0">Ghost 8.0</a>.&nbsp; Traditionally these workstations had been imaged by physically attaching an internal hard drive containing the Ghost image files to the workstation to be imaged. &nbsp;The workstation was then booted with the Ghost boot disks, and the workstation primary drive was imaged from the attached secondary drive.&nbsp; This process was time consuming and labor intensive, requiring physically opening each individual chassis and connecting and reconnecting the drive containing the Ghost images. &nbsp;It also put the hard drive containing the images at risk of damage while being handled.&nbsp; I&nbsp;began working on a method that was more efficient that didn&#8217;t increase cost nor require major retraining.</p>
<p>I&nbsp;started with GhostCast, the bundled tool that allows for images to be deployed via the network.&nbsp; This allowed me to build a centralized server that would host all workstation images.&nbsp; I would then be able to boot the workstations via the Ghost boot disks, attach to the network, and image at will.&nbsp; Everything went according to plan until I&nbsp;tried to create the Ghost boot disks.&nbsp; The machines I was tasked with, <a target="_blank" href="http://h10010.www1.hp.com/wwpc/us/en/sm/WF05a/12454-12454-64287-321860-3328898-3784892.html">HP/Compaq DC7900</a>, required an ethernet driver that was newer than what had been included with the (admittedly ancient)&nbsp;Ghost 8.0 software.&nbsp; I&nbsp;suppose I&nbsp;could have manually bundled the driver, but overall frustration with the product led me to seek elsewhere.</p>
<p>Which is what brought me to <a target="_blank" href="http://ping.windowsdream.com/">PING</a>.&nbsp; PING [PING&nbsp;Is Not Ghost] is a hybrid product consisting of a Linux LiveCD that can either be burned and used directly (similar to the Ghost boot disk +&nbsp;directly attached hard drive scenario above)&nbsp;or integrated into a LAN&nbsp;and used via <a target="_blank" href="http://en.wikipedia.org/wiki/Preboot_Execution_Environment">Preboot eXecution Environment</a> [PXE] which is exactly what I&nbsp;needed. &nbsp;I&nbsp;was working with a pre-existing test environment in which test hardware was at a premium. &nbsp;Luckily I&nbsp;had a <a target="_blank" href="http://www.vmware.com/products/esxi/">VMWare ESXi 3.5U</a>&nbsp;machine from a previous project, and was able to spin up a virtual Windows 2003 Enterprise Server that would serve as my image host. &nbsp;From there I&nbsp;took the following steps:</p>
<ul>
<li>On the image host:&nbsp;Select a location from which to serve your images and unpack the PartImage <a target="_blank" href="http://ping.windowsdream.com/dl/PING_2.01/PartImage.zip">bundle</a>.&nbsp; You&#8217;ll have a hierarchy with a base called \PartImage.&nbsp; Share this directory on the network (NFS and SMB both work, but I&nbsp;used Windows built-in CIFS sharing)&nbsp;and set permissions as you like.&nbsp; This is the directory that will be mounted by our PXE booted workstation.</li>
<li>PXE&nbsp;requires TFTP&nbsp;as well as DHCP.&nbsp; I&nbsp;used the excellent <a target="_blank" href="http://tftpd32.jounin.net/">TFTPD32 </a>on my image host. &nbsp;TFTPD32 also provides DHCP and DNS, but my environment had an existing DHCP&nbsp;server so I disabled the built-in functionality.&nbsp; Once TFTPD32 was set-up and configured I&nbsp;also needed to configure my DHCP&nbsp;server (Microsoft DHCP)&nbsp;to point to the image server for PXE&nbsp;booting, which I&#8217;ll cover in a later step.</li>
<li>Create the PING&nbsp;LiveCD&nbsp;boot bundle hierarchy:</li>
</ul>
<p style="margin-left: 80px;">PXE<br />
PXE\i386<br />
PXE\i386\templates<br />
PXE\i386\templates\pxelinux.cfg\</p>
<ul>
<li>The boot bundle files [<a target="_blank" href="http://ping.windowsdream.com/ping/old/3.00.03/kernel">kernel</a>, <a target="_blank" href="http://ping.windowsdream.com/ping/old/3.00.03/initrd.gz">initrd.gz</a>, <a target="_blank" href="http://ping.windowsdream.com/ping/old/3.00.03/pxelinux.0">pxelinux.0</a>] will be placed in the PXE\i386\templates directory.</li>
<li>Within the PXE\386\templates\pxelinux.cfg\ directory, create a file named <strong>default </strong>that will serve as our PXE configuration.&nbsp; It should contain the following:</li>
</ul>
<p style="margin-left: 80px;">DEFAULT rescue<br />
PROMPT&nbsp;0<br />
LABEL&nbsp;rescue<br />
KERNEL&nbsp;kernel<br />
APPEND&nbsp;vga=normal devfs=nomount pxe ramdisk_size=33000 load_ramdisk=1 init=/linuxrc prompt_ramdisk=0 initrd=initrd.gz root=/dev/ram0 rw noacpi noapm pci-noacpi lba acpi=off apm=off</p>
<ul>
<li>Now for DHCP:&nbsp;The Microsoft DHCP&nbsp;Server I&nbsp;was working with had to be configured to enable <strong>Option 066 Boot Server Host Name</strong> (set to point to our image server)&nbsp;and <strong>Option 067 Bootfile Name</strong> (pxelinux.0).&nbsp; Once complete, our DHCP&nbsp;server was configured to accept PXE&nbsp;requests from any machine that made a DHCP&nbsp;request (our workstations) and point them to the image server to execute the boot bundle.</li>
</ul>
<p>Once all these pieces were in place I&nbsp;was able to boot a workstation on the network via PXE, eschewing the use of boot disks. &nbsp;Once the machine was booted it loaded the PING&nbsp;environment, from which the machine could be either imaged or restored.&nbsp; Image/Restore times were a fraction of what they&#8217;d been using Ghost, and I&#8217;d added the possibility of imaging multiple machines simultaneously.&nbsp; All at zero additional cost.</p>
<p><em>Thanks to the good people at <a target="_blank" href="http://windowsdream.com/">windowsdream.com</a> for creating an excellent product, and for the documentation who&#8217;s default steps I&nbsp;cribbed above.</em><br />
&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jasonrashaad.org/it/workstation-imaging-transitioning-from-symantec-ghost-to-ping/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
