OEM Preinstallation Kit

The OEM Preinstallation Kit (OPK) of the Microsoft Server Appliance Kit (SAK) tells Original Equipment Manufacturers (OEMs) how to use the tools provided by the SAK to create server appliances based on Microsoft Windows Server 2003. It is intended to be a used alongside the SAK Hardware Development Kit and the SAK Software Development Kit, which provide details on how to develop specialized hardware and software used to create a server appliance. For more information about the OEM documentation supplied with the SAK, see Microsoft Server Appliance Kit 3.0 (StartHere.chm).

The Server Appliance Kit OPK is intended to be a companion to the Microsoft Windows OEM Preinstallation Kit User's Guide and the Windows Preinstallation Reference. The Server Appliance Kit OPK does not attempt to provide detailed information on how to preinstall, customize, and deploy Microsoft Windows Server 2003. Instead, the Server Appliance Kit OPK focuses on how to use the SAK tools and frameworks as part of the overall process of creating a server appliance running Windows Server 2003. It relies on the Windows OPK to provide the details on how to preinstall Windows Server 2003 and prepare the resulting image for manufacture. If you are not already familiar with the process of preinstalling Windows, you are strongly encouraged to study the Windows OPK before continuing with the Server Appliance Kit OPK.

To learn more about the Server Appliance Kit OPK and how to use the SAK to develop a server appliance, see OPK Overview.

Copyright© 2000-2003 Microsoft Corporation. All rights reserved.


OPK Overview

Use the Server Appliance Kit OPK documentation to learn how to use the tools and frameworks included with the SAK alongside the tools provided by the Windows OPK to create a server appliance running Windows Server 2003.

The first step in using the Server Appliance Kit OPK is to review Checklist: Creating a Windows Powered Server Appliance. This checklist leads you through the major steps of creating a server appliance, showing how to use the SAK tools as part of the process of preinstalling Windows Server 2003 on a server appliance so you can manufacture it and sell to your customers.

Server appliances can be built on a wide variety of hardware platforms. For information about the minimum and recommended hardware configuration for server appliances in general and Windows Storage Server 2003 computers in particular, see Hardware Requirements and Recommendations.

One of the hallmarks of a server appliance is its simplicity. For that reason, it's important to configure the software running on the server to include only the software that is essential to carrying out the purpose for which the server appliance is intended. Operating System Configuration tells you how to install and configure Windows Server 2003 to provide the optimal platform on which to build your server appliance.

The SAK supplements the base operating system with software frameworks, special branding and server lockdown, and additional tools for configuring the server for the end customer. For details on how to use these features, see Installing the Server Appliance Kit and Special Configuration Settings.

If you want your Windows Storage Server 2003 server appliance to support Novell NetWare client computers, you can preinstall Microsoft Services for NetWare. Installing Services for NetWare explains what you need to know to do this for a server appliance.

The SAK provides SAConfig, a utility that can set the server appliance's computer name and Administrator password the first time the customer starts the server appliance. This can ensure that the server appliance will immediately have a unique computer name on the customer's network and will be secured with an appropriate Administrator password. Read Preparing for Auto Configuration to learn how to use this utility to make it easier for your customers to deploy your server appliance.

The final step in developing the master image of a server appliance is to configure and run the SysPrep utility. Preparing the Operating System for Replication tells you how to carry out this task.

In some cases, your customers may encounter issues when running their server appliance that they can avoid or correct if they have the right information. Documentation for Your Customers describes some of these issues and suggests what you can tell your customers to enable them deal with them.

As you develop your server appliance and your customers deploy it, there may be times when you will need to receive support from Microsoft. Supporting Windows Powered Server Appliances tells you how to obtain this support.

Finally, the OPK provides a Reference that summarizes how to use the command-line tools included in the SAK.


Checklist: Creating a Windows Powered Server Appliance

Step | Reference
Partition and format the main disk of the server appliance. | Volume Configuration
Install and configure Microsoft Windows Server 2003, including any OEM device drivers. Make sure you enable Remote Desktop to allow the server appliance to be remotely administered. | Microsoft Windows OEM Preinstallation Kit (OPK), and Microsoft Windows Server 2003 Configuration
Install Multilanguage User Interface (MUI) support for the languages you want to support. | Localization
Choose the Server Appliance Kit components to install. | Server Appliance Kit Components
Install the Microsoft Server Appliance Kit components. | Installation Methods
Optional: Install custom software components. | Installation documentation for custom software components.
Perform any other configuration steps, as needed. For example, you can create default shared folders, enable Shadow Copies for data volumes, create a default DFS root, and so on. | Windows Server 2003 Help
Run the SAPrep utility to brand and restrict the server as required by your redistribution license. | SAPrep
Test the server appliance to verify that it meets your requirements. When you have finished testing, make sure you close all Web browsers connected to the server.
If it is not required by your appliance configuration, delete the Default Web site. | Microsoft Windows Server 2003 Help and Support
If debugging was enabled on this computer, remove the debugging registry values and restore the default inc_debug.asp file. | Debugging
Remove the default certificate and any log entries created by software installation and configuration. | Removing the Security Certificate
Run the SAPrep utility without command-line options to reset the default language and boot count. | SAPrep
Prepare the operation system partition or volume for manufacturing.

Important

  • After running sysprep for a partition, do not start the computer from that partition. To test the image, copy the image to another disk and start the computer from that disk.
Preparing the Operating System for Replication, and "Using Sysprep" in Microsoft Windows OPK
If you are creating a backup operating system image on this drive, repeat the preceding steps for the backup partition or volume. | Creating a Backup Operating System
Remove the hard disk from the computer. Copy the contents of the hard disk to destination disks by using disk-duplicating equipment or software. | "The Disk-Duplicating Method" in Microsoft Windows OPK
Test one or more disk copies by installing the disks in a target server appliance, removing unwanted peripheral devices (such as video adapter, keyboard, mouse, and removable media drives), and then starting the target server appliance.


Hardware Requirements and Recommendations

Generally speaking, a server appliance does not have special hardware requirements beyond what is required to run Microsoft Windows Server 2003, other than an Advanced Configuration and Power Interface (ACPI)-compliant power switch to ensure that the computer's power can be turned off remotely. Server appliance availability and manageability can be enhanced by the addition of such hardware components as failover BIOS, nonvolatile random access memory (NVRAM), and a keypad and display for a local user interface (UI). For more information, see Server Appliance Hardware Requirements and Recommendations.

Because of the particular services that run on them, Windows Storage Server 2003 devices do have special hardware requirements. See Windows Storage Server 2003 Hardware Requirements and Recommendations for information about these requirements.

Because of the influence that it has on server appliance performance and availability, the way you configure volumes on the server appliance can make a sizable difference in the effectiveness of your server appliance in your customer's enterprise. See Volume Configuration for details.


Server Appliance Hardware Requirements and Recommendations

Server appliances can be built using a wide range of hardware platforms, from the most basic systems capable of running Microsoft Windows Server 2003 Standard Edition to the more powerful platforms required for Microsoft Windows Server 2003 Enterprise Edition. The local user interface (UI), Web UI, and localization frameworks provided by the Server Appliance Kit do not, in themselves, add significant overhead that would require a higher level of hardware support than requirements and recommendations for Windows Server 2003 itself.

Of course, if you add value to the server appliance by installing additional applications or services, these components may require a faster processor, more RAM, or additional disk storage capacity than the minimum required by Windows Server 2003. An example of such a value-added configuration that requires additional hardware support is the Windows Storage Server 2003 configuration provided by the Server Appliance Kit. See Windows Storage Server 2003 Hardware Requirements and Recommendations to see how the additional services included in the Windows Storage Server 2003 configuration impact hardware requirements.

If you add your own applications and services to the base server appliance, it is strongly recommended that you test the appliance thoroughly while running these applications and services under stressful conditions to establish the minimum hardware configuration that provides acceptable performance and reliability.

Two of the distinguishing features of a server appliance are enhanced reliability and manageability. The Server Appliance Kit provides support for special hardware that helps provide these enhanced features. This special hardware includes:

  • Local display
  • Keypad
  • Nonvolatile RAM (NVRAM) and failover BIOS
  • Watchdog timer

Adding these devices to your server appliance will help make your server appliance a more effective addition to your customer's network. For more information about these hardware components, see the Server Appliance Kit Hardware Development Kit (sakhdk.chm) on the Server Appliance Kit CD. See also the Microsoft Windows Server 2003 Driver Development Kit (DDK) for information about developing drivers for this special hardware. The DDK can be found in the latest edition of the Microsoft Developer Network (MSDN) library.

For development purposes, the server appliance hardware can include a CD-ROM drive, keyboard, mouse, and display. This will allow you to boot the server using the Windows Server 2003 CD. For servers that are to be remotely administered, these devices can be removed before the server is restarted because Windows Server 2003 can boot without a keyboard and display present.


Windows Storage Server 2003 Hardware Requirements and Recommendations

Because of the additional overhead of the services and applications provided by the Windows Storage Server 2003 configuration included with the Server Appliance Kit, the hardware-platform requirements and recommendations for a Windows Storage Server 2003 computer are higher than those of a general server appliance or Microsoft Windows Server 2003. The following table outlines the minimum and recommended configurations for a Windows Storage Server 2003 computer.

Requirement | Minimum | Recommended
Processor Speed | Same as Windows Server 2003 | Same as Windows Server 2003
Random access memory | 512 MB | 1 GB
Network interface adapter speed | 100 Mbps | 1 Gbps


Microsoft Windows Server 2003 Configuration

The operating system provides the foundation of any server appliance. It is important to match the correct edition of Microsoft Windows Server 2003 to the server hardware and the intended purpose of the server appliance. To help you with this decision, see Choosing the Operating System.

Because Windows Server 2003 is a general-purpose operating system, you must configure it to make it function more appropriately for a server appliance. For details, see Operating System Configuration.


Choosing the Operating System

You can use the Server Appliance Kit to create server appliances that run on two editions of Windows Server 2003.

Windows Server 2003 Standard Edition is intended for use with simpler server hardware. You should choose this version if the computer hardware matches these criteria:

  • 4 GB or less of RAM
  • Symmetric multiprocessing (SMP) support for up to four CPUs or less

Windows Server 2003 Enterprise Edition supports computer systems with a richer set of features typical of high end servers:

  • Up to 32 GB of RAM
  • SMP support for up to 8 CPUs
  • Hot-add memory
  • Non-Uniform Memory Access (NUMA)
  • Cluster service

Of course, you must have the appropriate redistribution license for the Windows Server 2003 edition you select.

Regardless of the edition you use, the SAPrep utility changes the branding of the operating system to Microsoft Windows Server 2003 Appliance Edition.


Operating System Configuration

Before installing the Server Appliance Kit framework components, you must configure Windows Server 2003 to work optimally with the features provided by the Server Appliance Kit.

The following table lists the Windows components that pertain to a server appliance and their recommended settings. For a sample answer file for performing an unattended installation with these settings, see Example: Unattend.txt (Answer File) for Installing Windows.

Component | Subcomponent | Recommended for Windows Storage Server 2003? | Recommended for Custom Appliance? | Notes
Accessories and Utilities | Accessibility wizard | N | N |
 | Accessories | N | N |
 | Communication | N | N |
Application Server | Application Server Console | Y | Y |
 | ASP.NET | N | N |
 | Enable network COM+ access | Y | Y |
 | Enable network DTC access | N | N |
 | Internet Information Services | Y | Y | See IIS Configuration for details.
 | Message Queuing | N | N |
Certificate Services | Certification Authority (CA) | N | N |
 | Certificate Services Web Enrollment Support | N | N |
E-mail Services | POP3 Service | N | N |
 | POP3 Service Web Administration | N | N | Do not install. Installing this feature will prevent the SAK 3.0 Web UI framework from functioning properly.
Cluster Service |  | See Note | N | Applies to Windows Server 2003 Enterprise Edition only. Enable only to support clustering of multiple server appliances.
Fax Services |  | N | N |
Indexing Services |  | Y | N |
Internet Explorer Enhanced Security Configuration | For administrator groups | Y | Y |
 | For all other user groups | Y | Y |
Management and Monitoring Tools | Connection Manager Administration Kit | N | N |
 | Connection Point Services | N | N |
 | Network Monitor Tools | N | N |
 | Simple Network Management Protocol | N | N |
 | WMI SNMP Provider | N | N |
 | WMI Windows Installer Provider | N | N |
Networking Services | Domain Name System (DNS) | N | N |
 | Dynamic Host Configuration Protocol (DHCP) | N | N |
 | Internet Authentication Service | N | N |
 | RPC over HTTP Proxy | N | N |
 | Simple TCP/IP Services | N | N |
 | Windows Internet Name Service (WINS) | N | N |
Other Network and File Services | File Services for Macintosh | See Note | N | Install only if you intend to support customers sharing files with Apple Macintosh clients.
 | Print Server for Macintosh | N | N |
 | Print Services for UNIX | N | N |
Remote Installation Services |  | N | N |
Remote Storage |  | N | N |
Script Debugger |  | N | N |
Terminal Server |  | N | N | Do not install this component. You must enable Remote Desktop to allow remote administration of the server, however.
Terminal Services Licensing |  | N | N |
UDDI Services |  | N | N |
Update Root Certificates |  | Y | Y |
Windows Media Services |  | N | N |

IIS Configuration

The following table provides recommended settings for Internet Information Services.

