Hi guys, I hope you’re having a good day. I have a...
# citrix-vad
a
Hi guys, I hope you’re having a good day. I have a customer who is running FSLogix profile containers, and they are running out of disk space. Increasing the storage is no longer an option, so they need to create a new file share. This is where I come in. I need to point FSLogix to the new share and ensure that any new user profiles are created there. At the same time, the existing environment must continue to function as it is. Is it possible to configure FSLogix to use two shares simultaneously and gradually migrate users to the new storage over time? how do you guys do this usually??
👀 1
j
use ObjectSpecific settings for VHDLocations Registry value
☝️ 3
So add all "new" users to an AD security group, and configure the ObjectSpecific settings in the Registry so all members of this group get a different "VHDLocations" value that points to the new share
When you want to migrate users from the "old" to the "new" file share, just copy their profile to the new share and add them to the AD group you configured
a
Yes, FSLogix supports this natively via the VHDLocations (or CCDLocations for Cloud Cache) registry key - it accepts multiple UNC paths separated by a pipe character |. HKLM\SOFTWARE\FSLogix\Profiles VHDLocations = \\old-server\profiles|\\new-server\profiles FSLogix searches the paths left to right - if a profile VHD is found on the first share, it mounts it there. If not found, it falls through to the next path and creates the profile there. So the migration pattern is straightforward: 1. Keep the old share first in the list - existing users continue using their profiles without any disruption. 2. Add the new share second - new users (no existing VHD) get their profiles created on the new share automatically. 3. Over time, migrate existing VHDs from old to new (e.g. robocopy during off-hours), then swap the order or remove the old path once it’s empty. A few things to watch out for: • Ensure both shares have the same NTFS permissions (FSLogix standard: Creator Owner Full Control, Admins Full Control, Users Read/List). • If you use Cloud Cache (CCDLocations), the behavior differs - it replicates across all locations simultaneously, which is a heavier approach and probably overkill here. • Test with a pilot user on the new share before flipping it for everyone. This is the standard approach and works cleanly across FSLogix 2201+.
a
Thanks guys. James, I need to get the SID of the newly created group and then create this reg key right? So this registry key will not affect the prod at all, it will only apply to users who are added to the group? what do you do once everyone are migrated, change the VHDLocations to the new share?
Arthur, trying to understand this.. I have VHDLocations = \\old-server\profiles today and I should add |\\new-server\profiles at the end right? But the \\old-server\profiles is still available, so how is FSLogix going to create a new profile on the new-server\profiles if it checks the old-servers\profiles and creates the new profile there since its available?
a
Put the new share first: \\new-server\profiles|\\old-server\profiles • Existing users → VHD not on new-server → falls through → found on old-server • New users → not found anywhere → created on new-server
a
Nice Arthur, the customer has thousands of users so I have to make sure that it actually fails through to the old-server if the first part doesn't work, otherwise I will get an angry call 😅
j
Anyone not in the AD group will not touch the second location
Add multiple locations to the value if you want it to fail through
a
great! so I got not only 1 but two nice methods to do this 😄 thank you guys!
very thankful
according to the documentation it should be a ; and not a | is the documentation correct or your suggestions?https://learn.microsoft.com/en-us/fslogix/concepts-configuration-examples?utm_source=chatgpt.com
my configuration says \user\Citrix\Profiles\%username% , do I need to include %username%? Example, \\new-server\user\Citrix\Profiles\%username%|\\old-server\user\Citrix\Profiles\%username%
j
I can't actually remember sorry
No you don't need the variable
a
Artion: my bad , you are right: semi-colon (
;
)
a
Thanks James, Arthur. 👍
👍 1