An "Invalid physical name for library SASUSER" message is displayed at start-up for SAS® 9.4 and earlier releases in a Windows operating environment


June 2026 and July 2026 Update: Microsoft released security updates KB5094126 and KB5094128 on June 9, 2026. In July 2026, Microsoft released security updates KB5101650, KB5099414, KB5099536, and KB5099540, which are found to impact the GUID for "?FOLDERID_Documents" when this path is directed to a remote network location (such as a UNC path). 

As a result, when you start SAS 9.4, the SASUSER error below occurs.

You can find the path that your ""?FOLDERID_Documents" value uses with the following PowerShell command, which shows the Personal value:

(Get-ItemProperty -Path "HKCU:\software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" -Name Personal).Personal

If the Personal value result shows a UNC path or remote network drive location, see SAS KB0046265 "SAS® 9.4 returns "Invalid Physical Name for Library SASUSER" after applying Microsoft Windows Security Updates KB5094126 or KB5094128", which also includes KB5101650, KB5099414, KB5099536, and KB5099540.

--------------------------------------------------------------------------------------------------------------------------------------------

When you start SAS® 9.4 and earlier maintenance releases of SAS® in a Windows operating environment, the following error messages might occur:

ERROR: Invalid physical name for library SASUSER.
NOTE: Unable to initialize the options subsystem.
ERROR: (SASXKINI): PHASE 3 KERNEL INITIALIZATION FAILED.
ERROR: UNABLE TO INITIALIZE THE SAS KERNEL
 
The error indicates that the path defined for the SASUSER library is not currently accessible. The path for the SASUSER library is hardcoded into your SAS configuration file, which is named sasv8.cfg in SAS®8 and sasv9.cfg in SAS®9.
 
To resolve the problem, verify the path for the SASUSER library in the sasv8.cfg or sasv9.cfg file and either make the path accessible or change the path.
 
To determine the location of your SASUSER library, complete the following steps:
    1. Back up the sasv8.cfg or sasv9.cfg file. Next, open Notepad by right-clicking Notepad and selecting Run as Administrator. Then, in Notepad, select File ► Open and navigate to the sasv8.cfg or sasv9.cfg file. 

      The default locations, when using SAS 9.x (English), are as follows:
      SAS 9.4 32-bit on x64 - C:\Program Files\SASHome\x86\SASFoundation\9.4\nls\en
      SAS 9.4 - C:\Program Files\SASHome\SASFoundation\9.4\nls\en
      SAS 9.3 32-bit on x64 - C:\Program Files\SASHome\x86\SASFoundation\9.3\nls\en
      SAS 9.3 - C:\Program Files\SASHome\SASFoundation\9.3\nls\en
      SAS 9.2 32-bit on x64 - C:\Program Files\SAS\SASFoundation\9.2(32bit)\nls\en
      SAS 9.2 - C:\Program Files\SAS\SASFoundation\9.2\nls\en
      SAS 9.1.x - C:\Program Files\SAS\SAS 9.1\nls\en
      SAS 9.0 - C:\Program Files\SAS\SAS System\9.0\nls\en
      SAS 8.2 - C:\Program Files\SAS Institute\SAS\V8
       
      However, if you use other SAS language types, the SASv9.cfg file is in a different \nls\ folder. Here is an example: SAS 9.4 (Unicode Support).

      The default location for the SASv9.cfg file used for this is in the default location:
      C:\Program Files\SASHome\SASFoundation\9.4\nls\u8\

      So, determine the location of the SASv9.cfg file that is being used by right-clicking SAS 9.4 (language) ► click Properties.

      Then, in the Target location, check near the *END* for the -CONFIG option that lists the folder for SASv9.cfg.

      For example, the entire Target location could be C:\Program Files\SASHome\SASFoundation\9.4\sas.exe" -CONFIG "C:\Program Files\SASHome\SASFoundation\9.4\nls\u8\sasv9.cfg.

      Also, a best practice to consider is to change the SASv9.cfg files for all languages in the \nls\ folder in case other SAS sessions are used on this machine: 
      C:\Program Files\SASHome\SASFoundation\9.4\nls\xx\

    2. In Notepad, in the SASv9.cfg file, search for the line that starts -SASUSER and make note of the path. For example, you might see a path similar to the following:
      -SASUSER "e:\sas\9"
      or
      -SASUSER "?CSIDL_PERSONAL\My SAS Files\9.2"
      or
      -SASUSER "?FOLDERID_Documents\My SAS Files\9.4"

      The explicit path, e:\sas\9, is listed in the first example. The second example uses the ?CSIDL_PERSONAL environment variable. In the second example, the explicit path might be c:\users\user-ID\documents\my sas files\9.2, where user-ID is the Windows user ID that is logged on to the system. In the third example, the ?FOLDERID_Documents variable is documented in SAS Note 50713, "The SASUSER default location has changed in the SAS® 9.4 sasv9.cfg file for Windows operating environments." This path is typically c:\users\user-ID\documents\My SAS Files\9.4.
       
    3. In Windows Explorer or My Computer, go to the explicit path determined above. Make sure that you can access this directory, and verify that you have read/write permissions. You might need to contact your IT department for help with this step or, alternatively, go to step 4 below.

 

4. If necessary, you can redirect the SASUSER location in the sasv8.cfg or sasv9.cfg file by doing the following:

      1. Log on to Microsoft Windows with a user ID that has local administrator rights.
      2. Make sure that all SAS sessions and the sasv8.cfg or sasv9.cfg file are closed.
      3. Make a backup copy of the sasv8.cfg file or sasv9.cfg file. See the default paths in step 1.
      4. Right-click Notepad, and click Run as administrator.
      5. In Notepad, select File ► Open and change Save as type from Text Documents (*.txt) to All Files (*.*). Navigate to the sasv8.cfg or the sasv9.cfg. See the default paths in step 1.
      6. In Notepad, edit the sasv8.cfg file or sasv9.cfg file and comment out the existing -SASUSER line by adding the delimiters /* and */. For example: /* -SASUSER "e:\sas\9" */.
      7. Below this commented line, add a line with the new path for SASUSER that the Windows user ID has full rights to. For example, add the following line starting in column one:
        -SASUSER "C:\sasuser"
        or
        -SASUSER "C:\users\user-ID\sasuser"

        Note: In these lines, user-ID is the Microsoft Windows user ID that typically logs on to this machine.

        If multiple users use SAS on this machine, such as SAS installed on a Microsoft Windows Server, then each user needs a unique SASUSER library folder. One method to accomplish this is to use the Windows environment variable user name. Here is an example:

        -SASUSER "C:\sasuser\!username"
      8. Save the file, and close Notepad.

 

5. To verify the new SASUSER location, start SAS and double-click the Libraries icon. Then, right-click SASUSER and choose Properties. The path is listed below levels.