Jump to content
Welcome to our new Citrix community!
  • 0

Question about layering priorities, user layer vs what is in the image

Mike Gray1709151604


I have an app in my image that I have put there with an app layer.  A user logs in and removes/deletes the app and/or files to make the app run.  Will that app always be broken for that user?


I install chrome version 70 in my layered image.  A user with a user layer, logs in and updates chrome to version 71.  Time passes, and I update chrome in my layered image to version 72.  What version does the user have?  


If the user layer always wins is there a way to fix that users layer for an app without completely deleting the user layer?  I am having some issues with apps updating into the user layer vs the updates I install in the app layer.  

Link to comment

2 answers to this question

Recommended Posts

I'm assuming that your entire question involves User Layers.  Things are different in EL=Apps Only or EL=None.


User Layer always wins.  That's in fact the point: User Layer persists all local software installs - or uninstalls - in a way that profile managers just can't.  We recommend keeping your users from doing this sort of upgrade as much as possible, for this specific reason.  To answer your concrete example, the user will be running Chrome 71.  There's some possibility of odd conflicts, but I'll touch on those in a minute.


And if the user uninstalls something, the User Layer will persist that uninstallation, because it remembers deletions as well as it remembers file creations.


The complication (which doesn't really apply to Chrome, but might to other software) is if you have an update that touches only some of the program files.  So you deliver version X in the published image, and the user upgrades to X+1 which only has to update half of the files.  Then you update the published image with X+2 which updates all the files.  What you see in the user's machine then is half X+1 (the files modified in the user desktop), half X+2 (the unmodified files now updated in the published image).  Your software may or may not work with such a hybrid environment, but my confidence is not high.


We don't today have a customer-consumable method for cleaning up a User Layer.  I mean, you can always attach the VHD to another machine and just delete files, but that's a trial-and-error kind of approach, and very manual.  If you want to do that, just use Disk Manager from a non-layered machine and you'll find your User Layer is a plain NTFS filesystem you can browse through and do whatever you want.


But we do have something coming, that we're building the infrastructure for now.  It will eventually be a mechanism where you construct a file that identifies layers whose data you want to clean out of the User Layer.  So you might reference some specific revision of your Chrome Layer.  You put that file in the User Layer folder on the file server, and when Ulayer.exe attaches the user layer VHD, it will read that file, grab the Chrome layer, use it as a template for scrubbing the User Layer, and eventually allow your user login to complete after its done its job.

Link to comment


This topic is now archived and is closed to further replies.

  • Create New...