Sources
Sources are the core concept in FileBrowser - each source represents a file system location users can access.
Indexing on each source provides folder sizes used by the UI and by indexed-size storage quotas (v2.1.0+). Sources with indexing disabled only support tracked usage quotas (v2.1.0+). See Storage quotas (v2.1.0+) and Indexing.
v2.0.0 source config
Deprecated source options (indexingIntervalMinutes, conditionals wrapper, old rule field names) were removed in v2.0.0. See Advanced source configuration for current rule syntax.
Setting up authentication? New users only receive sources with defaultEnabled: true. When enabling password signup, OIDC, LDAP, JWT, or proxy auth, configure defaultEnabled on your sources at the same time. See defaultEnabled below.
A source should not be a root directory or include “/var” directory on linux.
Basic Configuration
Single Source
When only one source is configured, source paths will be available at http://your-server/files/path/to/file.
Multiple Sources
Common Patterns
Personal user directories
When createUserDir is enabled, each user gets a folder under the source below defaultUserScope, named after their username.
Shared + Personal
Source Configuration Options
path
File system path. Can be relative or absolute. Required.
name
Display name for the source. Optional. If not set, uses the base name of the path.
defaultEnabled
When true, this source is granted to all users:
- On user creation (password signup, admin create, and auto-create via OIDC / LDAP / JWT / proxy).
- On every server startup (v2.0.1+): any user missing this source gets it merged into their scopes. Existing scope paths for sources the user already has are preserved.
Default: false. Use false for sources that should only be assigned manually.
v2.0.1+: Before v2.0.1, startup only seeded defaultEnabled sources for users with empty scopes. Partial-scope users (common after migration or after adding a second source) did not receive new default-enabled sources until you assigned them by hand. From v2.0.1 onward, missing defaultEnabled sources are always merged on startup.
defaultUserScope
This is the directory path that a user is given access to by default. This is also the parent directory path used if you enable createUserDir.
For example if the source is /, and you configure defaultUserScope: /users and also enable createUserDir, then a user named graham will have a scope directory created at /users/graham and that will be their root directory.
Defaults to root of index /. Should match folders under path. Used when createUserDir is false.
createUserDir
Create a user directory for each user under defaultUserScope + /+ username. Default: false.
This creates /home/users/username for each user. For example, a user graham would get a folder created at /home/users/graham and that would be their user scope. They wouldn’t be able to access /home/users/ folder.
denyByDefault
Deny access unless an “allow” access rule was specifically created. Default: false.
See Access Rules for more information.
private
Designate source as private — currently just means no sharing permitted. Default: false.
disabled
Disable the source. Useful so you don’t need to remove it from the config file. Default: false.
useLogicalSize
Calculate sizes based on logical size instead of disk utilization (du -sh). Folders will be 0 bytes when empty. Default: false.
rules
List of item rules to apply to specific paths. See Advanced Source Configuration for detailed information on rule options.
| |
Note on ignoreSymlinks: FileBrowser Quantum does not follow symbolic links during indexing by default. The ignoreSymlinks option allows you to exclude symlinks from the index entirely. See Symbolic Links documentation for more information.