One of the solutions to this is to run Delprof. This is a Microsoft utility that will delete inactive profiles. A sample command line is
delprof.exe /I /Q /D:30
The above command will remove inactive profiles that are over 30 days old. Depending on the traffic on your machines you may wish to increase this value. But what is the best way of running this command?
I'd recommend deploying this using schtasks. This allows you to run delprof when the machine is idle - I've seen corruptions occur when delprof runs at logon or logoff, so this is probably a safer way. I run the following batch file on each workstation -
copy delprof.exe c:\windows\system32
schtasks /create /tn "Delete Inactive Profiles" /tr "delprof.exe /I /Q /D:5" /sc ONIDLE /i 5 /ru "SYSTEM"
Delprof is available from the Microsoft download center (www.microsoft.com/download/en/details.aspx?id=5405).