Provisioning av Windows 2012 R2 – ShortFileName

I Windows 2012 R2 har det introducerats flera förbättringar. En förbättring är att Microsoft valt att stänga av vissa funktioner som tidigare varit aktiverade för bakåtkompabilitet. En sådan funktion är ShortFileName (SFN), även kallat 8dot3 Name Creation (8dot3), som Microsoft valt att inaktivera på nya diskvolymer som läggs till på en Windows 2012 R2, utöver operativsystemsdisken.

SFN användes i DOS, Windows NT 3.51 och Windows 95 där det fanns en begränsning i FAT filsystem för hur många tecken ett namn fick innehålla. Anledningen till att det är inaktiverat i senare OS versioner är för att SFN skapar en prestanda försämring vid skapande eller enumrering av filer [1].

För att enkelt verifiera om SFN existerar på en volym, skriv kommandot dir /x när du befinner dig i root-katalogen på en volym.

ShortFileName Exists

Resultat när SFN sökvägar existerar

Vi kan se att ”C:\Program files” har en förkortning till C:\PROGRA~1 och ”C:\Program Files (x86)” har en förkortning till C:\PROGRA~2.

Det är fördelaktigt att SFN är inaktiverat om det är en volymdisk på en filserver att spara prestanda. Som tidigare beskrivit vid skapande och enumrering av filer när SFN är aktiverat [1]Är det avstängt på en systemdisk, där applikationer fortfarande kan använda sig av SFN av någon anledning kan man få udda felmeddelanden.

Ett sådant scenario kan man stötta på när man provisionerar ut en ny diskrevision med Office 2013 installerat. Installation av Office-paketet i Golden-image fungerar och ger inga felmeddelanden. Först när man startar Word på sina provisionerade targets kan man få meddelandet:

Office Word Something Went Wrong

Utför vi kommandot dir /x på en provisionerad target kan vi se att ShortFileName sökvägar inte längre existerar på diskvolymen.

ShortFileName Does Not Exist

Resultat när SFN sökvägar saknas

Som beskrivit tidigare, när nya diskar läggs i Windows 2012 R2 blir SFN inaktiverat på nya diskar. Äldre program och plugins som använder sig av SFN kan delvis eller helt sluta fungera om sökvägarna inte existerar.

I följande scenario har vi en Golden image med en Systemdisk C:\ som vi skall kopiera till den tomma vDisken E:\. Vi kan verifiera att möjligheten att skapa SFN är aktiverat på volymen C: genom att använda oss av

  • fsutil.exe 8dot3name query c:
8dot3 name creation enabled

Skapandet av SFN-genvägar är aktiverat

Värdet “0 – 8dot3 name creation is enabled” för C:\ visar att det är möjligt att skapa SFN genvägar.  Utför vi samma kommando mot vår tomma vDisk E:\ kan vi se att det SFN är inaktiverat, vilket innebär att SFN sökvägar inte kommer skapas.

8dot3 name creation disabled

Skapandet av SFN-genvägar är inaktiverat

LÖSNING OCH ÅTGÄRD

För att undvika att varje ny vDisk har SFN inaktiverat ändrar man följande registervärde [2] i sin Golden Image.

Registry PATH:                             HKLM\System\CurrentControlSet\Control\FileSystem\
REG_DWORD:                             NtfsDisable8dot3NameCreation
Value:                                             2 > 0

0: Enables 8dot3 name creation for all volumes on the system.
1: Disables 8dot3 name creation for all volumes on the system.
2: Sets 8dot3 name creation on a per volume basis.
3: Disables 8dot3 name creation for all volumes except the system volume.

Källa: [1]
https://blogs.technet.microsoft.com/josebda/2012/11/13/windows-server-2012-file-server-tip-disable-8-3-naming-and-strip-those-short-names-too/

Källa: [2]
https://technet.microsoft.com/en-us/library/ff621566.aspx

Disclaimer: All information on this blog is offered "as is" with no warranty. It is strongly recommended that you verify all information and validate all scripts in isolated test environments before using them in production environments.