Component | Subcomponent | Recommended for Windows Storage Server 2003? | Recommended for Custom Appliance? | Notes
Background Intelligent Transfer Service (BITS) Server Extensions |  | N | N |
Common Files |  | Y | Y |
File Transfer Protocol (FTP) Service |  | See Note | N | Install only if you intend to support customers sharing files with FTP clients.
FrontPage 2002 Server Extensions |  | N | N |
Internet Information Services Manager |  | Y | Y |
Internet Printing |  | N | N |
NNTP Service |  | N | N |
SMTP |  | See Note | See Note | Install if you install the Alert E-Mail feature of the SAK.
World Wide Web Services | Active Server Pages | Y | Y | Required for the SAK 3.0 Web UI framework.
 | Internet Data Connector | N | N |
 | Remote Administration (HTML) | N | N | Installing this feature will prevent the SAK 3.0 Web UI framework from functioning properly.
 | Remote Desktop Web Connection | N | N |
 | Serve Side Includes | N | N |
 | WebDAV Publishing | See Note | N | Enable only if you intend to support customers sharing files using Web Folders.
 | World Wide Web Service | Y | Y | Required for the SAK 3.0 Web UI Framework.

Password Security

At a minimum, the Administrator account must be assigned a password with a length greater than one character to enable remote administration using Remote Desktop and the Web UI. To provide adequate user account security, it is strongly recommended that you set the minimum password length policy for all accounts to at least six characters.


Volume Configuration

Server appliances developed using the Server Appliance Kit support all partition and volume configurations supported by Windows Server 2003, including all fault-tolerant volume configurations supported by the Windows Server 2003 edition on which the server appliance is running.

To provide the security and reliability required by a server appliance, all volumes must be formatted using the NTFS file system.

When you configure the volumes of the server appliance, you must take into consideration how the volumes will be used on the server appliance. In particular, if your server appliance will be using the Shadow Copies service, it is important to configure the system volumes properly to work with the service.

If you plan to enable the Shadow Copies service for a volume, it is recommended that you format the source volume with an allocation size of 16 kilobytes (KB) or larger. The following scenarios can impact the allocation size you choose:

  • To allow defragmenting of the source volume on which you enable the Shadow Copies service, set the cluster allocation unit size to 16 KB or larger when you format the source volume. If you do not, the number of changes during defragmentation can cause previous versions of files to be deleted.
  • If you require NTFS file system file compression on the source volume, you cannot use an allocation unit size larger than 4 KB. In such a case, when you defragment a volume that is very fragmented, older shadow copies might be lost faster than expected

If you enable Shadow Copies for a volume, it is strongly recommended that you set the storage volume to be the same as the source volume. The Web user interface (Web UI) provided by the Server Appliance Kit allows system administrators to manage shadow copies only if the source and storage volumes are the same.

If you do not enable Shadow Copies for a volume, you should ensure that your customers cannot enable Shadow Copies for system volumes, boot volumes, and other volumes for which Shadow Copies should not be enabled. To do this, you should add the globally unique identifier (GUID) of the volume to the following registry key:

HKLM\Software\Microsoft\ServerAppliance\NAS\ShadowCopy\VolumesToExclude

This registry value is of type REG_MULTI_SZ. To exclude a volume, include the volume GUID in the registry value. Do not use curly braces in the GUID, for example, 7261338e-9aaf-11d6-abfa-00065bb15292

Use the mountvol command to obtain the GUID of a volume you want to exclude.

Recommended configuration for Windows Storage Server 2003 server appliances

Microsoft recommends that OEMs configure Windows Storage Server 2003 server appliances with two small mirrored volumes (software or hardware RAID1) for the primary and secodary operating systems. Volumes designated for user data should be configured as RAID1 or RAID5 volumes. For a simple Windows Storage Server 2003 server appliance that has four disks of, for example, 100 gigabytes (GB) each, each disk should be partitioned into a 4-GB and a 96-GB partiton. The 4-GB partitions on disk 0 and 1 should be mirrored for the primary operating-system volume. The 4-GB partitions on disk 2 and 3 should be mirrored for the secondary operating system. The 96-GB partitions on disks 0, 1, 2, 3 should be striped (RAID 5) for the data volume.


Localization

The Web UI framework and local UI framework of the Server Appliance Kit can give server appliance administrators the ability to manage the server appliance using the following languages:

  • Chinese (simplified)
  • Chinese (traditional)
  • French
  • German
  • Japanese
  • Korean
  • Spanish

To provide this support in your server appliance, you should also install the Multilingual User Interface (MUI) Pack support files for each of the languages you will support in addition to the Server Appliance Kit language components. Failing to do so may cause unpredictable results when the system administrator changes the server's primary language.

For information about installing MUI support, see "Preinstalling the Multilingual User Interface (MUI) Pack" in Microsoft Windows OEM Preinstallation Kit (OPK) User's Guide


Creating a Backup Operating System

If your server appliance will support the ability to failover to a backup copy of the operating system, you must create a backup operating system.

To create a backup operating system, you must first create a primary partition for the backup operating system according to requirements outlined in Partitioning, Formatting, and Installing the Main Disk. After setting the backup operating system partition to be active, you install and configure Windows Server 2003 as described in Operating System Configuration, and then install and configure any other software you want to run (such as the Server Appliance Kit frameworks) when the computer starts using the backup operating system.

Note

  • The backup operating system receives the same computer name as the primary operating system. During setup, this computer must not be made part of a domain because the duplicate-name structure required for the reliability feature will be rejected by the Microsoft® Active Directory™ directory service of Microsoft Windows. Instead, set up the computer as part of a workgroup.

In order to use the failover functionality of the Reliability Services, use the table below to add the appropriate value to the registry of each operating-system partition under HKLM\System\CurrentControlSet\Services\vmnvram\Parameters.

Value | Type | Description
PrimaryOS | REG_DWORD | Set to zero (0) to indicate backup operating system Set to one (1) to indicate primary operating system

When these registry values are set, a critical alert will be raised on the Web UI and local UI when the system starts using the backup operating system.


Installing the Server Appliance Kit

After installing and configuring Windows Server 2003, the next step in creating a server appliance is installing the Server Appliance Kit (SAK) framework software. The specific features you install will depend on the computer hardware and the purpose for which the server appliance is designed. For more information, see Server Appliance Kit Components.

You can install the SAK framework components interactively using Windows Installer, or you can install them in unattended mode. See Installation Methods for a description of both techniques.

After the SAK framework components are installed, you can customize the server appliance by extending the Web user interface. This process can be as simple as adding your own branding image to the Web UI or as elaborate as creating your own Web UI add-ins. Extending the Web UI contains more details.


Server Appliance Kit Components

Select the components you want to install based on the type of server appliance you are creating. The following table shows which components are selected by default for each type of server appliance. The features selected during setup can only be installed locally. Installing on first use and Installing from network are not supported.

Windows Storage Server 2003 | Custom | Feature | Subfeature | Description
x | x | Web UI Framework | Date and time settings | This component allows the date and time to be set on the server appliance.
x | x | Web UI Framework | Language settings | This feature detects the language of the first browser that connects to the appliance after first boot and automatically sets the appliance's language accordingly. A Web UI component is also provided that allows the system administrator to change the language of the appliance manually.
x | x | Web UI Framework | Users and groups | This component allows the system administrator to create, delete, and edit properties for local users and groups on the appliance using a Web browser on a remote client computer.
x | x | Web UI Framework | Network configuration | Allows the system administrator to join the appliance into a workgroup or domain, set the host name, configure DNS servers, configure individual network adapters on the appliance, and change the Administrator password.
Web UI Framework | Telnet | This component gives the administrator the ability to permit telnet access to the server. Warning: Messages sent via Telnet are not encrypted. As a result, passwords are transmitted in clear text.
x | x | Web UI Framework | Log configuration | This feature allows system administrators to view, clear, download, and configure logs on the server appliance. Third-party developers can add logs into the Web UI so that they can be viewed, downloaded, configured, and cleared by the system administrator. Web UI plug-ins for specific logs are provided in the Server Appliance Kit including Windows Server 2003 system, application, and security event logs as well as NFS, WWW, and FTP logs.
x | x | Web UI Framework | File backup | This feature allows the system administrator to back up and restore the operating system files. The feature uses an ActiveX control for the Windows Terminal Services client to provide a system backup capability through the Web management UI from a Windows-based client computer. This feature is otherwise identical to the capability provided on Windows Server 2003.
x | x | Web UI Framework | E-mail alerts | This component allows the administrator to specify how server-appliance alerts will be sent via e-mail.
x | x | Web UI Framework | Remote shutdown | This Web UI component allows the system administrator to remotely shut down or restart the appliance using a Web browser.
x | Web UI Framework | Remote desktop | This feature gives the administrator the ability to connect to the server using remote desktop within the Web UI.
x | x | Web UI Framework | System information | This component displays information about the server operating system and hardware.
x | x | Storage management | Disk and volume management | This feature allows the end customer to manage disks and volumes on the server appliance. The feature uses an ActiveX Control for the Windows Terminal Services client to provide access to the disk management Microsoft Management Console (MMC) snap-in on the appliance. The disk management snap-in is accessed through the appliance's Web management UI from a Windows-based client computer. This feature is otherwise identical to the capability provided on Windows Server 2003.
x | x | Storage management | Volume defragmentation | This Web UI component allows the server administrator to set up disk defragmentation for volumes at particular times or intervals.
x | x | Storage management | Shadow copies | This component gives the server administrator the ability to manage shadow copies on the server. Shadow copies provide point-in-time copies of shared files and folders that are located on the server. With shadow copies, you can view the files and folders as they existed at points of time in the past.
x Storage management Folder and share management The folders component allows folders on the appliance to be created and deleted. Various folder properties can also be set including compression, encryption, and security.
The shares component allows shares to be created on the appliance using a browser. The shares feature aggregates the management of all shares no matter what file-sharing protocol you use, including Microsoft SMB, Web (HTTP), network file system (NFS), FTP, and AppleTalk sharing. This is different from the standard Windows file share management, where each share type has its own interface. In the Server Appliance Kit's Web UI, a common property subset is exposed to simplify the management of shares. Properties specific to a protocol, such as Microsoft SMB or NFS, are presented on separate property pages.
x | x | Storage management | UPS configuration | This feature allows the administrator to manage an uninterruptable power supply (UPS) device connected to the server.
Local UI The local UI framework allows you to develop your own content to plug into the Server Appliance Kit's local UI – without requiring any code changes to the local UI framework code. The optional local display can be a simple bank of LEDs, or a 64x128 pixel bitmapped LCD. The framework provides a navigation scheme using a six-key keypad on the front of the appliance, including four directional keys as well as ENTER and CANCEL keys.
Users can set the IP settings and host name using the local UI on the server appliance.
Additional Languages When additional language support is installed, the server administrator can specify a language other than English that will be used in the Web UI and local UI. Support for any of the following languages can be installed:
  • Chinese (Simplified)
  • Chinese (Traditional)
  • French
  • German
  • Japanese
  • Korean
  • Spanish

If you have installed the Web user interface (UI) framework, you can access it by opening a browser on the target appliance and typing https://localhost:<port#> in the address field. The Web UI can also be accessed remotely by typing the host name of the server appliance in the address field instead of localhost.

Notes

  • The default port number is 8098.


Installation Methods

To install the Web user interface (UI), local UI, and localization frameworks provided by the Server Appliance Kit (SAK) on your server appliance, you can use the Microsoft Server Appliance Kit Setup Wizard to install them interactively, or you can use a command-line procedure to perform and unattended installation that requires no further intervention.

To install Server Appliance Kit frameworks

Using the Windows interface (interactive)

  1. Insert the Microsoft Server Appliance Kit 3.0 CD in the CD drive.
  2. Click Start, and then click Windows Explorer.
  3. In Windows Explorer, click My Computer, and then in the results pane double-click the CD drive.
  4. Double-click SaSetup30.msi.
  5. In the Microsoft Server Appliance Kit Setup Wizard, click Next.
  6. Carefully read the End-User License Agreement (EULA) and then do one of the following:
    • If you do not agree to the terms of the EULA, click Cancel. The setup wizard will exit.
    • If you agree to the terms of the EULA, click I accept the terms in the license agreement, and then click Next.
  7. Depending on the type of server appliance you are creating, click either Windows Storage Server 2003 or click Custom.
  8. In Available Components, add or remove components, depending on how you want to configure the server appliance, and then click Next.
  9. To complete the installation, click Install.

Note

  • For complete descriptions of these components, see Server Appliance Kit Components

Using the command-line (unattended)

  1. Insert the Microsoft Server Appliance Kit 3.0 CD in the CD drive.
  2. At a command prompt, type:

    msiexec /i [path\]sasetup30.msi [ARPHELPLINK="support_URL"] [ADDLOCAL="component[,component...]"] /qn

The following describes the arguments and options for this command.

Argument/Option | Description
path | The fully qualified path of the Windows Server Appliance Kit sasetup30.msi file. If you omit the path, the sasetup30.msi file must be in the current directory.
support_URL | Specifies the full Web address of a Web site which your customers can read to obtain support information for their server appliance. This URL appears in the Add or Remove Programs Control Panel dialog box.
component Specifies the component you want to install. The following components can be installed.

Notes

  • Component names are case sensitive and must be entered exactly as shown.
  • No blank spaces may appear in the comma-separated list of components.
