An Example Config for Excludes and Data Layers
Confused by all this talk of "Excludes" and "Data Layers"? Scott Jones, SVS PM and avid user, shows us how he organizes his data in the real world using SVS and Data Layers.
Deciding what excludes and data layers to use with SVS is one of the keys to getting it to work the way you need it to. Jared Payne has provided some great information and tools around this topic. As one example of a working production configuration, I wanted to share mine. It's very simple and has served me well since I first installed pre-alpha versions of SVS almost a year ago.
First, I have a data layer called "My Documents". The capture criteria for this "My Documents" data layer is:
[PERSONAL] (including subdirectories)
Note: You might also include the shared version of this directory, [COMMONDOCUMENTS], which is by default located under C:\Documents and Settings\All Users. However, in my personal experience those shared folders are almost never used.
A. This is what the Data Capture criteria looks like in SVS Admin for the "My Documents" data layer.
Populate Your Data Layers With Pre-Existing Data From the Base -- When I first created the "My Documents" layer, I moved the content of that directory from my base into the layer. This can be done with a copy/paste into the Advanced Layer Properties Editor in SVS Admin (then go back and delete the files from the base in Windows Explorer) or by moving the files directly to the redirect area for the data layer (if you know how to do that -- may be a future tip!). This got me a step closer to the whole virtualization ideal by cleaning out my base and getting everything neat and tidy in a layer. If I had not done this, files would not have been moved into the layer until they were accessed, leaving a mix of stuff in "My Documents," some in the base and some in the data layer. Also, in reality what happens when a base file is accessed that needs to go into a data layer is a copy, not a move, so I would have actually ended up with older versions of the files (obscured by the newer versions when the data layer was active) hanging out in my base forever.
Some Files and Directories You May Want to Duplicate in the Base -- The only things I left under "My Documents" in the base were the default stuff put there by the Windows installation (My Music/Pictures/Video and the .ini files and shortcuts in those) and two other directories I created -- "Download" and "Upload". My Music/Pictures/Video are needed because the variables for those directories will not resolve correctly if the directories do not exist in the base.
B. This is what "My Documents" looks like on my machine when the "My Documents" data layer is inactive.
I always use the "Download" and "Upload" directories for applications that require me to configure default file transfer locations (like IM and PTP clients). By having those directories duplicated in the base, I don't risk those apps complaining about those directories not being available just because I deactivated the "My Documents" data layer for some reason. Sure, if I write something from an app to one of those directories while the data layer is inactive, the file will get written to the base. But that's not the normal mode of operation. I just want to be able to deactivate my data layer while troubleshooting or whatever and not have AOL Instant Messenger throw up an error message.
C. And this is what "My Documents" looks like when the data layer is active. As you can see, over 17 GB of "stuff"!
I do have some other separate data layers that really aren't necessary to keep separate. I have one for my Outlook (corporate) mailbox, one for my Thunderbird (personal) mailbox and one for my Firefox profile (the wiki tells you what directories to use for these). These prevent data loss from resetting any of those apps. But all of the directories for those things could easily be added to one long data capture criteria list in a single data layer.
Ok, so that's it for my data layers. For excludes, there are a handful of app-specifics ones (covered on the wiki), but I also put an exclude for "[SYSTEMDRIVE]\TEMP" on every layer I have. Jared gives you an easy way to do this in his article. This assures me that at any time, from any app, virtualized or not, if I intentionally want to save something to the base, I just need to put it in C:\Temp. Best example I can think of for the usefulness of this is when I am getting ready to capture a new application install. My master software repository is under \My Documents\Software Store, which is of course part of my "My Documents" data layer. Since I have to deactivate all layers to do a capture, that won't be visible to me. So I copy the installer over to C:\Temp, deactivate my layers, and get on with my capture.
Part of the reason this approach works for me is that I am a Virgo, so by nature very organized. All data goes into My Documents. In a production environment, where people are likely to save stuff Lord only knows where, you may need to go to file type-based data layers and excludes. But for me, this works, and I'm hoping you may find some value from this example.
- Login or register to post comments
- 93004 reads
- Printer-friendly version


















