FSLogixの設定方法には、「GPOから設定する方法」と「レジストリから設定する方法」の2つが存在します。レジストリの方が簡単かつ素早く設定が行えます。
今回は、基本設定と利便性の高い設定についてご紹介したいと思います。
※FSLogixは、常に最新バージョンをお使いください。
ユーザーがサインインしたタイミングで自身のプロファイルがマウントされるので、どのセッションホストにサインインしても、同じ環境で作業が出来ます。
[フォルダ名][プロファイル名][拡張子]の全てが一致するものが自身のプロファイルとなる。
存在するプロファイルが無い場合は、新規作成となる。
フォルダ名[%sid%_%username%]、プロファイル名[Profile_%username%][VHD]で新規作成される(デフォルト値)
※新規作成する名前の変更は、フォルダ名[SIDDirNamePattern]、プロファイル名[VHDNamePattern]で行えます。
※※フォルダ名を変数では無く固有名詞にした場合は、最初の一人目だけがプロファイルを作成でき、利用可能となる。二人目以降は、自身のプロファイルが作成できず常にデフォルトプロファイルで起動する。
上記に加え、プロファイル名を変数では無く固有名詞にした場合は、最初の一人目だけがプロファイルを作成でき、利用可能となる。二人目以降は、自身のプロファイルが作成できず常にデフォルトプロファイルで起動する。
[ProfileType:2](ReadOnly)にすると、全ユーザーが1つの固定プロファイルを利用します。
結論、固有名詞はやめましょう!
VHDLocationにより、複数パスが設定された時には、優先順位が高いパスから検索していく。
自信のプロファイルを検索する条件は[%sid%_%username%][Profile_%username%](デフォルト値)
※検索条件の変更は、フォルダ名[SIDDirNameMatch]、プロファイル名[VHDNameMatch]で行えます。
ファイルサーバーにて、中身が空っぽの”share”フォルダを共有した環境で
VHDLocation=”\\10.0.0.4\share\a\b\c\”%username%”と設定した場合
[share>a>b>c>user10>user10.VHDX]が作成される。
a,b,c というフォルダと、変数%username%フォルダを自動で作成してくれます。
【プロファイルサイズについて】
セッションホストA、容量を[30GB]で設定。セッションホストB、容量を[50GB]で設定。
A→Bの順で接続した場合、[30GB]でプロファイルが作成され、Bに接続したタイミングで[50GB]に拡張される。さらに、Aに再接続しても[50GB]のまま
B→Aの順で接続した場合、[50GB]でプロファイルが作成され、Aに接続後も[50GB]のまま
※容量が縮小される事は無い。
FSLogixの基本機能は、こちらをご覧下さい。
「ユーザープロファイル問題を解決する「FSLogix」とは?」
GPOを利用して、Cドライブへのアクセスを禁止にした状態でもFSLogixは利用可能です!
[ユーザー構成]ー[管理用テンプレート]ー[Windows コンポーネント]ー[エクスプローラー]
グループポリシーの適用タイミングについて
①コンピューター起動直後に適用
ーGPO[コンピューターの構成]:Windows OS 起動時
ーGPO[ユーザーの構成]:ユーザーがコンピューターにログオンした時
■クライアントOS:非同期モード=ポリシーの適用が完了する前にシステム起動を実施する(デスクトップ表示に時間がかからない)
■サーバーOS:同期モード=ポリシーの適用が完了するまでシステム起動を実施しない(デスクトップ表示に時間がかかる)
②コンピューター起動後に定期的(90-120分)に適用
③管理者による強制的な適用 [gpupdate.exe]
ログオン時の処理順序について
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Winlogon\Notifications\
Configurations\Default\Logon
[frxsvc,SessionEnv,Profiles,Dot3svc,Wlansvc,GPClient,TermSrv,AUInstallAgent,*]
①frxsvd:FSLogixサービス ※FSLogixが一番最初に処理される
②SessionEnv:リモートデスクトップサービスとセッション管理
③Profiles:ユーザープロファイル
④dot3svc:IEEE 802.1X認証
⑤Wlansvc:WLANサービス
⑥GPClient:グループポリシー
⑦TermService:リモート コンピューターに対話的に接続させる
⑧AUInstallAgent:?
【よくある処理順】
①FSLogix
②グループポリシー
③フォルダリダイレクト(初回のみ)
④ログオンスクリプト
それでは、やってみましょ~
マスターイメージに対して、FSLogixをダウンロード&インストールします。
FSLogixAppsJavaRuleEditorSetup.exe = Java Redirection
FSLogixAppsRuleEditorSetup.exe = App Masking
FSLogixAppsSetup.exe = Profile Container / Office 365 Container / Cloud Cache
【GPOから設定する方法】
[fslogix.adml]を「C:\Windows\PolicyDefinitions\en-US」にコピー
[fslogix.admx]を「C:\Windows\PolicyDefinitions」にコピー
ファイル名を指定して実行[gpedit.msc]
【Profile Containers】の設定 ※推奨
[Enabled][Delete local profile when FSLogix Profile should apply]を有効化
[VHD Location]にプロファイルの保存先を記載
例:優先度1=ファイルサーバー(Active)、優先度2=ファイルサーバー(Passive)
\\10.0.0.4\Share01;\\10.0.0.4\Share02;
【Cloud Cache】の設定
[Enabled][Delete local profile when FSLogix Profile should apply]を有効化
[Clear local cache on logoff]を有効化
[Cloud Cache Locations]にプロファイルの保存先を記載
例:優先度1=ファイルサーバー(Active)、優先度2=Page Blob(Active)
type=smb,connectionString=\\10.0.0.4\ProCon;type=azure,connectionString=
“DefaultEndpointsProtocol=https;AccountName=userpro;AccountKey=R5iA~YgkQ==;
EndpointSuffix=core.windows.net”;
【気になるところ】
・Dynamic VHD(X) allocation:Enable or Disable ※デフォルト有効
・Size In MBs:500MB~1TB ※Quota(Default 30GB) 作成後でも拡張可能
・Virtual Disk Type:VHDX
・SID Directory Name Pattern String:%username%%sid%
・VHDX Sector Size:4KB
・Remove Orphaned OST Files On Logoff:Enable
・Prevent Logon With Failure:Enable
【レジストリから設定する方法】
Profile Container=”HKLM\Software\FSLogix\Profiles”
Office Container=”HKLM\Software\Policies\FSLogix\ODFC”
reg add “HKLM\Software\FSLogix\Profiles” /v Enabled /t REG_DWORD /d 1 /f
※Profile Containerの有効化
reg add “HKLM\Software\FSLogix\Profiles” /v VHDLocations /t REG_SZ /d “\\10.0.0.5\share01;\\10.0.0.6\share02” /f
※ファイルサーバーの優先順位の指定
reg add “HKLM\Software\FSLogix\Profiles” /v DeleteLocalProfileWhenVHDShouldApply /t REG_DWORD /d 1 /f
※ローカルプロファイルが存在していた場合は削除する
reg add “HKLM\Software\FSLogix\Profiles” /v IsDynamic /t REG_DWORD /d 1 /f
※シンプロビジョニング。デフォルトで有効
reg add “HKLM\Software\FSLogix\Profiles” /v SizeInMBs /t REG_DWORD /d 30000 /f
※プロファイルサイズ。VHD作成後も拡張が可能(ver2.9.7838.44263)
reg add “HKLM\Software\FSLogix\Profiles” /v VHDXSectorSize /t REG_DWORD /d 4096 /f
※セクターサイズ(ブロックサイズ)。デフォルト512B
reg add “HKLM\Software\FSLogix\Profiles” /v VolumeType /t REG_SZ /d “VHDX” /f
※デフォルトVHD
reg add “HKLM\Software\FSLogix\Profiles” /v PreventLoginWithFailure /t REG_DWORD /d 1 /f
※プロファイルのマウントに失敗した際はサインインを促す
reg add “HKLM\Software\FSLogix\Profiles” /v PreventLoginWithTempProfile /t REG_DWORD /d 1 /f
※テンポラリープロファイルをマウントした際はサインインを促す
reg add “HKLM\Software\FSLogix\Profiles” /v FlipFlopProfileDirectoryName /t REG_DWORD /d 1 /f
※プロファイルを格納するフォルダ名をユーザー名+SIDの順番に入れ替える
reg add “HKLM\Software\FSLogix\Profiles” /v SIDDirNamePattern /t REG_SZ /d “%sid%_%username%” /f
※プロファイルを格納するフォルダ名を変更する。”FlipFlop”有効時には無効となる
reg add “HKLM\Software\FSLogix\Profiles” /v SIDDirNameMatch /t REG_SZ /d “%sid%_%username%” /f
※プロファイルフォルダ名を検索する際の文字列を指定する。上記と一致させる必要あり
※優先度2のボリュームにフォルダを事前作成してもVHDを作成してくれない。
reg add “HKLM\Software\FSLogix\Profiles” /v VHDNamePattern /t REG_SZ /d “Profile*” /f
※プロファイルのファイル名を変更する。
reg add “HKLM\Software\FSLogix\Profiles” /v VHDNameMatch /t REG_SZ /d “Profile_%username%” /f
※プロファイルのファイル名を検索する際の文字列を指定する。上記と一致させる必要あり
reg add “HKLM\Software\FSLogix\Profiles” /v ProfileType /t REG_DWORD /d 2 /f
※一つのプロファイルを複数のセッションホストでマウントさせたい場合 ←お勧めしません
[0]先手=書き込み/後手=プロファイルマウント不可(デフォルトプロファイルを利用)
[1]先手=書き込み/後手=プロファイルマウント不可(デフォルトプロファイルを利用)
[2]先手=読み取り/後手=読み取り ※固定プロファイル化
[3]先手=書き込み/後手=読み取り
reg add “HKLM\Software\FSLogix\Profiles” /v CCDLocations /t REG_SZ /d
“type=smb,connectionString=\\10.0.0.4\ProCon;type=azure,connectionString=”Defa
ultEndpointsProtocol=https;AccountName=userpro;AccountKey=R5iA~YgkQ==;Endpo
intSuffix=core.windows.net”; /f
※Cloud Chach有効化
reg add “HKLM\Software\Policies\FSLogix\ODFC” /v IncludeOfficeActivation /t REG_DWORD /d 1 /f
※M365認証情報を保持する。Profile Container設定時は不要。
それでは、確認してみましょう!
ユーザーがセッションホストにサインインするタイミングでファイルサーバーにプロファイルが自動で作成されます。※すでにプロファイルが存在する場合は作成されません。
ファイルサーバーを確認すると、ユーザープロファイル(VHD)が作成されています。
Page Blobの場合
セッションホストを確認すると、ユーザープロファイル(VHD)がマウントされています。
ユーザー自身で使用量を確認する方法 ※ユーザー権限で実行可能
[C:\Program Files\FSLogix\Apps\frxtray.exe]を実行
【アクセス権の設定方法】
ユーザープロファイルをファイルサーバーに置いた際に、他ユーザーのプロファイルが見えてはいけません。そんな時には、下記のように共有フォルダを設定する事で、他ユーザーのプロファイルを隠すことができます。
[user21]には、自身のプロファイルしか表示されていません。
【Blobアクセスキーの隠蔽方法】
保存先にBlobを指定した場合、”CCDLocations”にアクセスキーをそのまま記載するのですが、セキュリティ的に問題があるので隠蔽します。
C:\Program Files\FSLogix\Apps\frx.exe add-secure-key -key blobkey -value Rl~fg==
※”blobkey”(表示名)という名称で、アクセスキーを登録します。
Cloud Chach [CCDLocations]
type=azure,connectionString=”DefaultEndpointsProtocol=https;AccountName=
userpro;AccountKey=|fslogix/blobkey|;EndpointSuffix=core.windows.net”;
※”AccountKey”部分を、登録した名称に置き換えます。
【ユーザー/グループ単位で設定を変更する方法】
通常、FSLogixの設定を行うと”ユーザー”ではなく”コンピュータ”に対して有効となります。
例えば、ユーザー(グループ)SID配下に”VHDLocations”を記載することで保存先のファイルサーバーをユーザー単位、グループ単位でわける事ができます。もちろん、プロファイル容量の変更も可能です。
設定優先度:①ユーザー設定 ②グループ設定 ③コンピュータ設定
reg add “HKLM\Software\FSLogix\Profiles\ObjectSpecific\<SID>” /v VHDLocations /t REG_SZ /d “\\10.0.0.5\share” /f
※GPOでの設定はできません。
SIDは下記コマンドで取得できます。
$DomainName = “localad.com“
$Username = “AVD Users“ ←ユーザー名でもグループ名でもOK
$UserObject = New-Object System.Security.Principal.NTAccount($DomainName,$Username)
$UserObject.Translate([System.Security.Principal.SecurityIdentifier]).Value
【FSLogixコマンドラインツール】
ツールの場所:C:\Program Files\FSLogix\Apps
frx.exe:VHDXの管理機能を提供。VHDXの新規作成/編集/複製。設定情報の入出力など
Application Maskingへのアプリ追加/削除/一覧表示など
[プロファイル設定情報の保存]
C:\Program Files\FSLogix\Apps>frx export-profilecfg -filename “c:\Profile_Config.txt”
C:\Program Files\FSLogix\Apps>frx import-profilecfg -filename “c:\Profile_Config.txt“
ローカルプロファイルからFSLogixで利用できる「VHDX」を作成する方法
※変換元となるPCにFSLogixをインストールする必要は無く、[frx.exe]だけコピーすればよい
frx.exe copy-profile -filename “C:\Profile_user10.vhd” -username “localad.com\user10” -profile-path “C:\Users\user10” -dynamic 1
※-profile-pathで変換元のローカルプロファイルを指定
※当然ですが、変換対象のユーザーアカウントで実行してはいけません。
frxcontext.exe:ユーザーのVHDXをマウントし、中身に対して読み書きが可能
frxcontext.exe –install ←メニューを追加
frxcontext.exe \\10.0.0.5\share01\user20\Profile_user20.vhd ←VHDXをマウント
マウントポイント[C:\Users\tushigami.WVD\AppData\Local\Temp\FrxEditMount4797]