<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://myitforum.com/cs2/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Paul Thomsen at myITforum.com : guest bloggers</title><link>http://myitforum.com/cs2/blogs/pthomsen/archive/tags/guest+bloggers/default.aspx</link><description>Tags: guest bloggers</description><dc:language>en</dc:language><generator>CommunityServer 2007.1 SP2 (Build: 31113.47)</generator><item><title>Ode to a server - by Edward Bell</title><link>http://myitforum.com/cs2/blogs/pthomsen/archive/2008/03/30/114422.aspx</link><pubDate>Mon, 31 Mar 2008 02:58:00 GMT</pubDate><guid isPermaLink="false">8e8f7986-475c-475d-bdc9-a1b3a63b955b:114422</guid><dc:creator>pthomsen</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://myitforum.com/cs2/blogs/pthomsen/rsscomments.aspx?PostID=114422</wfw:commentRss><comments>http://myitforum.com/cs2/blogs/pthomsen/archive/2008/03/30/114422.aspx#comments</comments><description>&lt;p&gt;Summary: did you feel a disturbance in the computer management force this week? Some of us&amp;nbsp;serving Microsoft IT felt it. A moment of silence is in order.&lt;/p&gt;
&lt;p&gt;You might think I jest, but as a fellow techie you probably know that we&amp;nbsp;develop a respect and even affection&amp;nbsp;for hardware that sees a lot of history, doing a lot of important of work with us. It&amp;#39;s&amp;nbsp;much like we respect great software (OpenVMS anyone?) or&amp;nbsp;great books{&amp;quot;VAX/VMS Internals and Data Structures&amp;quot; still does it for me, but Charles Petzold&amp;#39;s &amp;quot;Programming Windows&amp;quot; is a close second). Similarly, we respect&amp;nbsp;great (even if rarely famous)&amp;nbsp;techies of all sorts (too numerous to even begin listing) and&amp;nbsp;great tools.&lt;/p&gt;
&lt;p&gt;Over the years any techie will spend longs hours with their main servers. Often in the middle of the night and/or&amp;nbsp;under stressful circumstances. No matter how good the hardware, failures will occur, and we have to wrestle the situation under control. If anything, we&amp;#39;re amazed such problems don&amp;#39;t occur more often.&amp;nbsp;In so doing, we come to respect our allies - the hardware. It&amp;#39;s easy to spend more time with the server than our spouses.&lt;/p&gt;
&lt;p&gt;Here at Microsoft IT we&amp;#39;ve had such a server, with sitecode &amp;quot;RDM&amp;quot; and server name &amp;quot;B11ITGSMS01&amp;quot;. It has been the&amp;nbsp;central site of our main hierarchy for many years.&lt;/p&gt;
&lt;p&gt;One of my coworkers, Edward Bell, has written the following words in honor of RDM, which lost the last of its child sites (and thus clients) on Friday (March 28th, 2008). I&amp;#39;m pleased that he has allowed me to share those words with you:&lt;/p&gt;
&lt;p&gt;&amp;quot;RDM is a battle tested warrior and should be retired with full military honors. The server has been in service longer than a number of the people working on SMS today have been at Microsoft.&lt;/p&gt;
&lt;p&gt;Did you know…&lt;/p&gt;
&lt;p&gt;•&amp;nbsp;The RDM SMS central site server was placed into service around 2000 running SMS 2.0 with a pre-release version SP2.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;•&amp;nbsp;RDM replaced a previous SMS 2.0 server with site code GBL for Global.&lt;/p&gt;
&lt;p&gt;•&amp;nbsp;RDM has been upgraded to following SMS versions: SMS 2.0 SP2, SMS 2.0 SP3, SMS 2.0 SP4, SMS 2.0 SP5, SMS 2003, SMS 2003 SP1, SMS 2003 SP2, and SMS 2003 SP3.&lt;/p&gt;
&lt;p&gt;•&amp;nbsp;In 2002, RDM server hardware was an enterprise class SQL server with 8 CPUs and 8GB memory. I&amp;nbsp;ordered and configured the server and it cost around $40,000 dollars. Yes, [even then it occasionally] still had SMS inbox backlogs.&lt;/p&gt;
&lt;p&gt;•&amp;nbsp;[At its peak] RDM managed more than a quarter of a MILLION (250,000)&amp;nbsp;computers.&lt;/p&gt;
&lt;p&gt;•&amp;nbsp;RDM SQL database size was approximately 250GB.&lt;/p&gt;
&lt;p&gt;•&amp;nbsp;RDM has deployed millions of software package intances&amp;nbsp;to Microsoft desktops. &lt;/p&gt;
&lt;p&gt;Top 10 suggestions on what to do with RDM:&lt;/p&gt;
&lt;p&gt;1.&amp;nbsp;Declare RDM a god. Start a new religion. Rev Paul Thomsen will hold services Sunday&amp;nbsp;from 10am to 12noon. We will be reading from the book of SMS 2003&amp;nbsp;Concepts, Planning &amp;amp; Deployment, Chapter 14, Upgrading to SMS. &lt;/p&gt;
&lt;p&gt;2.&amp;nbsp;Launch RDM on a Delta rocket into outer space. Maybe in a few hundred or thousand years, some alien civilization will encounter the server and marvel at our advanced technology.&lt;/p&gt;
&lt;p&gt;3.&amp;nbsp;Put RDM out to pasture. Charge a $100 stud fee to produce baby RDM offspring servers.&lt;/p&gt;
&lt;p&gt;4.&amp;nbsp;Donate the server to the Smithsonian Institute. &lt;/p&gt;
&lt;p&gt;5.&amp;nbsp;Use RDM as an the world&amp;#39;s largest artificial heart.&lt;/p&gt;
&lt;p&gt;6.&amp;nbsp;Place RDM in the Microsoft Museum. Tourists can learn about system management [as it was done] in the good old days. &lt;/p&gt;
&lt;p&gt;7.&amp;nbsp;On Halloween, drive RDM around to geeks&amp;#39; homes. Yell &amp;#39;trick or treat&amp;#39; and frighten them with old server technology. &lt;/p&gt;
&lt;p&gt;8.&amp;nbsp;Use RDM as a DVD player to view Mitch Groeneveld’s DVD office collection [which is huge].&lt;/p&gt;
&lt;p&gt;9.&amp;nbsp;Convert RDM to a slot machine and sell RDM to a casino in Las Vegas. &lt;/p&gt;
&lt;p&gt;10.&amp;nbsp;Display RDM outside of the Tuk5 Datacenter as modern art. Just remember, to power it down and unplug it.&lt;/p&gt;
&lt;p&gt;Finally, we should retire the RDM Site code. No Microsoft SMS server can ever use the RDM site code again. This works for athletes. Why not servers?&amp;quot;&lt;/p&gt;
&lt;p&gt;Another long-time colleague, Brian Wyne, shares those sentiments &amp;quot;And part of me dies with it.&amp;nbsp;I will miss it forever.&amp;nbsp;Goodbye RDM.&amp;quot;&lt;/p&gt;
&lt;p&gt;UPDATE: I almost forgot these words, from Mike Church, another of our MSIT colleagues (and who spent many years in the SMS Product Group):&lt;/p&gt;
&lt;p&gt;&amp;quot;RDM we’ve loved you so&lt;br /&gt;But now it’s time for you to go.&lt;br /&gt;You’ve been with us for oh so long&lt;br /&gt;To say good bye to some seems wrong.&lt;/p&gt;
&lt;p&gt;But as they say all things must end&lt;br /&gt;So here’s so long to you old friend.&lt;br /&gt;It’s out to pasture now for you&lt;br /&gt;We need to move to something new.&lt;/p&gt;
&lt;p&gt;Some are glad to see you gone&lt;br /&gt;Others wish you’d just hang on&lt;br /&gt;But out the door, you got the boot&lt;br /&gt;Get along it’s time to scoot.&lt;/p&gt;
&lt;p&gt;As all us old farts will some day&lt;br /&gt;It’s time to retire, you just can’t stay.&lt;br /&gt;Don’t go mad, just go, get out&lt;br /&gt;And as the door slams HOORAY we shout.&amp;quot;&lt;/p&gt;
&lt;p&gt;And the person that predates all of us as a Microsoft IT&amp;nbsp;SMS administrator, Cutter Smith&amp;quot;&lt;/p&gt;
&lt;p&gt;&amp;quot;Ah the memories indeed.&lt;br /&gt;Seems so long ago I drew the Visio for the infrastructure wrote up the long Project plan and placed that fateful purchase order for good old RDM….&amp;quot;&lt;br /&gt;&lt;/p&gt;&lt;img src="http://myitforum.com/cs2/aggbug.aspx?PostID=114422" width="1" height="1"&gt;</description><category domain="http://myitforum.com/cs2/blogs/pthomsen/archive/tags/Microsoft+IT/default.aspx">Microsoft IT</category><category domain="http://myitforum.com/cs2/blogs/pthomsen/archive/tags/guest+bloggers/default.aspx">guest bloggers</category></item><item><title>An almost forgotten computer administration art: Windows shell scripting - with thanks to Levi Stevens</title><link>http://myitforum.com/cs2/blogs/pthomsen/archive/2007/08/23/105150.aspx</link><pubDate>Fri, 24 Aug 2007 03:21:00 GMT</pubDate><guid isPermaLink="false">8e8f7986-475c-475d-bdc9-a1b3a63b955b:105150</guid><dc:creator>pthomsen</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://myitforum.com/cs2/blogs/pthomsen/rsscomments.aspx?PostID=105150</wfw:commentRss><comments>http://myitforum.com/cs2/blogs/pthomsen/archive/2007/08/23/105150.aspx#comments</comments><description>&lt;p&gt;Summary: computer management requires many skills, including what I would call computer administration skills. Amongst those is shell scripting. It&amp;#39;s important to keep an eye open to the most recent solutions, but sometimes older solutions, such as shell scripting, are the right&amp;nbsp;ones for the job at hand.&lt;/p&gt;
&lt;p&gt;Yesterday I had a co-worker come to me with a problem related to backups where he wanted to keep 3 versions of the relevant files - no more and no less. He wanted to do it as a batch file, and I couldn&amp;#39;t imagine how to do it (I could imagine how to do it with vbscript, but that requires a level of scripting support that wasn&amp;#39;t appropriate for the problem). Fortunately, we have another coworker, Levi Stevens, who amongst his many great skills is a Windows shell scripting guru. Within an hour he had the solution that was needed. And even those of us that aren&amp;#39;t guru shell scripters can readily maintain it (it&amp;#39;s easier to edit than it is to create, as all scripters know, and it&amp;#39;s especially easy to edit when the language is simialr to something you know, like regular Windows command statements).&lt;/p&gt;
&lt;p&gt;These days we have PowerShell on the Windows platforms to provide a very sophisticated level of shell scripting. Everyone knows how to write basc .BAT files. Those from a *nix background will know Perl. And those with even older backgrounds will be familiar with OpenVMS DCL, or similar languages from the IBM mainframe world. There are lots of options, and each has their virtues, but sometimes the &amp;#39;close to least common demoninator&amp;#39; is the right solution. Windows shell scripting may be that solution for your problem. There&amp;#39;s a learning curve if you&amp;#39;re creating the scripts, but it might be much smaller than for other scripting approaches (maybe this blog entry will tell you everything you need to know (no guarantees!))&lt;/p&gt;
&lt;p&gt;The&amp;nbsp;script Levi produced itself is wonderous enough, but the real lessons to be learned are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;It&amp;#39;s best to learn from the experts, which in this case&amp;nbsp;especially includes&amp;nbsp;Tim Hill’s book, &amp;quot;Windows NT Shell Scripting&amp;quot;. ISBN 1578700477&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal" style="MARGIN:0in 0in 0pt;"&gt;In many cases, the FOR command is one of your most powerful Windows shell scripting assets. At a command prompt, enter &amp;quot;For /?&amp;quot; to get the details.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal" style="MARGIN:0in 0in 0pt;"&gt;Similarly, the SET command has a surprising amount of power. Again, at the command prompt, enter &amp;quot;Set /?&amp;quot; to get the details.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;Taking it to the next level,&amp;nbsp;some of Levi&amp;#39;s insights are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;When it comes to using the FOR command, sometimes you need to filter the output you want to parse. Use the escape character (AKA carrot - ^) on the pipe inside the FOR command. For example, here is a script that gives you the HAL type:&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Set REGHAL=HKLM\Hardware\ResourceMap\Hardware Abstraction Layer&lt;br /&gt;For /F &amp;quot;Tokens=5 Delims=\&amp;quot; %%i In (&amp;#39;reg.exe query &amp;quot;%REGHAL%&amp;quot; /s ^| Find /i &amp;quot;Abstraction&amp;quot;&amp;#39;) Do Set HAL=%%i&lt;br /&gt;Echo HAL: %HAL%&lt;/p&gt;&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;To replace characters from a string, here&amp;#39;s another example (with the first line being the string that needs correcting)&amp;nbsp;:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;Set _Tmp=c:/bad/formed(dfd)/url&lt;br /&gt;&amp;nbsp; Set _Tmp=%_Tmp:/=-%&lt;br /&gt;&amp;nbsp; Set _Tmp=%_Tmp:\=-%&lt;br /&gt;&amp;nbsp; Set _Tmp=%_Tmp:(={%&lt;br /&gt;&amp;nbsp; Set _Tmp=%_Tmp:)=}%&lt;br /&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Often you will need to increment a&amp;nbsp;number, for example in FOR loops (In this example the &amp;quot;Goto :EOF&amp;quot; will exit the current block when 10 iterations have occurred.):&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Set /a LOOP+=1&lt;br /&gt;If %LOOP% GEQ 10 Goto :EOF&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;p.s. I can&amp;#39;t resist - here&amp;#39;s&amp;nbsp;one&amp;nbsp;bit of&amp;nbsp;Levi&amp;#39;s script that particularly impressed me&amp;nbsp;(the FOR loop):&lt;/p&gt;
&lt;p&gt;@ECHO OFF&lt;/p&gt;
&lt;p&gt;For /f &amp;quot;Tokens=2,3,4 Delims=/ &amp;quot; %%i In (&amp;quot;%Date%&amp;quot;) Do @(&lt;br /&gt;&amp;nbsp; Set Month=%%i&amp;amp; Set Day=%%j&amp;amp; Set Year=%%k&lt;br /&gt;)&lt;/p&gt;
&lt;p&gt;echo %month%&lt;br /&gt;echo %day%&lt;br /&gt;echo %year%&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://myitforum.com/cs2/aggbug.aspx?PostID=105150" width="1" height="1"&gt;</description><category domain="http://myitforum.com/cs2/blogs/pthomsen/archive/tags/scripts/default.aspx">scripts</category><category domain="http://myitforum.com/cs2/blogs/pthomsen/archive/tags/guest+bloggers/default.aspx">guest bloggers</category></item></channel></rss>