admin管理员组

文章数量:1130349

 解决C盘剩余空间不足的问题

吴旻

泰岩网络工作室

    Win2008的服务器,30G的C盘空间,从去年开始就报告说C盘剩余空间不足。我从简单到复杂,大约用了如下几个方式。

    1、将一些保存在C盘的文件移到到其它磁盘。
    这些文件本身不多,因为我很少有在C盘保存文件的习惯。所以,这个办法没多久就不管用了。

    2、清理临时文件。
    如果长时间没清理过磁盘的临时文件,这个办法是管用的。多的时候,能一下子清到几百M的数据。但这个方式依然好景不长,临时文件总是要有的。

    3、将IE、QQ等存放临时文件的目录改到其它磁盘下。
    这个方式与上一个大同小异,只是清理后,不会再把临时文件写到C盘了。但C盘的剩余空间还是会很快又不足了。

    4、清理垃圾和升级后的备用文件。
    操作系统和程序总会产生一些垃圾文件,这些文件多数不会是临时文件。如一些过期的DLL文件,或者操作系统升级更新后留下的文件。我在网上找了一段批处理代码,清掉了差不多700M的数据。如下:

@echo off 
echo 正在清除系统垃圾文件,请稍等...... 

del /f /s /q %systemdrive%\*.tmp 
del /f /s /q %systemdrive%\*._mp 
del /f /s /q %systemdrive%\*.log 
del /f /s /q %systemdrive%\*.gid 
del /f /s /q %systemdrive%\*.chk 
del /f /s /q %systemdrive%\*.old 
del /f /s /q %systemdrive%\recycled\*.* 

del /f /s /q %windir%\*.bak 
del /f /s /q %windir%\prefetch\*.* 
rmdir /s /q %windir%\temp & md %windir%\temp 

del /f /q %userprofile%\cookies\*.* 
del /f /q %userprofile%\recent\*.* 
del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*" 
del /f /s /q "%userprofile%\Local Settings\Temp\*.*" 
del /f /s /q "%userprofile%\recent\*.*" 

echo 清除系统垃圾文件完成! 
echo. & pause 

    还有一些是C:\windows目录下,以$开头,并且以$结尾的文件夹。网上说,这些是Windows升级后留下的,如果升级后你不打算再回滚到升级前的状态,那就可以删除。OK,我觉得不会发生升级后回滚的事件了,那就删除吧。这要视情况而定,我当时差不多清理掉了1G以上的数据。
    几个月以后,系统又提示说,C盘的空间不足了。

    5、压缩驱动器以节约磁盘空间。
    这个办法其实不太好,因为C盘是常用的系统盘,没有多少很少使用的数据。压缩了5个小时以后,也就省出了不到1G的空间。可见问题的根本原因不在这里。

    6、升级备份文件的转移
    我想知道是哪些文件导致了C盘剩余空间不足这件事。通过一个一个的查看文件夹属性,我发现是Windows目录和Program Files目录超级大,分别是20G和6.5G。后者的6.5G我能理解,我装了好几个版本的VS,但Windows目录为何有20G,我就不能理解了。
    我使用在《用批处理实现Windows下子目录大小统计功能》中提到的方法,查出来是C:\windows\installer目录特别大,竟然有近8G的数据量。上网一查,说是这个目录下的文件不能删除,它和注册表里(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches)的安装信息是一一对应的。
    看到注册表中写明了路径和文件名,我想试一下,如果把这些文件移动到其它磁盘,然后再修改注册表中的指向的位置,也许可行。例如:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches\020B2EB2A6EC1DA42819B288C19F326B项下的LocalPackage的值为C:\WINDOWS\Installer\7ac58b.msp,我把它改成D:\WINDOWS\Installer\7ac58b.msp,然后再把C:\WINDOWS\Installer\7ac58b.msp文件移动到D盘对应的目录下。
    还真成功了!重启计算机后,未发生任何问题。
    我按上面提到的办法,一口气把C:\WINDOWS\Installer目录下所有大于50M的文件都移到了D盘,马上清理出来3G的空间。

    网上说,C:\WINDOWS\SoftwareDistribution\Download目录下的文件也可以删除,我大体试了一下,如果是升级过的程序,没问题;如果还没升级的,那些文件还会被下载过来。所以这个目录的文件,删除的时候,要看看是不是在升级。

 解决C盘剩余空间不足的问题