BackEndFramework
Installs supporting software for the SAK frameworks. This component is required and must be specified.
WebUI
Installs supporting software for the Web UI framework. This component is required if you are installing any Web UI components.
SetDateAndTime
This component allows the date and time to be set on the server appliance.
Set_Language
This feature detects the language of the first browser that connects to the appliance after first boot and automatically sets the appliance's language accordingly. A Web UI component is also provided that allows the system administrator to change the language of the appliance manually.
UsersAndGroups
This component allows the system administrator to create, delete, and edit properties for local users and groups on the appliance using a Web browser on a remote client computer.
NetworkSetup
Allows the system administrator to join the appliance into a workgroup or domain, set the host name, configure DNS servers, configure individual network adapters on the appliance, and change administrator password.
Telnet
This component gives the administrator the ability to permit telnet access to the server. Warning: Messages sent via Telnet are not encrypted. As a result, passwords are transmitted in clear text
Logs
This feature allows system administrators to view, clear, download, and configure logs on the server appliance.
AlertEmail
This component allows the administrator to specify how server-appliance alerts will be sent via e-mail.
Shutdown
This Web UI component allows the system administrator to remotely shut down or restart the appliance using a Web browser.
RemoteDesktop
This feature gives the administrator the ability to connect to the server using remote desktop within the Web UI.
SystemBackup
This feature allows the system administrator to back up and restore the operating system files. The feature uses an ActiveX control for the Windows Terminal Services client to provide a system backup capability through the Web management UI from a Windows-based client computer. This feature is otherwise identical to the capability provided on Windows Server 2003.
FoldersAndShares
The folders component allows folders on the appliance to be created and deleted. Various folder properties can also be set including compression, encryption, and security. If you specify this component, you must also specify Services.
DisksAndVols
This feature allows the end customer to manage disks and volumes on the server appliance. The feature uses an ActiveX Control for the Windows Terminal Services client to provide access to the disk management Microsoft Management Console (MMC) snap-in on the appliance.
ShadowCopyManagement
This component gives the server administrator the ability to manage shadow copies on the server.
ScheduledDefragmentation
This Web UI component allows the server administrator to set up disk defragmentation for volumes at particular times or intervals.
SysInfo
This component displays information about the server operating system and hardware.
NAS
Installs support for Windows Storage Server 2003 features.
UPS
This feature allows the administrator to manage an uninterruptable power supply (UPS) device connected to the server.
Services
Installs supporting software for Folders and Shares.
LocalUI
The local UI framework allows you to develop your own content to plug into the Server Appliance Kit's local UI – without requiring any code changes to the local UI framework code.
Languages
Installs support for one or more languages. At least one of the following language components must be specified with this component.
ChineseSimp, ChineseTrad, French, German, Japanese, Korean, Spanish
Installs UI and Help for the following languages:
  • Chinese (Simplified)
  • Chinese (Traditonal)
  • French
  • German
  • Japanese
  • Korean
  • Spanish

For more complete descriptions of these components, see Server Appliance Kit Components.

Example

The following example shows how to perform an unattended setup of a Windows Storage Server 2003 server appliance with support for the Japanese and Korean languages:

sasetup30.msi ADDLOCAL=BackEndFramework,WebUI,SetDateAndTime,
      Set_Language,UsersAndGroups,NetworkSetup,Logs,SystemBackup,
      AlertEmail,Shutdown,RemoteDesktop,SysInfo,NAS,
      ScheduledDefragmentation,ShadowCopyManagement,UPS,FoldersAndShares,
      Services,DisksAndVols,Language,Japanese,Korean /qn

For the sake of readability, this example is shown on several lines, but the command must be typed on a single line.


Extending the Web UI

Because it can be customized and extended, the Web user interface (UI) framework provides you with an important opportunity to distinguish your server appliance from competing offerings.

At a minimum, you can add your own branding visual element to the Web UI. All that is required to do this is to create a small graphics file containing the branding element, installing that file on the server appliance, and then modifying the system registry to specify the location of the file. For more information, open the Server Appliance Kit Software Development Kit (saksdk.chm) and search for the phrase, "Adding Your Logo to the Web UI." In addition, you can customize the Web Shares home page that gives client users access to directories shared using the Web (HTTP) protocol. For more information, see Customizing the Web Shares Home Page.

To set your server appliance further apart, you can license software from an independent software vendor to add functionality to the base server appliance. This software can include Web UI add-ins that make it easier for system administrators to manage the server appliance using the Web UI.

Of course, the best way to distinguish your server appliance is by adding your own custom services and features. Again, you should provide Web UI add-ins to make it easy to administer the server remotely using the Web UI. For more information about creating Web UI add-ins, see the Server Appliance Kit Software Development Kit (saksdk.chm) on the Microsoft Server Appliance Kit 3.0 CD.


Customizing the Web Shares Home Page

The Web Shares home page is the Web UI page that gives Web users access to folders shared using the Web (HTTP) protocol. You can customize this page in the following ways:

  • By replacing the default style sheet with a custom style sheet
  • By replacing the default graphic file depicting a folder that appears on the left side of the page
  • By adding your logo to the top of the page

If you choose to customize any of these elements, you must create a text file in the %systemroot%\system32\ServerAppliance\Shares folder. The text file must be named ShareSiteBranding.txt and must specify the location of the customizing elements in this format:

stylesheet=/styles/stylesheet_file
oemlogo=/images/oem_logo_file
foldergraphic=/images/folder_graphic_file

Each entry must appear on a separate line in the file. Order is not important, and the entries are not case sensitive. If any of these elements is missing, the default style sheet or graphic file is used.

The following example shows the ShareSiteBranding.txt file for a custom style sheet named mystyle.css, a replacement folder graphic in a file named myfolder.gif, and an OEM logo graphic in a file named myoemlog.gif.

stylesheet=/style/mystyle.css
foldergraphic=/images/myfolder.gif
oemlogo=/images/mylogo.gif

The files must be located relative to the path of the Web Shares site.

If a user logged on as a member of the server's Administrator's group connects to the Web Shares site, the customization will not appear unless the server registry contains the same entries as the ShareSiteBranding.txt file, as shown:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ServerAppliance\ElementManager\
     WebElementDefinitions\ExampleLogo] "ElementGraphic"="/images/mylogo.gif"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ServerAppliance\ElementManager\
     WebElementDefinitions\sharesLogoDefault] "ElementGraphic"="/images/myfolder.gif"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ServerAppliance\ElementManager\
     WebElementDefinitions\CSS_Default] "URL"="style/mystyle.css"

Most often, you should use the same values in the registry and the sharesitebranding.txt file to ensure that the appearance of the Web site is the same for system administrators and end users.

To prevent an attacker from defacing the Web site, make sure that the style sheet, graphics files, and sharesitebranding.txt files are protected by permissions that allow only members of the Administrators group to change the files.


Special Configuration Settings

After installing the Server Appliance Kit frameworks, but before you finish preparing the disk image of your server appliance for duplication, there are a number of additional configuration changes you may want to make.

This section covers the following subjects:

  • Setting the Default Home Directory Path
  • Configuring the Restarting Page Timeout
  • Customizing FTP
  • Setting Up A Virtual Directory
  • Creating a DFS Root
  • Removing Security Certificates


Setting the Default Home Directory Path

By default, the home directory for new users created using the Web UI is drive:\Users, where drive is the letter of the boot volume. You can specify a different directory as the root directory in which the home directory for new users will be created. To do this, create the registry key HKLM\Software\Microsoft\ServerAppliance\UserGroup and then create a string value named UserDir that contains the full home directory path.


Configuring the Restarting Page Timeout

You can use registry key values to modify the default behavior of SA_ServeRestartingPage. Some computers take a long time to shut down so the initial delay needs to be long enough to ensure that at least the computer has shutdown IIS.

Under the HKLM\SOFTWARE\Microsoft\ServerAppliance\WebFramework key, you can add the following registry values to configure the restarting page timeout.

Value | Type | Description
RestartInitialDelay | DWORD | Time in milliseconds for the initial delay (T1). The default value is three minutes.
RestartRetryDelay | DWORD | Time in milliseconds for the retry delay (T2). The default value is 15 seconds.
RestartTaskDelay | DWORD | Time in milliseconds for delay before the back-end Shutdown task executes the shutdown/restart. This value needs to be long enough to allow the restarting status page to be sent to the client. The default value is 20 seconds.

Note

  • The first two registry values are used with SA_ServeRestartingPage, which should be called SA_DEFAULT for most parameters. The last registry value is used with the shutdown task.


Customizing FTP

The FTP root directory is configured in the unattend.txt file. If necessary, modify this file to change the default root directory.

Note

  • Do not remove the default FTP Web site. Some Server Appliance Kit pages require that the default FTP Web site exists. You can disable anonymous connections and secure the home directory using NTFS file system permissions to restrict access to the default FTP Web site.


Setting Up a Virtual Directory

You may want to change the default directory for the server appliance Web UI to a virtual directory. The following procedure shows you how to do this.

To change the default administration Web site

  1. Configure Microsoft Internet Information Services (IIS) to use the new virtual root, for example, admin.
    1. Open Internet Information Services Manager and highlight the Administration Web site.
    2. From the Action menu, choose New Virtual Directory.
    3. Complete the wizard for creating a virtual directory, including entering %systemroot%\system32\ServerAppliance\Web for the content path, and then choosing the appropriate security settings.
  2. Create a registry value using data type: REG_SZ under HKLM\Software\Microsoft\ServerAppliance\ElementManager named AdminRoot, with a value of admin.


Creating a DFS Root

If you are creating a Windows Storage Server 2003 server appliance, you can improve the "out of the box" experience for your customers by creating a local Distributed File System (DFS) root that the server administrator can use to when configuring a shared directory to use the DFS sharing protocol.

To create a local DFS root

  1. Click Start, and then click Web Interface for Remote Administration.
  2. In the browser window, click the Shares tab, click Sharing Protocols, click click the DFS option button, and then under Tasks, click Properties.
  3. Click Local DFS Root.
  4. In the Root name box, type the name of the DFS root.
  5. In the Folder path box, type the full path name of the folder you want to serve as the DFS root. If the folder does not yet exist, select the Create folder check box.
  6. Click Create root.
  7. To make the local DFS root the default DFS root when creating a shared folder, click General, and then click the Publish new shares to the local DFS root option button.


Removing Security Certificates

The Server Appliance Kit (SAK) Web user interface (UI) provides a self-signed certificate to authenticate the server and raises an alert advising the customer to obtain a signed certificate from a certificate authority. Because this certificate is tied to the computer name of the server, a certificate created on one server is not valid on another computer. As a result, before you can create a master image of your server appliance, you must remove the default certificate created by the Web UI framework and clear the associated alert. When a new server created from that master image boots for the first time, the Web UI framework creates a new certificate for that particularly server and raises an alert for that certificate.

To delete the Administration site certificate

  1. Click Start, point to Administrative Tools, and then click Internet Information Services (IIS) Manager.
  2. In IIS Manager, expand the local computer, and then expand Web Sites.
  3. Right-click Administration, and then click Properties.
  4. Click the Directory Security tab, and then Server Certificate.
  5. In the Web Server Certificate Wizard, click Next.
  6. Click Remove the current certificate, and then click Next.
  7. Verify that the correct certificate is being removed, and then click Next again to remove the certificate.
  8. Click Finish to close the wizard.
  9. Click Start, and then click Web Interface for Remote Administration.
  10. In the Web browser, click the Status tab, click Install new certificate, and then click Clear message

Windows Server 2003 also creates a number of additional certificates based on the server name that should be removed before you copy the master image.

To remove server certificates

  1. Click Start, and then click Run
  2. In the Open box, type mmc, and then click OK.
  3. In the Microsoft Management Console (MMC), click File, click Add/Remove Snap-in, and then click Add.
  4. In the Available Standalone Snap-ins list, click Certificates, and then click Add.
  5. When prompted for which account to manage certificates for, click Computer account, click Next, and then click Finish.
  6. In the Add Standalone Snap-in dialog box, click Close.
  7. In the Add-Remove Snap-in dialog box, click OK.
  8. In the MMC window, expand the Certificates add-in.
  9. Expand the Personal folder, and then click the Certificates folder
  10. Right-click the certificate that matches the server name, and then click Delete.
  11. Expand the Trusted Root Certification Authorities folder, and then click the Certificates subfolder.
  12. Right-click the certificate that matches the server name, and then click Delete.

Important

  • If you restart the computer before copying the master image, the certificates will be recreated.


Installing Services for NetWare

If you are interested in providing NetWare connectivity on a Windows Storage Server 2003 server appliance you should use Microsoft Services for NetWare. Contact your account manager to receive more information about Services for Netware and about the availability of a version compatible with Windows Server 2003.

Microsoft Services for NetWare is optional, and may be installed before installing the Server Appliance Kit components. If you install Services for Netware, follow the installation procedure provided in the Services for NetWare documentation.


Customizing Auto Configuration

One of the challenges of manufacturing a server appliance is the problem of using a master image to manufacture computers that, when they are installed in a customer's network, must have unique computer names and network addresses.

To solve this problem, the Server Appliance Kit provides the SaConfig.exe utility. When you develop the master image for your device using this utility, the server appliance created from that master image can set its own, unique computer name, IP address, and Administrator account password when it is first started by your customer. The server appliance can set these values using values supplied on a floppy disk, or by using values that are stored in the registry, retrieved from a function in a dynamic-link library (DLL), or both.

This section contains information on the following topics:

  • Preparing for Auto Configuration
  • Customizing SAConfig
  • OEM-Provided DLL and Function


Preparing for Auto Configuration

Use the SAConfig utility (saconfig.exe) to configure your server appliance with OEM-specified initial settings. The saconfig.exe file is located in the oemtools\saconfig\bin directory on the Microsoft Server Appliance Kit 3.0 CD. You can also find sample registry information in the oemtools\saconfig\reg\SAConfigSample.reg file, and the sample oemconfigdll.dll in the oemtools\saconfig\bin directory. The saconfig.exe and oemconfigdll.dll files comprise the full executable file.

