Altiris Software Virtualization Solution 2.0

Exploring SVS Layers and Archives

Last update: 03/27/06

Author: Wm Jesse Foster

Purpose

This document is meant mainly as a reference guide. The first two sections describewhat you will find as you view a Software Virtualization Solution (SVS) layer both in the layer editor and in the hidden redirect areas.In the third section, you will learn how to open and explore a virtual software archive file (.VSA), theexported, compressed form of a layer.The fourth section of this document describes the registry keyscontaining the layer settings.

I. The Layer Editor

The Layer editor can be accessed through SVS Admin through two methods.Either double-click on an inactive layer, or select Edit Advanced Layer Properties from its right-click menu.

The layer editor is the easiest way to view the files and settings for each layer.The layer editor is organized into a tab view.Depending on the layer type, the tabs displayed will vary.A brief explanation of each tab follows.

Files Tab

The Files tab contains a list of all files in the Read-only and Writable sublayers.Each sublayer contains a System and a User-specific section.As the names imply, folders under System are system-wide and those under User specific are specific to the logged-on user.

In the User specific folder for the Read-only section, you will see the USER_TEMPLATE.When a layer is imported or a user logs on that has not logged on since the layer was imported, created, or last reset, a new directory will be created for that user under the User-specific section of the Writable sublayer and the USER_TEMPLATE will be copied in to this directory.

The files are listed in their variablized directory.The directories are variablized in order to improve portability between systems.To see where a variablized directory maps to on the current system, see the Variables tab.

Troubleshooting note:If a subdirectory is created under one of the variablized directories, and that subdirectory is the same as another variablized directory, the contents of the subdirectory will not be seen when the layer is active. For example, files stored under [ALLUSERSPROFILE]\Documents\ would not be available because it would map to the same location as [COMMONDOCUMENTS].

Registry Tab—Application Layers Only

The Registry tab contains a list of the registry keys stored in the Read-only and Writable sublayers.Each sublayer contains a HKEY_LOCAL_MACHINE and a HKEY_USERS section.

Under the HKEY_USERS key for the Read-only section, you will see the USER_TEMPLATE.When a layer is imported or a user logs on that has not logged on since the layer was imported, created, or last reset, a new key will be created for that user under the HKEY_USERS key of the Writable sublayer and the USER_TEMPLATE will be copied in to this key.

HKEY_CLASSES_ROOT is not listed because this is a fake key presented by the Windows System.It is a combination of the data in HKEY_USERS\<user>\Software\Classes and HKEY_LOCAL_MACHINE\Software\Classes

Variables Tab

The Variables tab contains lists the folder variables and their current value.User variables are user dependant.Their values will be based off the current logged on user.System variables are system dependant.Their values will be based off the computer this layer is currently imported on.

The file system is variablized so the layer is portable across users and systems.This can also allow some virtualized programs to run on a different version of Windows other then what they were created on.

Exclude Entries Tab

The Exclude Entries tab lists the file extensions and/or directories that will not be captured into the layer.If the program running from the layer modifies a file with an extension listed in Exclude Entries or the file is contained in a folder listed in Exclude Entries, the changes will not be saved in the layer.

For example, if the layer is a MS Word layer you will probably want to exclude .doc files.This way your document files will not get deleted when you reset the layer.

Delete Entries tab

The Delete Entries tab is a list of the files this layer will consider deleted.If a virtualized program deletes a file that exists in the base, rather than removing the file from the base file system, the file will be listed here instead.When the layer is active, files listed here will not be visible to the user even though they still remain in the base file system.

Troubleshooting note:If you know a file exists either in the base or another layer but is not visible from Windows, check the delete entries for your layers.

Data Capture Tab—Data Layers Only

The Data Capture tab contains a list of the file extensions and directories that will be captured into the layer.If a file with an extension listed in the Data Capture list, or the file is contained in a folder listed in the Data Capture list is created or modified, the file will be captured into this layer.

II. The Redirect Areas

The Redirect Areas are the areas of the file system and registry where the layers are stored.

File system redirect area

By default this is C:\fslrdr but can this can be changed.If this has been changed, the location of the file redirect area is defined in HKEY_LOCAL_MACHINE\SYSTEM\Altiris\FSL\DefaultFileRedrect.

Under this folder you will find directories containing the files for each sublayer currently imported on this computer.In order to know which layer’s files are in a certain directory, look at the value of FileRedirect in the keys under HKEY_LOCAL_MACHINE\SYSTEM\Altiris\FSL\.When you find a key where the value of FileRedirect equals the folder of interest, you can look at the data for Name to know which sublayer this is for.

In each sublayer folder you will find the following: variablized subdirectories, OSVER.ini, and sometimes DELLIST.txt.

The names of the subdirectories correspond to the directories listed on the Files tab in the layer editor.The files in these directories will also correspond to what you see listed in the on the Files tab in the layer editor.

OSVER.INI contains information about the operating system the layer was captured on.

DELLIST.TXT is a list of all the delete entries for this sublayer.

Registry redirect area

By default this is HKEY_LOCAL_MACHINE\SOFTWARE\fslrdr but can this can be changed.If this has been changed, the location of the file redirect area is defined in HKEY_LOCAL_MACHINE\SYSTEM\Altiris\FSL\DefaultRegRedrect

