Introduction to File Server Resource Manager on Windows Server 2019
File Server Resource Manager (FSRM) is a role service for Windows Server 2019 that provides comprehensive management of file server storage. It enables administrators to set storage quotas on volumes and folders, create file screening policies to block prohibited file types, generate storage usage reports, and configure automatic remediation actions when thresholds are exceeded. FSRM is particularly valuable in multi-user file server environments where uncontrolled storage growth, prohibited file storage (music, videos, executables), and storage abuse are common operational challenges. This guide covers installing FSRM, configuring quota templates and policies, implementing file screens, and generating storage reports.
Installing File Server Resource Manager
Install FSRM using PowerShell or Server Manager:
Install-WindowsFeature -Name FS-Resource-Manager -IncludeManagementTools
After installation, open the FSRM console from Server Manager at Tools > File Server Resource Manager, or run fsrm.msc. Configure the SMTP notification settings before creating any quotas or screens, as most FSRM actions can be configured to send email alerts. In the console, right-click File Server Resource Manager (Local) and select Configure Options. Enter the SMTP server, default recipient email address, and sender address. Click Send Test E-mail to verify the configuration.
Creating Quota Templates
Quota templates define reusable quota configurations that can be applied to multiple folders. In the FSRM console, expand Quota Management and click Quota Templates. Click Create Quota Template in the Actions pane. Name the template (e.g., 10 GB User Home Folder Limit). Set the space limit to 10 GB and select Hard quota to enforce the limit (prevent users from exceeding it) or Soft quota to allow overages but generate alerts.
Configure notification thresholds. Add thresholds at 85%, 95%, and 100% of the limit. For each threshold, configure actions: send an email notification to the user and administrator, write an event to the event log, and optionally run a command or script. The email template supports variables: [Quota Path], [Quota Limit MB], [Quota Used MB], [Quota Used Percent], [Account Name], [Owner Name].
Create a quota template via PowerShell:
$thresholds = @(
New-FsrmQuotaThreshold -Percentage 85 -Action (New-FsrmAction -Type Email -MailTo "[Admin Email]" -Subject "Quota Warning: [Quota Path]" -Body "User [Account Name] is at [Quota Used Percent]% of the [Quota Limit MB] MB quota on [Quota Path].")
New-FsrmQuotaThreshold -Percentage 95 -Action (New-FsrmAction -Type Email -MailTo "[Admin Email],[Source Io Owner Email]" -Subject "Quota Critical: [Quota Path]" -Body "Quota almost full.")
New-FsrmQuotaThreshold -Percentage 100 -Action (New-FsrmAction -Type Eventlog -EventType Warning -Body "Quota exceeded on [Quota Path] by [Account Name].")
)
New-FsrmQuotaTemplate -Name "10 GB User Home Folder" -Size 10GB -SoftLimit $false -Threshold $thresholds
Applying Quotas to Folders
Apply a quota to an existing folder using the FSRM console. Expand Quota Management > Quotas. Click Create Quota in the Actions pane. Browse to the folder path (e.g., D:UserHomes). Select Derive properties from this quota template and choose the 10 GB User Home Folder template. Click Create.
For user home directories where each user’s subfolder should have a separate quota automatically applied when new folders are created, use Auto Apply Quota. Click Create Quota, select the parent folder (D:UserHomes), check Apply template to existing and new subfolders, select the template, and click Create. FSRM creates individual quotas for each existing subfolder and automatically creates new quotas when new subfolders are created.
Manage quotas via PowerShell:
New-FsrmQuota -Path "D:UserHomes" -Template "10 GB User Home Folder" -Disabled $false
# Create auto-apply quota for all existing and new subfolders
New-FsrmAutoQuota -Path "D:UserHomes" -Template "10 GB User Home Folder" -Disabled $false
Configuring File Screen Templates
File screens prevent users from saving prohibited file types to the file server. FSRM ships with built-in file groups for common file categories: Audio and Video Files, Executable Files, Image Files, Office Files, System Files, and Temporary Files. Create file screen templates to block unwanted file categories.
In the FSRM console, navigate to File Screening Management > File Screen Templates. Click Create File Screen Template. Name it (e.g., Block Audio and Video). Select Active screening to actively block the listed file types (or Passive screening to log-only without blocking). Add the Audio and Video Files file group to the blocked list.
Configure a threshold action to email the administrator and log the event when a block occurs. The email template supports [File Screen Path], [Violated File Group], [Source File Path], [Source File Owner], [Source Io Owner] variables, making it easy to identify who attempted to save a blocked file type.
New-FsrmFileScreenTemplate -Name "Block Audio Video Executables" -Active $true -IncludeGroup @("Audio and Video Files", "Executable Files") -Notification (New-FsrmAction -Type Email -MailTo "[Admin Email]" -Subject "File Screen Violation on [File Screen Path]" -Body "[Source Io Owner] attempted to save [Source File Path] which is in the blocked file group [Violated File Group].")
Apply the file screen to a folder:
New-FsrmFileScreen -Path "D:SharesGeneral" -Template "Block Audio Video Executables"
Creating File Screen Exceptions
File screen exceptions allow specific subfolders within a screened path to bypass the screen rules. For example, if D:SharesGeneral has a screen blocking executables, but D:SharesGeneralSoftware is a legitimate software depot, create an exception:
New-FsrmFileScreenException -Path "D:SharesGeneralSoftware" -IncludeGroup @("Executable Files")
The exception allows the listed file groups to be saved in the excepted path even though the parent folder has a screen blocking those groups.
Generating Storage Reports
FSRM can generate on-demand or scheduled storage reports covering quota usage, file screening activity, large files, files by owner, duplicate files, and least recently accessed files. In the FSRM console, navigate to Storage Reports Management. Click Schedule a New Report Task or Generate Reports Now.
Select the report types to include and the scope (volumes or specific folders). Configure the output format (HTML, CSV, XML, DHTML, Text). Schedule recurring reports to run weekly or monthly and email the results to the storage team.
Generate a report on demand via PowerShell:
New-FsrmStorageReport -Name "Weekly Large Files Report" -Namespace @("D:Shares") -ReportType @("LargeFiles") -LargeFileMinimum 104857600 -Schedule (New-FsrmScheduledTask -Weekly -DaysOfWeek @("Sunday") -Time "06:00") -MailTo "[email protected]" -Format @("HTML", "CSV")
The Large Files report lists all files exceeding the specified size (100 MB in the example), sorted by size descending. The Files by Owner report shows how much space each user is consuming across the server, which is useful for identifying storage hogs and enforcing storage policies.