SAConfig checks the A drive to see if a disk is present, and then determines if the saconfig.inf file exists on the disk. If it finds the file, SAConfig uses the information in the saconfig.inf file to configure the appliance. If there is no configuration floppy or if the information file does not provide a host name and administrator password for the computer, SAConfig uses the oemconfigdll.dll file to generate a host name and administrator password.

The oemconfigdll.dll file provided with the Server Appliance Kit uses Windows Management Instrumentation (WMI) to read system parameters—for example, serial number and service tag—and uses those values to create the unique suffix for the host name and administrator password for the server appliance. SAConfig creates a unique host name and administrator password by concatenating a WMI object property value, for example, \\root\cimv2\Win32_Bios\SerialNumber, with a prefix that you set in the registry. SAConfig changes the host name and administrator password only if they are the same as the default values that were set when the server appliance master image was created.

To set up your server appliance for auto configuration

  1. Create a directory called SAConfig on the root directory of your system and copy saconfig.exe and oemconfigdll.dll to this directory.

    The saconfig.exe and oemconfigdll.dll files are found in the \oemtools\saconfig\bin folder on the Server Appliance Kit CD.

  2. Configure your custom registry settings on the target system. For more information, see Customizing SAConfig and the sample registry file on the Server Appliance Kit CD.
  3. Follow the instructions in Preparing the operating system for Replication.

After you follow these steps, each cloned image will execute saconfig.exe when started for the first time.

Related Topics


Customizing SAConfig

The SAConfig utility (saconfig.exe) sets the server's Internet Protocol (IP) address and changes the machine name and administrator password using a prefix provided by a call to the GetUniqueSuffix() function in the dynamic-link library (DLL) oemconfigdll.dll. You can replace the default oemconfigdll.dll with your own implementation; for more information, see OEM-Provided DLL and Function.

The SAConfig utility can be customized in either of two ways:

  • Through a saconfig.inf file located on a floppy disk in the server's A drive
  • Through the registry keys described in this topic

A sample saconfig.inf file is located on the Server Appliance Kit 3.0 CD in the \OemTools\SAConfig\inf folder.

The registry values used to configure SAConfig are located in HKLM\SOFTWARE\Microsoft\ServerAppliance\SAConfig:

HostnamePrefix

This value is used as a prefix while generating the host name. The WMI parameter that the system reads is appended to this prefix to form the initial host name. The total length of the host name should not exceed 15 characters, including the prefix.

Code Example

HKLM\Software\Microsoft\ServerAppliance\SAConfig\HostnamePrefix="hpr"

DefaultHostname

This value should be set to the factory preset host name and is used to determine if the host name has been changed from the factory default.

Code Example

HKLM\Software\Microsoft\ServerAppliance\SAConfig\DefaultHostname="myhostname"

AdminPasswordPrefix

This value is used as a prefix while generating the administrator password. The WMI parameter that the system reads is appended to this prefix to form the initial administrator password. The total length of the administrator password should not exceed 14 characters, including prefix and suffix.

Code Example

HKLM\Software\Microsoft\ServerAppliance\SAConfig\AdminPasswordPrefix="apr"

DefaultAdminPassword

This value should be set to the factory preset administrator password. SAConfig will only change the administrator password if it is still set to the factory preset value.

Code Example

HKLM\Software\Microsoft\ServerAppliance\SAConfig\DefaultAdminPassword="myadminpasswd"

OEMDllName

This value holds the name of the DLL to be used by SAConfig Set this if you are using a custom DLL that is not named oemconfigdll.dll.

Code Example

HKLM\Software\Microsoft\ServerAppliance\SAConfig\OEMDllName="oemconfigdll.dll"

OEMFunctionName

This value holds the function name exported by the DLL. Set this if you are using a custom DLL that exports a function that is not name GetUniqueSuffix().

Code Example

HKLM\Software\Microsoft\ServerAppliance\SAConfig\OEMFunctionName="GetUniqueSuffix"

RunOnce

This value is not currently being used.

WMIClassName

This value determines which WMI class will be used in the suffix. The WMI class is expected to be under the root\cimv2 directory.

Code Example

HKLM\Software\Microsoft\ServerAppliance\SAConfig\WMIClassName="Win32_BIOS"

WMIPropertyName

This value determines which property of the WMI object will be used in the suffix. The WMI object property type is expected to be of type CIM_STRING. You can use wbemdump to find the WMI object property.

Code Example

HKLM\Software\Microsoft\ServerAppliance\SAConfig\WMIPropertyName="__NAMESPACE"


OEM-Provided DLL and Function

When the SAConfig utility is used to automatically generate a unique computer name or Administrator password for a computer, it loads the dynamic-link library (DLL) oemconfigdll.dll and calls the GetUniqueSuffix() function in that library to retrieve a suffix that is unique to the computer on which the DLL is running.

The Server Appliance Kit provides a default oemconfigdll.dll that uses Windows Management Instrumentation (WMI) to generate a unique suffix. If you want to use another method for generating a unique suffix, you can replace the default oemconfigdll.dll files with a custom version. For information on specifying the name of the custom DLL and the function it exports, see Customizing SAConfig.

The following shows the syntax for the default DLL function header.

STDAPI GetUniqueSuffix (WCHAR *wszUniqueSuffix)

Note

  • The wszUniqueSuffix string must be 128 characters or less in length.

Allocation and deallocation of memory for the string argument is performed outside of the exported function. No memory allocation or deallocation is to occur inside the function. The SAConfig utility calls the exported function, passing an empty string to the function and receiving a unique suffix within that variable. The exported function returns S_OK upon successful execution. Any return value other than S_OK signals that the function did not execute successfully.


Preparing the Operating System for Replication

You must prepare a master image that can be duplicated once your appliance is working as desired on the target development hardware. SysPrep.exe and other tools are stored in a .cab file named DEPLOY.cab. This file is located on the Microsoft® Windows Server 2003 CD in a directory named \SUPPORT\TOOLS.

To run these tools, create a directory named SysPrep in the root of the system drive on the target machine and then extract all of the files contained in the .cab file into this directory. After running SetupMgr.exe, a file named sysprep.inf is created in the SysPrep directory. This directory and all of the files in it are automatically deleted after the first boot. For more information, see the documentation that accompanies SysPrep in the .cab file.

To prepare the server appliance for manufacture

  1. Create an operating system image on your target system that will be replicated.
  2. Create the directory %systemdrive%\Sysprep.
  3. Copy all files from the \Support\Tools\deploy.cab file on the Windows Server 2003 CD into the \Sysprep directory.
  4. Run SetupMgr.exe.

    Note that replication of an image based on the Server Appliance Kit does not have specific requirements for most of the pages in this wizard. The following steps call out the wizard pages where there are specific requirements.

  5. On the New or Existing Answer File page, click Create new, and then click Next.
  6. Click SysPrep setup, and then click Next.
  7. Click Windows Server 2003, Standard Edition (or Windows Server 2003, Enterprise Edition), and then click Next.
  8. Click Yes, fully automate the installation, and then click Next.
  9. Type the default host name of the appliance, and then click Next.

    If you are using the SAConfig utility to automatically configure the cloned images to generate a unique computer name on first boot, then the computer name you enter must match the \defaulthostname registry value described in Customizing SAConfig.

  10. Type the default administrator password, and then click Next.

    If you are using the SAConfig utility to automatically configure the cloned images to generate a unique administrator password on first boot, then the administrator password you enter must match the \defaultadminpassword registry value described in Customizing SAConfig.

  11. On the Sysprep Folder page, click Yes, create or modify the Sysprep folder, and then click Next.
  12. On the Additional Commands page, type the name of any commands you want to run on each cloned image on first boot, and then click Add, and then click Next.

    If you are using the SAConfig utility to automatically configure the cloned image, you must type the full path to the saconfig.exe file with appropriate command-line arguments as described in Customizing Auto Configuration. For example, if you copied the saconfig.exe and OEMConfigDLL.DLL into a folder called saconfig on the C: drive and you want to automatically configure both the host name and administrator password, then you would type C:\saconfig\saconfig.exe -hostname -adminpass.

  13. Edit sysprep.inf to include your OEM Product Identification (PID) number. Doing this ensures that no console input is required on the first boot of the machine. Your sysprep.inf file should resemble the following code example.
    ;This sysprep.inf causes the mini Setup Wizard to run unattended and
;configure the system without user intervention.

[Unattended]
OemSkipEula=Yes
ExtendOemPartition=1
InstallFIlesPath=C:\sysprep

[GuiUnattended]
TimeZone=004
AdminPassword=*
OEMSkipRegional=1
OEMSkipWelcome=1

[LicenseFilePrintData]
AutoMode=PerSeat

[GuiRunOnce]
;list of programs to be run once after first logon.

[RegionalSettings]

[UserData]
FullName="Product Name"
OrgName="Company Name"
ComputerName="*"
ProductID=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
;OEM PID here

[networking]
;No changes required

[identification]
joinworkgroup=workgroup
  14. Close all applications.
  15. Run sysprep.exe. This will place the operating system onto an image file and shut down the system. The hard disk is now ready for imaging.


Documentation for Your Customers

This section contains information that your customers may need to use their server appliances successfully. You are encouraged to provide this information in documentation that is readily available to your customers.

  • Web Browsers and Downloading Logs
  • Problems with Using Local UI to Set IP Address
  • Updated Client Needed for Remote Desktop
  • Security Considerations
  • Shadow Copy Clients
  • Problems When UPS is Configured Incorrectly
  • Problems with Using Local UI to Set IP Address
  • Microsoft Services for Network File System
  • Administering Services for NetWare


Web Browsers and Downloading Logs

System administrators can encounter problems when trying to download tab-delimited or comma-separated value (CSV) log files. These files have the .log and .csv file extensions, respectively.

Such problems can occur when attempting to download the log files using Microsoft Internet Explorer 5.5 without Service Pack 1 and the latest security updates applied.

In addition, instead of downloading the files, Web browsers on the Macintosh display the log files in the Web pane.

If problems are encountered using Netscape Navigator or Internet Explorer on a Macintosh computer, increasing the memory settings for the browser can prevent the problems from occurring.


Problems with Using Local UI to Set IP Address

If you use the server appliance's Remote Desktop to run the ipconfig -release command, you cannot use the local user interface (UI) on the server appliance to set the Internet protocol (IP) address to Auto IP, and the server appliance's IP address will remain 0.0.0.0. To fix this problem, the system administrator must unplug the network cable from the network adapter for about 10 seconds and then plug the cable back into the network adapter.


Updated Client Needed for Remote Desktop

Client computers using an older version of Internet Explorer or the Terminal Services Advanced Client may not be able to access Remote Desktop. The new Terminal Services Advanced Client, available in Windows Server 2003, must be installed on a client system in order to access this feature (as well as Backup and Manage Volumes). To make this client software available, upgrade Internet Explorer to the latest version. The client software is then automatically installed when the Remote Desktop feature is accessed for the first time.


Security Considerations

Your customers should take into consideration the following issues when developing plans for enhancing the security of their server appliance

Web UI requires cookies

The Server Appliance Kit Web user interface (UI) framework and several add-ins depend on client-side cookies. If the system administrator disables cookies on the Web browser, the Web UI will not function correctly.

Secure channel required for remote administration

In server appliances built using the Server Appliance Kit 3.0, only secure connections are allowed to access the server appliance administration site. Use https://server:8098 to access this site.

Do not allow unsigned drivers to be installed

Unsigned device drivers can present a security issue because their source cannot be verified. Consequently they can be used to mount a "trojan horse" attack. For example, by replacing the local keypad driver with one that can be controlled remotely, a hacker can take control of the server by changing its IP address, changing the computer name, or shutting it down.

To prevent unsigned drivers from being installed

  1. Click Start, point to Control Panel, and then click System.
  2. Click the Hardware tab, and then click Driver Signing.
  3. Click Block - Never install unsigned drive software.

Protect the BIOS with a password

If the BIOS of the server appliance is not protected with a password, anyone with physical access to the server can configure it cause a denial of service. For example, an attacker can set failover to occur when it's not supported, causing the machine to stop functioning. Customers should protect the BIOS of their server appliance with a password.

Physically secure the server hardware

Control of physical access to a computer is always essential to maintaining system security. For example, if a server appliance is equipped with a keypad and display, anyone who has access to the server hardware can change the server's IP address or computer name, or restart or shut down the computer. Customers should never allow unauthorized personnel to have access to the server appliance hardware.

Avoid browsing the Web when logged on as an administrator

Because a Web browser runs with all the privileges of the user who ran it, a hacker capable of exploiting security vulnerabilities can inflict more damage if the Web browser is run by a member of the Administrators group. When logged on to the server locally or connected to the server using Remote Desktop, system administrators should not browse the Web unless they use the Run as command to start the Web browser as a user with fewer privileges.

Do not allow removable storage on the server

The presence of a floppy disk, CD-ROM, or other removable storage drive on a server can make it possible for someone with access to the server hardware to run unauthorized software on the server. Customers should remove all removable storage drives from server appliances before putting them into service.

Use a tamper switch to protect server hardware

If someone can open the server case, that person can install hardware that can compromise system security. For example, hardware could be installed that acts like a watchdog timer, forcing the server to restart continuously. To ensure that no one can modify the server hardware without detection, server appliance cases should be equipped with a tamper switch.

Internet Explorer security in Windows Server 2003