Under this key you will find subkeys containing the variablized registry entries for each sublayer currently imported on this computer.In order to know which layer’s registry entries are in a key, look at the value of RegRedirect in the keys under HKEY_LOCAL_MACHINE\SYSTEM\Altiris\FSL\.When you find a key where the value of RegRedirect equals the registry key of interest, you can look at the data for Name to know which sublayer this is for.HLM refers to HKEY_LOCAL_MACHINE and HU refers to HKEY_USERS.

III. The Virtual Software Archive File

The Virtual Software Archive (.VSA) is the file you get when you export a layer.This file is essentially all the files and settings for a layer in a single compressed file.This compressed file is in a ZIP format.If you rename the .VSA file and append a .ZIP extension, you can now open it with any utility able to open .ZIP files.

When you open the VSA folder with a utility that retains folder structure, you will see two folders and two files with a .LAYER extension.One folder contains the files and settings for the Read-only sublayer, the other for the Writable.To identify what folder corresponds with which sublayer, open the .LAYER file with the same name.The .LAYER files can be opened with a text editor and contain the following information:

1st line: Sublayer name

2nd line: Sublayer ID

3rd line: Sublayer type—Read-Only: 1 = Writable, 2= Data

In each sublayer folder you will find the following; variablized subdirectories, acl, fslreg1, fslreg2, OSVER.ini, and sometimes DELLIST.txt.

The names of the subdirectories correspond to the directories listed on the Files tab in the layer editor when the layer is imported.The files in these directories will also correspond to what you see listed in the on the Files tab in the layer editor.

Troubleshooting note: If you are importing a layer and it appears not all your files are being imported, check in here to see if they really exist in the archive.There is nothing “magical” here.If the files are not in the archive, they will not be in the layer after import.

The acl contains the ACL information for the files in this directory

The fslreg1 contains the registry entries that will be loaded in a new hive under HKEY_LOCAL_MACHINE\SYSTEM\Altiris\FSL\ when the layer is imported.Since the name of the hive is determined at the time the layer is imported, there is no way to know what the name will be until is imported.For more information about the information these registry vales contain, see section IV,The Layer Settings Registry Values.If you need to view the contents of this file without importing the layer, it can be loaded into the registry in Registry Editor.

The fslreg2 contains the registry entries that you can view on the Registry tab of the layer editor.When the layer is imported, the values in this file will be loaded in a new hive under HKEY_LOCAL_MACHINE\SOFTWARE\flsrdr\.Since the name of the hive is determined at the time the layer is imported, there is no way to know what the name will be until is imported. Thefslrdr is the registry redirect area.For more information about the redirect areas see section II,The Redirect Areas.If you need to view the contents of this file without importing the layer, it can be loaded into the registry in Registry Editor.

OSVER.ini contains information about the operating system the layer was captured on.

DELLIST.txt is a list of all the delete entries for this sublayer.

IV. The Layer SettingsRegistry Values

Global Settings

The values directly under HKEY_LOCAL_MACHINE\SYSTEM\Altiris\FSL contain the global settings that apply across all layers.The values in this key are listed below with a brief description.Values with a name all in CAPS are used for variablization in layers.

ALLUSERSPROFILE: Path to where the All Users directory is located.

CurrentMajVersion: Combined with CurrentMinVersion to indicate currently installed version of SVS.

CurrentMinVersion: Combined with CurrentMajVersion to indicate currently installed version of SVS.

DefaultFileRedirect: Location in the file system where the layers’ files are stored.

DefaultRedRedirect: Location in the registry where the layers’ registry entries are stored.

DEFAULTUSERPROFILE: Path to the Default User directory on this system.

PROFILESDIRECTORY: Path to the user profiles directory on this system.

ProgramIgnoreList: List of executables which the filter driver will ignore.

SYSTEMDRIVE: Path to the system drive for this system.

WINDIR: Path to the Windows directory on this system.

Layer Specific Settings

The values in the keys under HKEY_LOCAL_MACHINE\SYSTEM\Altiris\FSL contain the settings that are specific to the layer they belong to.The values in these keys are listed below with a brief description.Not all keys will contain all values.

ActivateTime: Hexadecimal representation of the time and date the layer was last activated.

Active: 0 = inactive and 1 = active.

ActiveOnStart: Whether or not the layer is set to start automatically; 0 = no and 1 = yes.

CreateTime: Hexadecimal representation of the time and date the layer was created.

Enabled: Deprecated entry.Not used.

FileRedirect: Location in the file system where this sublayer’s files are stored.

ID: Layer ID.This must be unique.

MajorVersion: Combined with MinorVersion to indicate layer format.

MinorVersion: Combined with MajorVersion to indicate layer format.

Name: Layer name.

PeerID: Layer ID of the peer sublayer

ReadOnly: 0 = ReadOnly sublayer, 1 = Read/Write sublayer.

Refresh Time: Hexadecimal representation of the time and date the layer was last reset.Only seen in type 0 sublayers.Will not be present if the layer has never been reset.

RegRedirect: Location in the registry where this sublayer’s registry items are stored.

ShouldDelete: 1 = Value. This will only be present when layer is marked for deletion. The layer will be lazily deleted.

Type: 0 = Read only sublayer,1 = Read/Write sublayer, and2 = Data layer.

OnEvent Values

If you have any values under either of the above areas that start with On, these are SVS OnEvent values.For more information about OnEvent Values, see Altiris Knowledgebase article 18394.