Layer Population & Backup
Scott,
Thanks for your excellent article and super ideas.
1. I was unable to cut/paste folders from original My Documents if those folders had subfolders. SVS editor froze completely when it hit a subfolder. Is that a bug? I have so many subfolders that my workaround was to do a WinXP search in C:\fslrdr for a folder in My Documents that DID paste properly. That yielded the humongously long path and filename: c:\fslrdr\1F\S-1-5-21-1606980848-484763869-725345543-1003. By getting to the 1F subdirectory, the S-1-5-etc. subfolder was near the bottom and easy to spot.
Next, I used Microsoft SyncToy (free download) to copy everything in My Documents to that long path and filename. Per your suggestion, I deleted everything from My Documents except the ones you list.
2. To back up, I make sure my My Documents layer is activated, then use SyncToy to "echo" (one of its options) everything to a USB archival drive.
Despite all this, I continue to have a problem consistently hitting the latest version of Quicken data and Outlook .pst files. Any suggestions?
Thanks!
George
More on data files...
Regarding finding the "right" data files, I'd love to look at your machine to make sure things are working as designed. There's probably a logical explanation; there usually is.
But generally, if only in the interest of conserving disk space, make sure there's only one copy of everything. If you have your data in a data layer, make sure there's not another, perhaps older version in an app layer for some reason (may have been copied there before the data layer was created, for example), or in the base.
I do any file editing in Windows Explorer, right in the redirect area (I see there's no need for a separate Juice tip; you figured out how to do that yourself!). The new tools in Wise Package Studio 7 are way better than SVS Admin. We're figuring out the best way to pass on the basic functionality of those to non-Wise users w/o you having to wait for the next major release of SVS. Stay tuned.
Consolidated Data Layer
I finally figured out that the only reason I had multiple data layers was to make my layer list in Trinket look longer and more impressive in demos. But a couple weeks ago I consolidated everything into a single data layer called "My Data Layer," and I'm pretty convinced that's the way to go.
You can see a screen shot of my current capture criteria here. You'll notice I added a couple locations that get my MS Office custom dictionary ([APPDATA]\Microsoft\Proof) and Outlook signatures ([APPDATA\Microsoft\Signatures).
I had a customer request a CLI option to modify data layer capture criteria. They want to give every PC just one data layer and to modify it as needed "live" in production. They might be on to something! Maybe the approach we should be taking is to create a default "My Data layer" on SVS installation and to dynamically modify the capture criteria when needed, as app layers are added... ?
A running Data Layer
That is a great idea have the data layer built from the get go, that could give users a defined place for all their data to be placed right off the bat. I also think that it is a good practice to continue to use Excludegen and Excludecopy in conjenction with the Golbal Excludes and data layers, user data must reamin paramount.
Thanks
Tom Frona
State of Ohio
Dept. of Taxation
Firefox Profiles in Data Layers
We just identified a necessary tweak to data layer definition for Firefox profiles. Rather than using [LOCALAPPDATA]\Mozilla, use the more explicit location [LOCALAPPDATA]\Mozilla\Firefox\Profiles.
If you put all of [LOCALAPPDATA]\Mozilla in your data layer, you will get the Firefox update directory also. The result (depending what version you are going from/to) will be that Firefox updates get written to the base. This yields all sorts of odd behavior. We're writing a KB article on this, with cleanup info if you've already had this happen.
Scott Jones
Product Manager
Altiris, Inc.
Now Part of Symantec
Nyah Nyah Nyah
...I'm using Global Excludes now in the Beta 2 RC, and they work great!! :)
No more manually entering default excludes on every new layer, or using ExcludeCopy... !!
Woohoo!!!!
Editor's Note: Yes, sometimes Scott is a real butthead. This is his tactless way of letting you know that SVS 2.1 Beta 2 is on schedule for mid-March.
I like him being a
I like him being a butthead. :) Since this gives me the chance to avoid extra work for me by just waiting for it. And since Scott never mentioned the date the leak is by the editor, right? Anyway thanks for that great feature. I hope the beta 2 will be free for personal use too.