By default, Internet Explorer running on Windows Server 2003 does not allow execution of JScript, loading of ActiveX controls, and file downloading. This effectively prevents the system administrator from using the Web UI when logged on the server locally or using Remote Desktop. To view the remote administration, the server administrator should add the site to the Trusted Sites zone when prompted to do so.


Shadow Copy Clients

On Windows XP computers, special client software is required to access shadow copies on a computer running Windows Server 2003. The client software can be installed on Windows XP computers by running the twcli32.msi file located in %systemroot%\system32\clients\twclient\x86 on any Windows Server 2003 computer.


Problems When UPS is Configured Incorrectly

If a system administrator configures uninterruptible power supply (UPS) support to specify a model that is not currently connected to the server appliance, the computer can interpret the absence of the UPS device as a loss of power and so may immediately shut down the server. To solve this problem, the system administrator must start the server in Safe Mode and disable the UPS service. The system administrator can then restart the computer and correct the UPS configuration.


Initial Setup Through the Local UI

If you have an LCD and keypad on your server appliance, you should include the following information in your installation documentation for the end customer.

There are several local UI features you will find very useful when setting up the server appliance for the first time.

The following plug-in tasks are required:

  1. Configure Network

    This task is for the system administrator to choose to either be a DHCP client or manually set up the IP address for the server appliance. When the server appliance boots up the first time, it defaults to be DHCP client. The system administrator can use this local UI add-in task to change the server appliance's network setting to connect to other machines in their network. The following is the LCD screen design.

    Screen1: Keypad:
    Auto IP address (The currently selected item is highlighted.)

    Static IP address

             Arrow key will be used to select the item.
    ENTER key will be used to confirm.
    CANCEL key will be used to go back to Task page.
    Screen2: (If Auto IP address is selected) Keypad:
    IP address will be obtained from server automatically, OK? ENTER key will be used to confirm the change and go back to Screen1.
    CANCEL key will be used to ignore the change and go back to Screen1.
    Arrow keys will be ignored.
    Screen3: (If Static IP address is selected) Keypad:
    IP: xxx.xxx.xxx.xxx The current machine IP address

    Subnet mask:

    xxx.xxx.xxx.xxx The current subnet mask

    Default gateway:

    xxx.xxx.xxx.xxx The current default gateway. 000.000.000.000 means no default gateway

             LEFT and RIGHT arrow key will be used to select the digit.
    UP and DOWN arrow will used to change the digit value.
    ENTER key will be used to confirm the change. If no error is found, go back to Screen1. If there is an error, go to Screen4.
    CANCEL key will be used to ignore the change and go back to Screen1. Ignore the selection of Static IP address as well.
    Screen4: Error-handling screen Keypad:
    IP address entered is invalid. (If the IP address has a problem.)

    Subnet mask entered is invalid. (If the subnet mask has a problem.)

    Default gateway entered is invalid. (If the default gateway has a problem.)

             Arrow keys will be ignored.
    ENTER or CANCEL key will be used to go back to Screen3.
  2. Set Host Name

    This task is for the system administrator to set or change the host name of their server appliance. The customer can later use this name to access the server appliance from the Web browser client. For more information, see Changing the Name of the Machine.

    The following example shows the LCD screen design.

    Screen1: Keypad:
    Computer name:

    <Empty line>

    xxxxxxxxxxxxxxx A maximum of a 15-character name can be entered. "A" ~ "Z", space and 0~9 are possible characters.

             LEFT and RIGHT arrow keys will be used to select character.
    UP and DOWN arrow will used to change character value.
    ENTER key will be used to confirm the change. If no error is found, go back to Task page. If there is an error, go to Screen2.
    CANCEL key will be used to ignore a change and go back to the Task page.
    Screen2: Error-handling screen Keypad:
    Host name entered is invalid. Arrow keys will be ignored.
    ENTER or CANCEL key will be used to go back to Screen1.
  3. Reboot

    This task allows the system administrator to reboot the server appliance machine.

    Screen1: Keypad:
    Reboot will stop all the current works. Are you sure you want to proceed? ENTER key will be used to confirm reboot and go to shutting down page.
    CANCEL key will be used to ignore reboot and go back to Task page.
    Arrow keys will be ignored.
  4. Shutdown

    This task allows the system administrator to shut down the server appliance machine.

    Screen1: Keypad:
    Shutdown will stop all the current works. Are you sure you want to proceed? ENTER key will be used to confirm shutdown and go to shutting down page.

    CANCEL key will be used to ignore shutdown and go back to Task page.

    Arrow keys will be ignored.


Microsoft Services for Network File System

This section covers information that customers who purchase a Windows Storage Server 2003 server appliance might need to know to use Microsoft Services for Network File System successfully.

  • Using Microsoft Services for Network File System Administration
  • Deployment Issues
  • Additional Considerations


Using Microsoft Services for Network File System Administration

The Web UI gives system administrators the ability to manage the most important functions of Server for NFS and User Name Mapping. There are a few configuration settings (such as file-name character translation and User Name Mapping database backup) that can only be managed using Microsoft Services for Network File System Administration. In addition, the online Help available through Microsoft Services for Network File System Administration has more detailed information about using Server for NFS and User Name Mapping than is provided by the Help available through the Web UI.

To use Microsoft Services for Network File System Administration, connect to the server using Remote Desktop, click Start on the server desktop, and then click Services for Network File System Administration.

On computers running Microsoft Windows Services for UNIX, you can also use Windows Services for UNIX Administrator to connect to and administer Server for NFS and User Name Mapping on the server appliance.


Deployment Issues

Microsoft Services for Network File System (NFS) on a Windows Storage Server 2003 server appliance is optimally configured for use as stand-alone NFS servers or for deployment in settings where only a few NFS servers will be used and where UNIX users will be authenticated using local accounts on the Windows Storage Server 2003 computer.

If your customer's network does not match this description, you should provide instructions on how to deploy Microsoft Services for Network File System to best suit the customer's requirements.

This topic covers deploying Microsoft Services for Network File System in the following settings:

  • Where a small number of NFS servers will be deployed in an Active Directory–based network
  • Where a large number of NFS servers will be deployed in an Active Directory–based network

In the first case, if User Name Mapping is to be configured to map UNIX accounts to Active Directory accounts, the customer must install Microsoft Windows Services for UNIX Server for NFS Authentication on every domain controller in the domain containing the accounts that will be mapped to UNIX accounts. To allow this, your redistribution license authorizes you to distribute a Microsoft Windows Services for UNIX 3.0 CD with each Windows Storage Server 2003 server appliance you sell.

In the second case, in addition to installing Server for NFS Authentication on domain controllers, the customer will probably want to install User Name Mapping on one or more dedicated servers. These servers can then provide User Name Mapping services for a large number of NFS servers. Using a few centralized User Name Mapping servers in this manner can simplify network administration by allowing user and group maps to be maintained on only a few servers instead of on each Windows Storage Server 2003 computer. Customers can use the Windows Services for UNIX CD to install User Name Mapping on the dedicated servers. The customer's system administrators must then use Microsoft Services for Network File System Administration to designate the User Name Mapping server to be used by each NFS server.

Information on using Microsoft Services for Network File System Administration can be found in Microsoft Services for Network File System Help.

For information on installing Windows Services for UNIX components, see install.htm on the Microsoft Windows Services for UNIX 3.0 CD.

Microsoft Services for Network File System provides NFS sharing functionality that is specially tailored for use in a Windows Storage Server 2003 server appliance. Functionally it is similar to the Server for NFS and User Name Mapping components of Windows Services for UNIX, and so you are authorized to distribute a Windows Services for UNIX CD with your Windows Storage Server 2003 server appliance so your customers can implement these deployment scenarios. Windows Services for UNIX also provides additional functionality, such as password synchronization and the Interix POSIX-compliant subsystem. Your redistribution license does not authorize you or your customers to use the Windows Services for UNIX CD to install and run these features. You are not authorized to preinstall any components from the Windows Services for UNIX CD on the server appliance, and your customer is authorized to use the Windows Services for UNIX CD to install Server for NFS Authentication on domain controllers only or to install User Name Mapping on a dedicated server.

For more information about deploying User Name Mapping, you can refer your customers to the Microsoft Technet white paper on User Name Mapping located at http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol/windows2000serv/deploy/sfu/usrmap.asp.


Additional Considerations

Japanese characters in user names

User Name Mapping does not support Windows or UNIX user and group names containing Japanese characters. Also, the names of NFS client groups cannot contain Japanese characters.

NFS anonymous share access

To allow anonymous access to folders shared using the NFS protocol, the server administrator must make two changes to the Windows Server 2003 security policy:

  • The Local Security Policy must have Network access: Let Everyone permissions apply to anonymous user enabled.
  • The permissions protecting the folder that is to be shared must grant the Everyone security group access to the folder.

It is not possible to make these changes to the security policy of the server appliance. the server administrator must make these changes either while logged on locally or using Remote Desktop.

NFS client groups

Client group names with a space or other invalid characters are not supported. Although the Web UI will allow a system administrator to enter a client group name containing a space, the client group will not be created.

NFS log file limits

Server for NFS stops writing events to the NFS server log file when it reaches the maximum size specified by the server administrator. It is not possible to configure Server for NFS to overwrite the log file cyclically so that events will continue to be logged even though the log file has reached its maximum size.

Volume mount points

Server for NFS does not support volume mount points. NFS clients cannot access data on volumes mounted using a volume mount point. Volumes must be mounted using a drive letter to give NFS clients the ability to access the volume.

Client access to shadow copies

NFS clients can access shadow-copy data as read-only files in hidden folders located in the root of a folder shared using the NFS protocol.


Administering Services for NetWare

If you install Microsoft Services for NetWare on the server appliance, you should notify your customers that the Web UI does not provide a way to administer Services for NetWare. On remotely administered (headless) server appliances, the system administrator must use Remote Desktop to configure Services for NetWare and create NetWare shares.


Supporting Windows Powered Server Appliances

As you are no doubt aware, OEMs are responsible for providing support to the customers who purchase their products, including support for issues that result from running Microsoft software. In most cases, OEMs can resolve such issues themselves using their own resources. Occasionally, however, an OEM must seek assistance from Microsoft to research an issue and develop a solution.

This section explains how to obtain support from Microsoft. Getting Support explains how to contact Microsoft for support and what to expect as a result of that request.

While most issues can be resolved using configuration or procedure changes, occasionally Microsoft must make changes to the software itself. In these cases, Microsoft will issue a quick-fix engineering (QFE) release that you can use to patch the software you install on the computers you manufacture. In addition, you can also receive permission to distribute a QFE release to your customers so they can update their systems. See Working with QFEs for more details.


Getting Support

Your technical account managers (TAMs) serve as the conduit between you and Microsoft when you request support to resolve an issue encountered by you while developing your server appliance or by your customers after you have shipped the appliance. It is crucial that you contact your TAM for support and that you keep your TAM informed of all developments in the solution of your issue. Do not attempt to contact Microsoft Product Support Services directly unless you are instructed by your TAM to do so.

If Microsoft has not yet assigned a TAM to you, then you should go to http://www.microsoft.com/support, review the support packages available to you, and then contact a Microsoft representative to discuss your options.

What happens when you request support

When you report an issue to your TAM, Microsoft designates the issue as a "support incident" and assigns the incident a case number and severity level. Often, the TAM will request further details on the incident. To expedite resolution of your issue, you should be prepared to provide the following information:

  • Product name (Server Appliance Kit 3.0)
  • Component name (for example, Shadow Copies)
  • Description of the problem
  • Detailed description of the steps required to reproduce the problem
  • Description of expected results (what you expected would happen as a result of performing these steps)
  • Error message or description of the product's unexpected behavior
  • Troubleshooting or debugging attempts and results
  • Description of the business impact of the problem
  • Severity of the problem, using a three-level scale:
    • Severity A incidents require immediate response because you are no longer able to continue your development or sales efforts.
    • Severity B incidents require fast response because your development or sales efforts are impeded, but not blocked.
    • Severity C incidents require only timely response because the issue does not affect your development or sales efforts.

Next your TAM will route the support incident to Product Support Services, who will assign the case to a support professional. The support professional will analyze and research the issue, sometimes reproducing it to gain a better understanding of the cause and solution. The SP may contact you directly for more information or to test possible solutions. If the SP is able to solve the issue, the case will be wrapped up and closed.

If the SP is not able to resolve the issue, the issue is assigned to an escalation team, which will also attempt to diagnose and solve the problem. As with the SP, if the escalation team can find a way to fix the issue, then you will be instructed how to solve the issue and the case will be wrapped up and closed.

if the escalation team also is unable to resolve the issue, and if the escalation team can reproduce the problem, then the team will log the incident an a database and request a review from the software development team to determine whether the incident qualifies for a quick-fix engineering (QFE) release. If it does, then the software development team will research and develop a solution, which will then be released to you by Product Support Services. Generally speaking, the priority level of your issue will determine how quickly the development team will seek to provide the QFE that solves the issue.

For information about what to do when you receive a QFE, see Working with QFEs.


Working with QFEs

If your issue qualifies for a quick-fix engineering (QFE) software update, your TAM will notify you when the QFE is ready and how to access and install it. You are automatically authorized to apply the QFE to any applicable software you install on new computers.

If you determine that you want to make the QFE available to your customers, you should contact your technical account manager (TAM) to receive redistribution rights to the QFE release. You will be sent a form; after you fill out and return the form, your TAM will forward the form to the Microsoft legal department. When the TAM receives the redistribution license from the Microsoft legal department, your TAM will send the license on to you.