吴旻

泰岩网络工作室

    Win2008的服务器,30G的C盘空间,从去年开始就报告说C盘剩余空间不足。我从简单到复杂,大约用了如下几个方式。

    1、将一些保存在C盘的文件移到到其它磁盘。
    这些文件本身不多,因为我很少有在C盘保存文件的习惯。所以,这个办法没多久就不管用了。

    2、清理临时文件。
    如果长时间没清理过磁盘的临时文件,这个办法是管用的。多的时候,能一下子清到几百M的数据。但这个方式依然好景不长,临时文件总是要有的。

    3、将IE、QQ等存放临时文件的目录改到其它磁盘下。
    这个方式与上一个大同小异,只是清理后,不会再把临时文件写到C盘了。但C盘的剩余空间还是会很快又不足了。

    4、清理垃圾和升级后的备用文件。
    操作系统和程序总会产生一些垃圾文件,这些文件多数不会是临时文件。如一些过期的DLL文件,或者操作系统升级更新后留下的文件。我在网上找了一段批处理代码,清掉了差不多700M的数据。如下:

@echo off 
echo 正在清除系统垃圾文件,请稍等...... 

del /f /s /q %systemdrive%\*.tmp 
del /f /s /q %systemdrive%\*._mp 
del /f /s /q %systemdrive%\*.log 
del /f /s /q %systemdrive%\*.gid 
del /f /s /q %systemdrive%\*.chk 
del /f /s /q %systemdrive%\*.old 
del /f /s /q %systemdrive%\recycled\*.* 

del /f /s /q %windir%\*.bak 
del /f /s /q %windir%\prefetch\*.* 
rmdir /s /q %windir%\temp & md %windir%\temp 

del /f /q %userprofile%\cookies\*.* 
del /f /q %userprofile%\recent\*.* 
del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*" 
del /f /s /q "%userprofile%\Local Settings\Temp\*.*" 
del /f /s /q "%userprofile%\recent\*.*" 

echo 清除系统垃圾文件完成! 
echo. & pause 

    还有一些是C:\windows目录下,以$开头,并且以$结尾的文件夹。网上说,这些是Windows升级后留下的,如果升级后你不打算再回滚到升级前的状态,那就可以删除。OK,我觉得不会发生升级后回滚的事件了,那就删除吧。这要视情况而定,我当时差不多清理掉了1G以上的数据。
    几个月以后,系统又提示说,C盘的空间不足了。

    5、压缩驱动器以节约磁盘空间。
    这个办法其实不太好,因为C盘是常用的系统盘,没有多少很少使用的数据。压缩了5个小时以后,也就省出了不到1G的空间。可见问题的根本原因不在这里。

    6、升级备份文件的转移
    我想知道是哪些文件导致了C盘剩余空间不足这件事。通过一个一个的查看文件夹属性,我发现是Windows目录和Program Files目录超级大,分别是20G和6.5G。后者的6.5G我能理解,我装了好几个版本的VS,但Windows目录为何有20G,我就不能理解了。
    我使用在《用批处理实现Windows下子目录大小统计功能》中提到的方法,查出来是C:\windows\installer目录特别大,竟然有近8G的数据量。上网一查,说是这个目录下的文件不能删除,它和注册表里(HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches)的安装信息是一一对应的。
    看到注册表中写明了路径和文件名,我想试一下,如果把这些文件移动到其它磁盘,然后再修改注册表中的指向的位置,也许可行。例如:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Patches\020B2EB2A6EC1DA42819B288C19F326B项下的LocalPackage的值为C:\WINDOWS\Installer\7ac58b.msp,我把它改成D:\WINDOWS\Installer\7ac58b.msp,然后再把C:\WINDOWS\Installer\7ac58b.msp文件移动到D盘对应的目录下。
    还真成功了!重启计算机后,未发生任何问题。
    我按上面提到的办法,一口气把C:\WINDOWS\Installer目录下所有大于50M的文件都移到了D盘,马上清理出来3G的空间。

    网上说,C:\WINDOWS\SoftwareDistribution\Download目录下的文件也可以删除,我大体试了一下,如果是升级过的程序,没问题;如果还没升级的,那些文件还会被下载过来。所以这个目录的文件,删除的时候,要看看是不是在升级。

本文标签: 剩余空间