File Share (SMB) Symbol Server

Running a SMB Symbol Server is simply a matter of creating a file share and granting users access to that file share.

Creating a SMB File Share Symbol Store

Use Windows Explorer or Computer Management to create the File Share and assign security. These steps assume that the symbols will be located in D:\SymStore\Symbols. Complete these steps using Windows Explorer:

  1. Open Windows Explorer.

  2. Right-click D:\SymStore\Symbols and choose Properties.

  3. Click on the Sharing tab.

  4. Click on Advanced Sharing… .

  5. Check Share this folder.

  6. Click on Permissions.

  7. Remove the Everyone group.

  8. Using Add…, add the Users/Security Groups requiring access.

  9. For each User/Security Group added, grant Read or Read/Change access.

  10. Click on OK (Permissions dialog).

  11. Click on OK (Advanced Sharing dialog).

  12. Press Close (Properties dialog).

Complete these steps using Computer Management:

  1. Type Computer in Window Start (resolves as This PC in Windows 8).

  2. Right-click and select Manage.

  3. Navigate to System Tools | Shared Folders | Shares.

  4. Right-click and select New | Share… .

  5. Press Next (Create a Shared Folder Wizard dialog).

  6. Enter D:\SymStore\Symbols as the Folder Path.

  7. Press Next twice.

  8. Select Customize permissions.

  9. Press Custom… .

  10. Remove Everyone.

  11. Using Add…, add the Users/Security Groups requiring access.

  12. For each User/Security Group added, grant Read or Read/Change access.

  13. Press OK (Customize Permissions dialog).

  14. Press Finish twice to complete the process.

Test The SMB File Share

Configure a debugger to use this symbol path:

srv*C:\Symbols*\\MachineName\Symbols

To view the location of the PDBs being referenced in the debugger, use the lm (list modules) command. The path to the PDBs should all begin with C:\Symbols. By running “!sym noisy”, and “.reload /f”, you will see extensive symbol logging of the download of the symbols and images from the \\MachineName\Symbols file server to C:\Symbols.

File Share Symbol Path

There are multiples ways to configure your debugger’s symbol path (.sympath) to use a File Share. The syntax of the symbol path determines if the symbol file will be cached locally or not, and where it is cached.

Direct File Share use (no local caching):

srv*\\MachineName\Symbols

Local Caching of the File Share’s files to a particular local folder (e.g. c:\Symbols):

srv*c:\Symbols*\\MachineName\Symbols

Local Caching of the File Share’s files to the %DBGHELP_HOMEDIR%\Sym folder:

srv**\\MachineName\Symbols

The second “*” in the example shown above, represents the default local server cache.

If the DBGHELP_HOMEDIR variable is not set, DBGHELP_HOMEDIR defaults to the debugger executable folder (for example C:\Program Files\Windows Kits\10.0\Debuggers\x86) and causes caching to occur in C:\Program Files\Windows Kits\10.0\Debuggers\x86\Sym.

Related topics

Symbol Store Folder Tree