As soon as you receive that license, you can distribute the QFE to your customers. You can do so by sending the Windows Installer package containing the QFE release directly to your customers. Alternatively, you can arrange with your TAM to make the QFE available to your customers using Windows Update so they can download the QFE directly from Microsoft and install it automatically.

How an issue qualifies for a QFE

Microsoft cannot accept all QFE requests, and the requirements for producing a QFE is necessarily quite high. Requests are evaluated on a case-by-case basis. For OEMs, Microsoft considers QFE requests that fall into one or more of the following general categories:

  • Severe instability
  • Security problems
  • Preinstallation problems that affect product shipping and product cycles
  • Problems reported by OEM customers that affect a substantial number of the OEM's customers
  • QFE regression problems

Within these categories, Microsoft considers a number of other criteria in determining whether a QFE request qualifies for a QFE. These evaluation criteria include:

  • Lack of reasonable workarounds
  • Minimal risk that fixing the problem would destabilize the server appliance
  • Extent to which the problem is blocking revenue or productivity for the OEM
  • Degree to which the problem is politically sensitive for Microsoft or the OEM
  • Number of computers affected


Reference

The section provides syntax and usage information for three command-line tools provided by the Server Appliance Kit 3.0. In addition, it provides an example answer file (unattend.txt) for Windows Setup that illustrates how to install Windows Server 2003 so that it is optimally configured for a Windows Storage Server 2003 computer, as well as a glossary of terms.

  • SAPrep - Server Appliance Kit 3.0 utility for preparing a server appliance for manufacture
  • SAConfig - Server Appliance Kit 3.0 utility to configure a server appliance when it first starts
  • SASetup30.msi - Windows Installer (MSI) package to install Microsoft Server Appliance Kit 3.0
  • Example: Unattend.txt (Answer File) for Installing Windows
  • Glossary


SAPrep

NAME

SAPrep - Server Appliance Kit 3.0 utility for preparing a server appliance for manufacture

SYNOPSIS

SAPrep [-L|-B]

DESCRIPTION

The SAPrep utility prepares a server running Windows Server 2003 for manufacture as a server appliance. When run without command-line options, SAPrep resets the boot count of the server to zero (0) and resets the initial language so that the next time the computer starts, Windows will respond as though it were starting for the first time.

The changes made by this utility are permanent and cannot be reversed or uninstalled.

Previous versions of SAPrep installed special video, keyboard, and mouse device drivers to allow the server appliance to be remotely administered without these devices. Unlike earlier versions of Windows, however, Windows Server 2003 can run without these devices attached to the computer. For this reason, SAPrep no longer installs these device drivers.

The following describes the options for this command. Consult your redistribution agreement for information about the options you are required to use.

Option | Description
-B | Changes the branding of the Windows operating system. The startup splash screen, logon dialogs, and other visual elements that display the name of the operating system are changed to display Windows Server 2003 Appliance Edition as the operating-system name.
-L Locks down the server appliance, preventing the following server applications from running:
  • Microsoft Exchange
  • Microsoft SQL Server
  • IBM Lotus Notes
  • IBM DB2
  • Oracle database applications

In addition, if this option is used on a computer running Windows Server 2003, the computer cannot be promoted to a domain controller.

Important

  • The SAPrep utility (saprep.exe) must be located on and run from a disk drive on the computer. After running this utility to change the branding, verify that product name has changed on the appropriate screens before continuing. If you run SAPrep to lock down the server, to verify that the operating system is locked down, start Web Interface for Remote Administration, click the Help tab, and then click About Web User Interface for Windows Server Administration. If the lockdown was successful, one of the following lines will be displayed:
    • Microsoft(R) Windows(R) Server 2003, Appliance Edition (Build number)SR
    • Microsoft(R) Windows(R) Server 2003, Appliance Edition (Build number)ER

    The R at the end of the line indicates that the operating system is now restricted.


SAConfig

NAME

SAConfig - Server Appliance Kit 3.0 utility to configure a server appliance when it first starts

SYNOPSIS

SAConfig [-hostname [-restart]] [-adminpass]

DESCRIPTION

The SAConfig utility configures the server, setting the computer name and Administrator password as specified. Typically, the sysprep utility is used to run SAConfig when the server first starts. For more information on using the SAConfig utility, see Customizing Auto Configuration.

The following describes the options for this command.

Option | Description
-hostname | Sets the computer name of the server. If the server will not be restarted by other means, use this option with -restart to make the name change effective.
-restart | Restarts the server. Do not use if sysprep will be restarting the server.
-adminpass | Sets the password of the Administrator account. It is not necessary to use the -restart option with the option.


SASetup30.msi

NAME

SASetup30.msi - Windows Installer (MSI) package to install Microsoft Server Appliance Kit 3.0

SYNOPSIS

msiexec /i [path\]sasetup30.msi [ARPHELPLINK="support_URL"]
[ARPNOMODIFY={""|1}]
[ARPNOREMOVE={""|1}]
[ARPSYSTEMCOMPONENT={""|1}]
[ADDLOCAL="component[,component...]"] /qn

DESCRIPTION

The SASetup30.msi MSI package installs the Web user interface (UI), local UI, and localization framework software provided by the Server Appliance Kit. It does not install documentation or tools to be used by OEMs for developing server appliances. When started using Windows Explorer or without command-line options, the MSI package is installed interactively, requiring user intervention to complete the installation. When started with the /qn option, the MSI package is installed without presenting user interface or requiring user intervention.

The following describes the arguments and options for this command.

Argument/Option | Description
path | The fully qualified path of the Windows Server Appliance Kit sasetup30.msi file. If you omit the path, the sasetup30.msi file must be in the current directory.
ARPHELPLINK="support_URL" | Specifies the full Web address of a Web site which your customers can read to obtain support information for their server appliance. This URL appears in the Add or Remove Programs Control Panel dialog box.
ARPNOMODIFY={""|1} When set to blank (""), overrides the default, causing the Modify button to appear in Add/Remove Programs for the Server Appliance Kit. When set to 1 or omitted, prevents the Modify button from appearing, preventing the end customer from changing the installed components.

Important

  • If the OEM enables the Modify button, the OEM must put SASetup30.msi on the server appliance and provide customer documentation on its location (if SASetup30.msi was not installed from the appliance hard drive). Enabling the Modify button is not recommended for Windows Storage Server 2003 server appliances.
ARPNOREMOVE={""|1} | When set to 1, overrides the default, causing the Remove button to not appear in Add/Remove Programs for the Server Appliance Kit. When set to blank ("") or omitted, displays the Remove button, allowing the end customer to uninstall all Server Appliance Kit components from the server. Note, however, that any rebranding or lockdown performed by the SAPrep utility cannot be reveresed.
ARPSYSTEMCOMPONENT={""|1} | When set to 1, overrides the default, causing the Server Appliance Kit to not appear in Add/Remove Programs. When set to blank ("") or omitted, causes the Server Appliance Kit to not appear in Add/Remove Programs. Note that the settings of ARPNOREMOVE and ARPNOMODIFY determine which buttons appear in the Server Appliance Kit entry in Add/Remove Programs.
ADDLOCAL="component[,component...]" Specifies the components you want to install. The following components can be installed.

Notes

  • Component names are case sensitive and must be entered exactly as shown.
  • No blank spaces may appear in the comma-separated list of components.
BackEndFramework
Installs supporting software for the SAK frameworks. This component is required and must be specified.
WebUI
Installs supporting software for the Web UI framework. This component is required if you are installing any Web UI components.
SetDateAndTime
This component allows the date and time to be set on the server appliance.
Set_Language
This feature detects the language of the first browser that connects to the appliance after first boot and automatically sets the appliance's language accordingly. A Web UI component is also provided that allows the system administrator to change the language of the appliance manually.
UsersAndGroups
This component allows the system administrator to create, delete, and edit properties for local users and groups on the appliance using a Web browser on a remote client computer.
NetworkSetup
Allows the system administrator to join the appliance into a workgroup or domain, set the host name, configure DNS servers, configure individual network adapters on the appliance, and change administrator password.
Telnet
This component gives the administrator the ability to permit telnet access to the server. Warning: Messages sent via Telnet are not encrypted. As a result, passwords are transmitted in clear text
Logs
This feature allows system administrators to view, clear, download, and configure logs on the server appliance.
AlertEmail
This component allows the administrator to specify how server-appliance alerts will be sent via e-mail.
Shutdown
This Web UI component allows the system administrator to remotely shut down or restart the appliance using a Web browser.
RemoteDesktop
This feature gives the administrator the ability to connect to the server using remote desktop within the Web UI.
SystemBackup
This feature allows the system administrator to back up and restore the operating system files. The feature uses an ActiveX control for the Windows Terminal Services client to provide a system backup capability through the Web management UI from a Windows-based client computer. This feature is otherwise identical to the capability provided on Windows Server 2003.
FoldersAndShares
The folders component allows folders on the appliance to be created and deleted. Various folder properties can also be set including compression, encryption, and security. If you specify this component, you must also specify Services.
DisksAndVols
This feature allows the end customer to manage disks and volumes on the server appliance. The feature uses an ActiveX Control for the Windows Terminal Services client to provide access to the disk management Microsoft Management Console (MMC) snap-in on the appliance.
ShadowCopyManagement
This component gives the server administrator the ability to manage shadow copies on the server.
ScheduledDefragmentation
This Web UI component allows the server administrator to set up disk defragmentation for volumes at particular times or intervals.
SysInfo
This component displays information about the server operating system and hardware.
NAS
Installs support for Windows Storage Server 2003 features.
UPS
This feature allows the administrator to manage an uninterruptable power supply (UPS) device connected to the server.
Services
Installs supporting software for Folders and Shares.
LocalUI
The local UI framework allows you to develop your own content to plug into the Server Appliance Kit's local UI – without requiring any code changes to the local UI framework code.
ChineseSimp, ChineseTrad, French, German, Japanese, Korean, Spanish
Installs UI and Help for the following languages:
  • Chinese (Simplified)
  • Chinese (Traditonal)
  • French
  • German
  • Japanese
  • Korean
  • Spanish

For more complete descriptions of these components, see Server Appliance Kit Components.

Important

  • Uninstalling and reinstalling Server Appliance Kit components when creating a master image for manufacture is not supported.


Example: Unattend.txt (Answer File) for Installing Windows

The following example file shows how to install Windows Server 2003 with the recommended configuration for a Windows Storage Server 2003 server appliance. For information about recommended Windows configuration, see Operating System Configuration. For information about performing unattended Windows installations, see Microsoft Windows OEM Preinstallation Kit (OPK) User's Guide.

[Data]
  AutoPartition=0
  MsDosInitiated="0"
  UnattendedInstall="Yes"
  UseBIOSToBoot=1

[Unattended]
  UnattendMode=FullUnattended
  OemSkipEula=Yes
  OemPreinstall=No
  ExtendOemPartition=0
  TargetPath=*
  Repartition=No

[GuiUnattended]
  AdminPassword=*
  AutoLogon=Yes
  OEMSkipWelcome=1
  TimeZone=20

[UserData]
  ComputerName=OEMComputerName
  FullName="Windows Storage Server 2003"
  OrgName="OEM Name"
  ProductID="XXXXX-XXXXX-XXXXX-XXXXX-XXXXX"

;
;Set default page for IE
[URL]
  Home_Page=http://support.oem.com/

;
;Allow IE branding
[Branding]
  BrandIEUsingUnattended=Yes

;
;Default License installation - PerServer with 9999 seats
[LicenseFilePrintData]
  AutoMode=PerServer
  AutoUsers=9999

;
;Default Screen settings
[Display]
  BitsPerPel=24
  Xresolution=800
  YResolution=600
  Vrefresh=60

[RegionalSettings]
  LanguageGroup=1,7,10
  Language=0409

;
;OS component installation
[Components]
  accessopt=Off
  appsrv_console=Off
  aspnet=Off
  calc=Off
  cdplayer=Off
  certsrv=Off
  certsrv_client=Off
  certsrv_server=Off
  charmap=Off
  chat=Off
  clipbook=Off
  cluster=Off
  deskpaper=Off
  dialer=Off
  fax=Off
  fp_extensions=Off
  hypertrm=On
  ieaccess=On
  iis_common=On
  iis_ftp=On
  iis_inetmgr=On
  iis_nntp=Off
  iis_smtp=On
  iis_smtp_docs=Off
  iis_webadmin=Off
  iis_webdav=On
  iis_www=On
  indexsrv_system=On
  LicenseServer=Off
  media_clips=Off
  media_utopia=Off
  mousepoint=Off
  mplay=Off
  msmq=Off
  msnexplr=Off
  mswordpad=On
  netcis=Off
  netoc=On
  objectpkg=Off
  oeaccess=On
  paint=On
  rec=Off
  reminst=Off
  rstorage=Off
  templates=Off
  terminaserver=Off
  TSWebClient=Off
  vol=Off
  WMAccess=Off
  WMPOCM=Off
  WMS=Off
  WMS_Admin=Off
  WMS_SERVER=Off

;
;Join default workgroup
[Identification]
  JoinWorkgroup=WORKGROUP

[Networking]

;
;Optional Network components installation
;  installs SFM and SNMP agent
[NetOptionalComponents]
  DHCPServer=0
  DNS=0
  IAS=0
  ILS=0
  LPDSVC=0
  MacPrint=0
  MacSrv=1
  Netcm=0
  NETMONTOOLS=1
  SimpTcp=0
  SNMP=1
  WINS=0

;
;Terminal Services configuration - Remote Adm mode and NT4 TS permissions
[TerminalServices]
  ApplicationServer=0
  PermissionsSetting=1


