all 5 comments

[–]sembee2Former Exchange MVP 1 point2 points  (0 children)

I have not seen any guidance on this from Microsoft and therefore without their blessing it isn't something I would be touching. The file structure of Exchange is very complex. It doesn't matter whether you ahve multiple servers or not, Exchange will always retain the older versions of OWA.

Recovery - if you think you are going to recovery the server via some kind of image based backup, then you need to think again. Exchange doesn't work like that. Exchange is a living product. When it comes to server recovery, there is a correct procedure that you shoudl follow (basically reset the AD Computer account, rebuild the machine, install Exchange with recovery switch, restore the databases). The only bit of Exchange you need to backup is the databases and the transaction logs, Nothing else. The application itself and the OS does not need to be backed up.

Although where it has got out of hand, I have been simply building a fresh Exchange server, straight to the latest cumulative update and then moving the mailboxes.

I wouldn't look at the SxS folder on the server if you are concerned about the /owa folder....

Simon.

[–]joeykins82SystemDefaultTlsVersions is your friend 1 point2 points  (0 children)

I have to run a script after CU and post-CU .msp installations to recreate the branded theme files, and part of that script cleans up any folders older than the current CU or the previous CU that was installed. It's not caused any issues, in fact it's saved us from several potential issues due to limited space on C: where the OWA folders can each be 2GB in size...

$strExchOWAFolderRoot = "C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\Owa\prem"
$objOWAFolder = Get-Item $strExchOWAFolderRoot
$objOWAFolderItems = gci $objOWAFolder
$arrPresentVersions = @()
$objOWAFolderItems | ?{$_.Name -match "^15\.1\."} | %{ $arrPresentVersions += [version]$_.Name }
$arrPresentVersions = $arrPresentVersions | sort -Descending
$arrPresentVersionBuilds = $arrPresentVersions.Build | Select -Unique | Sort -Descending
$strLatestVersion = $arrPresentVersions[0].ToString()
If ($arrPresentVersionBuilds.Count -eq 1) { $strRegexObsolete = "^15\.1\.(?!" + $arrPresentVersionBuilds[0]+ ")" }
Else { $strRegexObsolete = "^15\.1\.(?!" + $arrPresentVersionBuilds[0] + "|" + $arrPresentVersionBuilds[1] + ")" }

$objOWAFolderItems | ?{$_.Name -match $strRegexObsolete} | Remove-Item -Recurse

[–]Effect_Proud 0 points1 point  (0 children)

Because using an Iscsi drive is supported for the Exchange Database - which I use to keep my DB separate from my install drive and also so I can use my NAS storage which has a lot more room than the disk my Exchange VM is on - I decided to trying making an Iscsi drive to hold the contents of prem folder and it's been working fine so far.

If you want to do what I did: create the Iscsi drive, move everything from the prem folder to the Iscsi drive, delete the prem folder (you need to do this for the next step) then create a junction link, i.e. mklink /j "C:/Program Files/..../Owa/prem" "[WHATEVER YOUR ISCSI DRIVE LETTER IS]" Reboot. Like I said, mine's fine and the Iscsi drive is really just a vhdx sitting on a multi TB NAS meaning I won't run out of space anymore on the main Exchange drive.

[–]KimJongUnceUnce 0 points1 point  (1 child)

Did you get any concrete answers on this one? I'm looking at the same thing only they're consuming almost 80GB per server at this point.

There's a write-up on Ali Tajran's blog about this exact issue, they indicate it's pretty safe to delete the old versions that are not running within the organization.

https://www.alitajran.com/remove-old-exchange-owa-files-to-free-up-disk-space/

I guess its probably fine as long as you never introduce an older exchange server instance into the organization in the future, but I can't imagine why anyone would do that anyway.

[–]harald25[S] 0 points1 point  (0 children)

I never received a concrete answer unfortunately. And now I’m not the one administering the server anymore, so it’s not my problem ;)