Posts Tagged ‘installation’

(the Chihuahua) comments on SBSanswerfile.xml and OOBE in SBS 2008

Thursday, November 13th, 2008

A LESSON LEARNED FROM SEAN DANIELSSBS PM

The sbsanswerfile.xml can be used, when setting up Small Business Server 2008, to define setup parameters via text string entries. These same parameters may also be defined using a different tool, the OOBE wizard. To reach the OOBE wizard, the sbsanswerfile.xml is bypassed (never placed into the machine) and Small Business Server 2008 setup reaches OOBE (Out of Box Experience wizard) because it doesn’t see the sbsanswerfile.xml during boot/setup.

In the OOBE wizard, the level of specificity is not as detailed as using the sbsanswerfile.xml. A more important difference is that the OOBE wizard “hard codes” certain defaults and predefines certain assumptions about the installation. One of the most important of these entries is the DOMAIN-NAME for the SBS2008 environment.

The “domain name” parameter has brought us to write this article today.

DEFINING PARAMETERS BEFORE BEGINNING SETUP

The SBS Team developed Small Business Server 2008 so that “IF and WHEN” the admin wants to change the default parameters, then an answer file (a text file called sbsanswerfile.xml) must be defined prior to beginning setup. The xml file is then written to a USB drive (or other media) and placed in the machine before placing the SBS setup disk into the server. The OOBE wizard is not used in this case.

In the real world: VAR’s, IT Consultants, MS Partners, etc… often receive OEM boxes with Small Business Server 2008 already partially installed. This creates a quandry because the opportunity to define the answer file and then point SBS setup to sbsanswerfile.xml has already passed.

this circumstance raises the following question?:

How do we still define these settings once setup has already begun and the binaries have already been installed on the drive?

In our scenario (and In the case of most OEM boxes), the first stages of the SBS2008 installation are accomplished by the manufacturer. Therefore, the system launches straight into OOBE and and ultimately the wizard that defines the core SBS settings (text strings).

Since an sbsanswerfile cannot possibly be defined “with our answers” at the manufacturer, and pressing Power ON boots us straight into OOBE, how do we offer the machine the more “flexible and definitive parameter set using sbsanswerfile.xml”?

Sean Daniels emailed the response today:

As long as you

  • DO NOT go past the first screen in OOBE
  • DO NOT enter any data whatsoever in OOBE (i.e. the SERVER NAME /DOMAIN NAME / etc…)
  • SHUT DOWN THE MACHINE immediately

You can still define the sbsanswerfile.xml and still have the machine call it when booting from a powered off state.

This gives you the ability to define specific settings (i.e. SERVERNAME / FULL DOMAIN NAME / etc… ) even though a partial install has already been accomplished at the factory.

How?

  • Just grab the SBS Setup disk
  • define and save your sbsanswerfile.xml to USB or other media
  • place the media in the machine (prior to booting from powered off state)
  • boot and wait for SBS setup to locate the sbsanswerfile.xml , enumerate the text strings, and commit your settings automatically

REPEATING “THE VERY IMPORTANT POINT”: do not launch an OEM box into OOBE without first defining the answer file.

What happens if you do start OOBE on an OEM SBS2008 box?

If you continue a SBS2008 install on an OEM Small Business Server 2008 box from OOBE you will irrevocably turn off the only method to explicitly define the setup parameters. Even if you partially begin OOBE and then bail out without writing or saving any data …a complete re-install will be required to change the SBS settings using an sbsanswerfile.xml. Why, because the method that calls to the sbsanswerfile.xml is irrevocably “turned off” (by design) If OOBE is entered or defined on any level.

So what happened in our case?

So there we were, installing a machine on-site that had a partially completed Small Business Server 2008 installation. We didn’t know (yet) the information contained in this article (duh!). Upon receipt of the machine we started the unit and were taken directly into OOBE. Upon arrival at the setup screens for SERVER NAME, DOMAIN NAME, etc… we realized we did not want to accept the defaults and thought “Hey, what about the sbsanswerfile.xml?” So we bailed out and in doing so, turned off the method available to call sbsanswefile.xml. We could no longer make certain changes to the OOBE based install using the sbsanswerfile.xml :(

You might be wondering: Why did we not move forward with the default OOBE install in the first place?

In our case, we bailed out because…. the FULL INTERNAL DOMAIN can not be defined in OOBE and we did not want to use the SBS Development Team’s  “default OOBE choice of .local as the top level domain”. Why… because we had a network full of Macs.

If you are not aware: Small Business Server defines .local as the top level domain (by default) when using the OOBE wizard and their is “NO WAY” to alter a top-level domain in SBS setup except by using the sbsanswerfile.xml

To sum up our story, we irrevocably entered OOBE and clicked next before abandoning the OOBE wizard.

Because we had a “time constraint” on delivery to this client, we needed to finish this install quickly, so we went ahead with the .local top level domain. Alas for our own choice for the full domain name (sigh). We then had to deal with the .local top-level domain issue on Mac.

By the way, about Mac on SBS:

Remember, exit OOBE immediately when setting up an SBS 2008 machine from an OEM and you can still define the environment using the sbsanswerfile.xml. Restart clean with the sbsanswerfile.xml on USB . In doing so, you can still have it “your way”.

Thanks seanda