Glossary

A

access control list (ACL)
A list associated with an object that contains information about users or groups who have permissions to use or modify the object.
ACL
See access control list.
ACPI
See Advanced Configuration and Power Interface.
Advanced Configuration and Power Interface (ACPI)
A specification that defines a new interface to the system board. This interface enables the operating system to implement operating system-directed power management and system configuration.
action message
A message displayed when an alert is raised.
Active Directory
The directory service included with Windows 2000 Server that stores information about objects on a network and makes this information available to users and network administrators.
Active Server Pages (ASP)
An open application environment in which HTML pages, scripts, and ActiveX components are combined to create Web-based applications.
agent
A computer running Simple Network Management Protocol (SNMP) agent software. See also Simple Network Management Protocol.
alert ID
The code used to identify and raise an alert. The combination of AlertID and AlertLog are unique for each alert.
AlertLog
The code used to uniquely identify the area of the alert, such as disk and Internet. The combination of AlertID and AlertLog are unique for each alert.
alerts
Actions to be taken when specific events occur, such as a specific error, errors of certain severities, or a database reaching a defined limit of free space available. The alert can be defined to take such actions as sending an e-mail, paging an operator, or running a job to address the problem.
API
See application programming interface.
appliance initialization task
The appliance initialization task is executed on every boot. Add the appliance task object to the list of task executables in the appliance initialization task under the following registry key and value: HKLM\Software\Microsoft\ServerAppliance\ApplianceManager\ObjectManagers\Microsoft_SA_Task\ApplianceInitializationTask
application programming interface (API)
A standard set of documented and supported routines that expose operating system programming interfaces and services to applications.
application wizard
A wizard that automatically creates a set of starter files for a new component.
ASP
See Active Server Pages.
ASSP
See Application Specific Standard Product.
asynchronous operation
1. A process in a multitasking system whose execution can proceed independently or in the background. Other processes may be started before the asynchronous process has finished. 2. A data transmission method that allows characters to be sent at irregular intervals over a line by preceding each character with a start bit and following it with a stop bit. Compare synchronous operation.
atomic operations
Indicates that either all actions occur or none of them will.

B

boot
The process a computer performs to load its operating system.
boot loader
An application that is automatically run when a computer is switched on (booted). After first performing a few basic hardware tests, the boot loader loads and passes control to a larger loader application, which then typically loads the operating system.
bootable
Contains the system files necessary for booting a device and running it.
bootstrap loader
See boot loader.
branding
OEM identification.
buffered I/O
Stored data that is buffered in anticipation of another sequential read request.
build dependency
The functional relationship between two components that controls the order in which components are built into an embedded run-time image. A build dependency does not cause the automatic inclusion of a component in an embedded run-time image.
build process
The process of using the information in a configuration to construct an embedded run-time image. The output of the build process is defined by script contained in individual component object definitions, which are sometimes inherited from a prototype.

C

category group
Used to collect components into functionally related categories as an organizational convenience. Category groups are used to organize components in the Windows XP Embedded user interface. See also group.
COM
See Component Object Model.
COM class
The definition of an object in code. In the Component Object Model, class refers to the general object definition, whereas in C++, the class of an object is a data type.
COM object
A programming structure that includes both data and functionality. A COM object is defined and allocated as a single unit.
component
The smallest individually selectable piece of functionality that can be included or excluded from an embedded run-time image, comprised of files, registry entries, and dependency information. It is the most basic element in a configuration.
Component Designer
A development tool that enables you to create a custom component to add to the Windows XP Embedded component database.
component instance
A specific instance of a component that is included within a configuration. A component instance is configured entirely by dynamic HTML. Each component instance consists of multiple components in an ordered chain of prototypes.
Component Object Model (COM)
An open architecture for cross-platform development of client/server applications. COM is based on object-oriented technology as agreed upon by Digital Equipment Corporation and Microsoft Corporation. COM defines the interface, similar to an abstract base class, IUnknown, from which all COM-compatible classes are derived.
component prototype
A component from which others are directly or indirectly derived. Windows XP Embedded uses an ordered chain of prototypes in component instances.
configuration
A set of data that contains all the information necessary to build a Windows-based embedded run-time image, including which components to include. A configuration is contained in a file that has the .slx file extension.
configuration file
A file that contains a configuration. See source code configuration file, configuration, and image configuration file.
configuration page
Can be an HTML page on the Web user interface where the feature or component is set up.
configure
The process of the user setting properties of a tool or device so that it operates correctly and according to user specifications.
conflict
An incompatibility between components or capabilities, or when the same system resource has been allocated to multiple devices. Conflicts are defined in a component definition.
control
A standardized child window on the screen that can be manipulated by the user to perform an action or display information. The most common controls are buttons that allow the user to select options and scroll bars that allow the user to move through a document or position text in a window.
control code
One or more nonprinting characters used by a computer program to control the actions of a device.

D

data type
A class of registry entry, which includes REG_BINARY, REG_DWORD, REG_EXPAND_SZ, REG_MULTI_SZ, and REG_NONE. See also DWORD.
Database Manager
The tool that enables you to manage the component database and the repositories.
DDK
See driver development kit.
de-bounce algorithm
A set of instructions that makes an assumption about how fast a user can press and release a switch and then ensures that only one press is registered in the time specified.
delayed procedure call (DPC)
A routine that checks specific parameters.
dependency
A directed relationship between two objects, typically components or objects. For example, if resource A depends on resource B, then B is a dependency of A.
dependency group
A type of dependency that allows a component to express a dependency on all components that belong to the group. See also group.
direct memory access (DMA)
Memory access that does not involve the microprocessor and is frequently used for data transfer directly between memory and an "intelligent" peripheral device, such as a disk drive.
DLL
See dynamic-link library.
DMA
See direct memory access.
DPC
See delayed procedure call.
driver development kit (DDK)
A set of tools and libraries that enable programmers to write Windows-based software used to run hardware devices, such as printers.
DWORD
A data type composed of hexadecimal data with a maximum allotted space of 4 bytes.
dynamic-link library (DLL)
A set of autonomous functions that any application can use. DLLs are a set of object code modules with each module containing a set of functions.

E

embedded
Broadly, software code or commands built into a device, as opposed to software that is added. In a narrower sense, code that is typically stored in ROM and dedicated to either controlling a device or providing a specific functionality.
embedded run-time image
The final output of the Windows XP Embedded authoring tools, which is the combination of operating system binaries, drivers, applications, services, and configuration data (typically in the system registry).
event viewer
A tool that displays a log that reports critical and noncritical events.
extension key
An entry in the registry, corresponding to the extension of a given file, that specifies which file filter will handle conversions for that file type.

F

focus
1. A temporary property of a user interface object, such as a window, view, dialog box, or button, that permits the object to receive keyboard input from the user. 2. One of the two points that determine the shape of an ellipse. The sum of the distances between any point on the ellipse and each of the foci is constant.
form
An ActiveX control container that you customize to create a user interface for your application. A form contains a collection of controls, such as speech controls, power list boxes, audio controls, and tabber controls. A form displays information on a screen.

G

gateway
The address of a local IP router residing on the same network as the server appliance and that is used to forward traffic to destinations beyond the local network.
global variable
A variable whose value can be accessed and modified by any statement in an application and not merely within a single routine in which it is defined.
globally unique identifier (GUID)
A unique 128-bit value used to identify objects. See also universally unique identifier.
group
A collection of components that are grouped to express dependencies between components, to express user interface categories, or to bulk upgrade instances or component deletions. Groups include dependency, package, and category. See also category group, dependency group, and package group.

H

hardware abstraction layer (HAL)
Consists of hardware and device driver mechanisms that insulate applications from device-specific implementation details. If a capability requested by an application is not implemented by the current hardware, the capability will be emulated by the software.

For Windows CE, see also OAL.

headless
A system that does not have a keyboard, mouse, or video monitor during normal operation, also known as remote administration.
hive
A section of the registry that is stored in a file on a computer's hard disk. Hives are located on a specified volume or in the user profiles.
host system
The computer system that hosts the Windows XP Embedded development environment and authoring tools. This is the system on which the embedded run-time image is constructed.

I

IDE
See integrated development environment and Integrated Device Electronics.
IIS
See Internet Information Services and Internet Information Servers.
image
See embedded run-time image.
image configuration file
A file that Makeimg.exe uses to create an operating system image. Image configuration files include .bib, .dat, .reg, .db, and .str files. See also configuration file.
image file
A file that is generated by Romimage.exe that makes up the bits of the operating system image. An image file can be one of the following three formats: Windows CE binary image data format (.bin), Motorola 32-bit binary data format (.sre), or absolute binary data format (.abx).
implementation
In Platform Builder, an implementation contains the functionality necessary to implement the features contained in a type. There can be more than one implementation for a given type. You use the Platform Builder Catalog and Component view to view implementations and to add them to a platform.
instantiate
The process of creating a specific instance of a component within a configuration.
integrated development environment (IDE)
In Microsoft Visual Studio, an integrated set of Windows-based tools for building, testing, and refining an application. The IDE includes a variety of editors, project build facilities, compilers, an incremental linker (for C++), a class viewer, and an integrated debugger. The IDE enables you to create, test, and refine your applications and Web sites all in one place.
Integrated Device Electronics (IDE)
A type of disk-drive interface in which the controller electronics reside on the drive itself, eliminating the need for a separate adapter card.
Internet Information Servers (IIS)
Software services that support Web site creation, configuration, and management, along with other Internet functions. Internet Information Servers include the Network News Transfer Protocol (NNTP), File Transfer Protocol (FTP), and Simple Mail Transfer Protocol (SMTP).
Internet Information Services (IIS)
Microsoft’s brand of Web server software, using HTTP to deliver World Wide Web documents. IIS incorporates various functions for security, allows for CGI applications, and provides for FTP servers. In versions 4.0 and earlier, IIS was named Internet Information Server.
interrupt priority
One of three thread priority groups. Interrupt priority is reserved for operating system threads. See also idle priority and main priority.
interrupt service routine (ISR)
A small subroutine that resides in the OEM adaptation layer (OAL). The ISR executes in kernel mode and has direct access to the hardware registers. Its sole job is to determine what interrupt identifier to return to the interrupt support handler. Essentially, ISRs map physical interrupts onto logical interrupts.
interrupt service thread (IST)
A thread created by a device driver to wait on an event.
interrupt support handler
A routine that registers a driver so that it can handle a particular interrupt and deregister it later. It also enables communication between the interrupt service routine, the interrupt service thread, and subroutines within the OEM adaptation layer (OAL) in Windows CE and the hardware abstraction layer (HAL) in Windows XP Embedded.
ISR
See interrupt service routine.

J

There are no glossary terms that begin with this letter.

K

key
1. A field or expression used to identify a record; often used as the index field for a database table. 2. The complete registry subkey path of a registry value.

L

LANGID
See language identifier.
language identifier (LANGID)
A standard international numeric abbreviation for a country or geographical region. An LANGID is a 16-bit value that consists of a primary language identifier and a secondary language identifier. A LANGID is constructed using the MAKELANGID macro. See also locale identifier.
locale identifier (LCID)
A 32-bit value that consists of a language identifier and a sort identifier. In code, an LCID identifies the primary language and any secondary language of a specific locale. An LCID is constructed using the MAKELCID macro. See also language identifier.
localization
The process of adapting an application for a specific international market, which includes translating the user interface, resizing dialog boxes, customizing features if necessary, and testing results to ensure that the application still functions properly.

M

message handler
A Component Object Model (COM) object that implements the ITranslate interface in an in-process COM object.
message sink
A callback function that receives messages for a form or a control. Forms or controls that need to be notified of messages implement a message sink.

N

There are no glossary terms that begin with this letter.

O

object definition
Data that defines a discrete packets of functionality, called components, that can be included in the final run-time image. The functionality is expressed as a set of resources (files, registry entries, and dependency information), properties, and optional script.
object definition file
A file that contains object definitions, including components. The component object definition file has the .sld file extension. In Windows NT Embedded 4.0, the file has the .kdf extension.
object type
A name for a particular group of objects that are contained in a folder.
operating system image
The executable file that contains the operating system. See also run-time image.

P

package
A set of one or more components that are treated as a unit when they are either imported or exported to or from the Windows XP Embedded component database. See also group and package group.
package group
Used to collect components together for administrative purposes, allowing a set of components to be managed as a single unit. Examples include upgrading all component instances to a new service pack or deleting all components in the group. See also group.
packet
A unit of information transmitted as a whole from one device to another. A packet includes data and a header containing an identification number, source and destination addresses, and error-control data.
page file
A file on the hard disk that holds parts of applications and data files that do not fit in memory. Data is moved from the page file to memory as needed and moved back to the page file to make room for new data. The paging file and physical memory, or RAM, comprise virtual memory. Also called a swap file.
partition
A portion of a disk that functions as though it were physically separate.
persistent image
A copy at a given instant of the information stored on a selected volume or volumes. The persistent image can later be restored to the server appliance to replace lost data.
physical repository
A location from which files are copied when building a run-time image.
platform
Defines the type of target embedded run-time image being constructed. A platform defines a target operating system, CPU, and locale and is bound to one component database. When a configuration is created, the user selects a specific platform. For example, one platform might be Windows (x86)–US English.
Point-to-Point Tunneling Protocol (PPTP)
A networking technology that supports multiprotocol virtual private networks (VPNs), enabling remote users to access corporate networks securely across the Internet. Using PPTP users can remotely run applications that are dependent on particular network protocols. See also packet.
PPTP
See Point-to-Point Tunneling Protocol.
process
A running application that consists of a private virtual address space, code, data, and other operating system resources, such as files, pipes, and synchronization objects that are visible to the process. A process also contains one or more threads that run in the context of the process.
property
With respect to the Windows XP Embedded component database, a property consists of component or object properties, including lists of resources and dependencies, group membership, version, and so on.
With respect to the database API, a property refers to a data item that consists of a property identifier, data type, and value.
prototype
See component prototype.

Q

There are no glossary terms that begin with this letter.

R

Remote Access Service (RAS) server
Any Windows-based server configured to run the Remote Access Service. See also Remote Access Service.
repository
A storage area used as the source for all embedded run-time image files required during the build process. There may be multiple repositories for a single installation. Repositories may exist as folders (directories) or .cab files.
repository file source
The location of repository files before import has taken place.
repository files
The actual files stored in a repository.
repository object
The database object in the component definition that logically defines a repository.
repository search path
The path that specifies one or more repository servers or share locations where physical repositories are located.
resource
An object that is used within an application but that is defined outside of the application.
run-time image (embedded)
The final output of the Windows XP Embedded authoring tools, which is the combination of operating system binaries, drivers, applications, services, and configuration data (typically in the system registry).

S

script
A set of instructions to an application or utility program. A script typically uses the rules and syntax of the application or utility. A script can also be called a macro. Common scripting languages are JavaScript and VBScript.
SDK
See software development kit.
server appliance
Fixed-function servers that are easier to install than general-purpose servers and eliminate post-purchase upgrade problems.
signature
The operating system identification. For example, "$Windows NT$".
Simple Network Management Protocol (SNMP)
The network management protocol for TCP/IP.
SNMP
See Simple Network Management Protocol.
software development kit
A set of library, header, and Help files that you use to write applications for a specific platform.
source code configuration file
A file that Build.exe uses to generate source code. A source code configuration file can be a dirs file, a sources file, or a makefile file.
symbol
A name that represents a register, an absolute value, or a memory address (relative or absolute).
synchronous operation
1. Two or more processes that depend on the occurrences of specific events such as common timing signals. 2. A data transmission method in which there is constant time between successive bits, characters, or events. The timing is achieved by the sharing of a single clock. Each end of the transmission synchronizes itself with the use of clocks and information sent along with the transmitted data. Characters are spaced by time and not by start and stop bits. 3. A function call that blocks execution of a process until it returns. See also asynchronous operation.

T

Target Analyzer
The analysis tool you use with Target Designer to ensure that your run-time image supports the hardware on your embedded device. This tool has two parts: a probe that identifies the hardware information on your target device and an engine that constructs a configuration based on the information identified by the probe.
Target Designer
The primary authoring tool that allows you to create, customize, and build a bootable run-time image.
target directory
The path for installing a target system.
target drive
The drive and path to which the target system loads.
target path
See target directory.
target system
The computer system on which the embedded run-time image executes.
Telephony API (TAPI)
A set of functions in the Win32 API set that lets a computer communicate directly with telephone systems.
thread local storage (TLS)
A Win32 mechanism that allows multiple threads of a process to store data that is unique for each thread. For example, a spreadsheet application can create a new instance of the same thread each time the user opens a new spreadsheet.
thread synchronization
The method used to coordinate the execution of two or more threads. There are two states in synchronization: signaled and nonsignaled. Threads can either modify the state of the synchronization object or wait for the object to reach a signaled state.
Time to Live
A header field for a packet sent over the Internet indicating how long the packet should be held.

U

Uniform Resource Locator (URL)
The address of a resource on the Internet. URL syntax is in the form protocol://host/localinfo, where protocol specifies the means of returning the object, such as HTTP or FTP. Host specifies the remote location where the object resides and localinfo is a string, often a file name, passed to the protocol handler at the remote location. Also called a Uniform Resource Identifier.
URL
See Uniform Resource Locator.

V

Value
A data string in the registry.
VIGUID
A version independent globally unique identifier (GUID). An identifier for a set of objects that represent different versions of the same principal. For example, VIGUID identifies the component as a specific DLL. The VIGUID remains constant for a component. See also globally unique identifier.
VSGUID
A version specific globally unique identifier (GUID). An identifier of a specific version of an object. The VSGUID for a component changes each time the component is upgraded to a newer version after the component definition is released. See also globally unique identifier.

W

wait function
A function that allows a thread to block its own execution. Wait functions do not return until the specified criteria have been met.
Win32
The API in Windows that enables applications to use the 32-bit instructions available on 80386 and higher processors.
Windows Management Instrumentation (WMI)
A management infrastructure that supports managing and controlling system resources through a common set of interfaces and provides a logically organized consistent model of Windows operation, configuration, and status. WMI was formerly WBEM (Web-Based Enterprise Management).
WMI
See Windows Management Interface.
write filter
A device that redirects write requests to a cache kept in RAM, enabling the embedded run-time image to run from any read-only media that emulates a disk drive or to write-protect any single disk partition. The write filter satisfies the read requests from either the underlying disk device or from the cache.

X

There are no glossary terms that begin with this letter.

Y

There are no glossary terms that begin with this letter.

Z

There are no glossary terms that begin with this letter.


SAK 3.0 - Glossary

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


Changing the Name of the Machine

Server Appliance Kit

Changing the Name of the Server

The system administrator can change the given 15-character computer name or shorten it.

If the system administrator chooses to set a computer name using the local UI with a space as one of the characters, for example, Server One, all characters after the space or blank will be ignored. In the example given, the computer name will be set to Server.

A system administrator can shorten an existing computer name using the local UI. For example, to shorten ServerName to Server, use the keypad and navigate to the character N in ServerName and then use the UP and DOWN arrow keys to convert N to a blank or space character. The blank or space character occurs between 9 and A.


Debugging

The Server Appliance Kit provides debugging functions that can help you isolate and correct errors in your code. To use these functions, copy inc_debug.asp from \SDK\webui\debug\ on the Server Appliance Kit CD-ROM to %windir%\system32\ServerAppliance\web\admin on the computer where you are developing your Web UI add-in, replacing the version that already exists in that folder. You can then use these functions in your code at appropriate locations to help you isolate and diagnose errors.

Important

  • The version of inc_debug.asp located on the SAK CD-ROM is intended to be used only to debug program code. It should not be installed on end-customers' computers.

The following table lists the functions you can use to debug your code.

Function | Description
SA_IsDebugEnabled | Determines whether debugging is enabled.
SA_TraceOut | Writes debugging information to the HTML stream or to a log file.
SA_TraceErrorOut | Writes debugging information to the HTML stream or to a log file. The information is prefixed with the string "ISSUE:".

To make full use of these functions, you must set values for registry entries in the following location:
HKEY_LOCAL_MACHINE\Software\Microsoft\ServerAppliance\WebFramework

The following table shows the debugging registry entries available to help you locate any errors or bugs.

Value | Type | Description | Example
Debug DWORD Enables debugging so the framework stops processing the ASP page if an error occurs. An error is indicated when the properties of the Err object have been set.
Value | Meaning
0 | Disable debugging
1 | Enable debugging
 1
TraceOption DWORD Specifies where trace information is sent.
Value | Meaning
0 | No output
1 | Output to HTML stream
2 | Output to trace log file
3 | Output to HTML stream and trace log file
 2
TraceFile | REG_SZ | Absolute full path of the trace log file. The path must exist. | %temp%\SAWebFramework.log

Important

  • Set these registry values only on computers being used to develop and debug a Web UI add-in. They should not be set on end-customers' computers.


Copyright

Information in this document, including URL and other Internet Web site references, is subject to change without notice. Unless otherwise noted, the example companies, organizations, products, people, and events depicted herein are fictitious and no association with any real company, organization, product, person, or event is intended or should be inferred. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means–electronic, mechanical, photocopying, recording, or otherwise–or for any purpose, without the express written permission of Microsoft Corporation.

Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property.

Copyright © 2000-2003 Microsoft Corporation. All rights reserved.

Microsoft, MS-DOS, Windows, and Windows NT are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

The names of actual companies and products mentioned herein may be the trademarks of their respective owners.

Sample Code Rights and Restrictions

See the End User License Agreement for specific information regarding the rights and restrictions that apply to your use of the code samples provided.


Partitioning, Formatting, and Installing the Main Disk

In general the Server Appliance Kit does not require a special disk layout. However, to support the failover feature in the BIOS, the primary operating system should be installed in the first primary partition and the backup operating system should be installed in the second primary partition or in the active partition in another disk.

Microsoft recommends the primary and backup operating system partitions be 2 GB or larger. Both primary and backup partitions must use the NTFS file system. It is recommended that any other partitions also use the NTFS file system.

Primary partition Backup partition Optional partitions
Primary operating system
  • Marked as Active
  • ntldr
  • ntdetect.com
  • boot.ini
  • Microsoft Windows Server 2003 directory primary operating system
  • ≥ 2 GB
 Backup operating system
  • ntldr
  • ntdetect.com
  • boot.ini
  • Microsoft Windows Server 2003 directory backup operating system
  • ≥ 2 GB
 OEM partitions. Permissible but not required.


SA_IsDebugEnabled

This function verifies whether debugging is currently enabled.

SA_IsDebugEnabled()

Parameters

None.

Return Values

The return value is the value stored in the registry entry
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ServerAppliance\WebFramework\Debug
and can be one of these values:

1
Debugging is enabled.
0
Debugging is not enabled.

Remarks

The following code sample illustrates how to use this function.

If ( SA_IsDebugEnabled() ) Then
    ' Debugging is enabled
  Else
    ' Debugging NOT enabled
  End If

For more information about using this function to debug your Web UI add-in, see Debugging.

Requirements

Runs on | Versions | Defined in | Include | Link to
Server (ASP), VBScript | Microsoft Server Appliance Kit 3.0 |  | inc_framework.asp |

Note

  • This function is part of the complete Server Appliance Kit as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM), and some devices might not support this function.


SA_ServeRestartingPage

This function serves a page that indicates that the server appliance is currently unavailable, restarting, or shutting down. This function does not restart the server appliance.

SA_ServeRestartingPage(
ByVal strOption,
ByVal sInitialWait,
ByVal sRetryWait,
ByVal strRsrcDLL,
ByVal sTitleRID,
ByVal sMessageRID
)

Parameters

strOption
Specifies one of the optional standard restart options, as shown in the following table. If one of these standard options is specified, strRsrcDLL, sTitleRID, and sMessageRID do not need to be specified and SA_DEFAULT can be specified.
Option | Description
Shutdown | The server appliance will perform a shutdown.
Restart | The server appliance will perform a restart.
sInitialWait
Time (in milliseconds) that this page will wait before checking to determine whether the appliance has completed a restart.
sRetryWait
Optional. Time (in milliseconds) that, following the initial delay, this page will wait before attempting to reconnect to the server appliance while a restart is in progress. If this is not specified, the default value indicated by the registry key HKLM\SOFTWARE\Microsoft\ServerAppliance\WebFramework\RestartRetryDelay is used.
strRsrcDLL
Optional. String resource dynamic-link library (DLL) that contains string message text for the sTitleRID and sMessageRID parameters.
sTitleRID
Optional title resource identifier for the title that should be used for this page if the restarting option is not one of the standard options.
sMessageRID
Optional message resource identifier for the message that should be used for this page if the restarting option is not one of the standard options.

Return Values

None.

Remarks

The following code sample illustrates how to use this function.

'
'Show the restarting page, wait the default amount of time before
'checking for the server appliance to come back up
'and then check at the default interval.
'
Call SA_ServeRestartingPage("Restarting", "SA_DEFAULT", "SA_DEFAULT", _
                            SA_DEFAULT, SA_DEFAULT, SA_DEFAULT)

Requirements

Runs on | Versions | Defined in | Include | Link to
Server (ASP), VBScript | Microsoft Server Appliance Kit 3.0 |  | inc_framework.asp |

Note

  • This function is part of the complete Server Appliance Kit as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM), and some devices might not support this function.S


SA_TraceErrorOut

This function emits error tracing output using the current debug setting.

SA_TraceErrorOut(
ByVal sModule,
ByVal sMessage
)

Parameters

sModule
Name of the module emitting trace output.
sMessage
Message to be output.

Return Values

gc_ERROR_SUCCESS
The function completed successfully.

Remarks

The difference between this function and the SA_TraceOut function is that the error message will begin with the string ISSUE.

The following code sample illustrates how to use this function.

Call SA_TraceErrorOut("ots_addtablerow", "Invalid table object")

For more information about using this function to debug your Web UI add-in, see Debugging.

Requirements

Runs on | Versions | Defined in | Include | Link to
Server (ASP), VBScript | Microsoft Server Appliance Kit 3.0 |  | inc_framework.asp |

Note

  • This function is part of the complete Server Appliance Kit as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM), and some devices might not support this function.

Related Topics


SA_TraceOut

This function emits tracing output using the current debug setting.

SA_TraceOut(
ByVal sModule,
ByVal sMessage
)

Parameters

sModule
Name of the module emitting trace output.
sMessage
Message to be output.

Return Values

gc_ERROR_SUCCESS
The function completed successfully.

Remarks

The following code sample illustrates how to use this function.

Call SA_TraceOut("ots_addtablerow", "Invalid table object")

For more information about using this function to debug your Web UI add-in, see Debugging.

Requirements

Runs on | Versions | Defined in | Include | Link to
Server (ASP), VBScript | Microsoft Server Appliance Kit 3.0 |  | inc_framework.asp |

Note

  • This function is part of the complete Server Appliance Kit as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM), and some devices might not support this function.

Related Topics