站长网 Windows hyper-v-server-2012 – 在Hyper-V Server 2012 R2上正确删除win

hyper-v-server-2012 – 在Hyper-V Server 2012 R2上正确删除win

我在具有Hyper-V Server 2012的服务器上安装了Hyper-V Server 2012 R2.当我这样做时,创建了标准的 Windows.old文件夹.我现在想安全地删除该文件夹.使用完整GUI的标准方法是使用磁盘清理,但当然我在Hyper-V服务器上没有该选项. 在这种情况下是否有正式的方

我在具有Hyper-V Server 2012的服务器上安装了Hyper-V Server 2012 R2.当我这样做时,创建了标准的
Windows.old文件夹.我现在想安全地删除该文件夹.使用完整GUI的标准方法是使用磁盘清理,但当然我在Hyper-V服务器上没有该选项.

在这种情况下是否有正式的方法来删除该文件夹?我知道如果这是服务器核心我可以安装完整的GUI,包括桌面体验,但这只是为了干净地删除文件夹将是很多废话.

与仅执行rmdir / s或其他类似操作相比,我提出的主要原因是Windows.old文件夹有很多联结,我不想在生产操作系统副本中破坏任何内容作为执行此操作的一部分.

我首先尝试复制并运行cleanmgr.exe(磁盘清理工具),但它对Cores / Hyper-V Server中不存在的DLL有太多依赖.

所以我改为手动删除目录.

首先,我删除了所有连接点和符号链接.为此,我使用了SysInternals的junction.exe.将exe复制到路径中的目录中.我跑了它来获得所有交叉点的列表:

c:\tools\junction.exe -s -q C:\windows.old > %temp%\junc.txt

我打开了一个PowerShell:

start powershell.exe

并运行以下脚本以查找相关行并再次执行junction.exe:

foreach ($line in [System.IO.File]::ReadLines("$env:temp\junc.txt"))
 {
     if ($line -match "^\\\\")
     {
         $file = $line -replace "(: JUNCTION)|(: SYMBOLIC LINK)",""
         & c:\tools\junction.exe -d "$file"
     }
 }

这删除了我系统上的所有连接点和单个符号链接.

回到cmd.exe我现在执行了三个命令来清除权限并删除所有文件:

takeown /F C:\windows.old /R /D Y
 cacls C:\windows.old /T /G Everyone:F
 rd /s /q C:\windows.old

在我的测试中,我安装了一个新的Hyper-V服务器2012,然后升级到2012 R2,Windows.old现在已经消失,系统运行良好,所有旧的联结目标都完好无损.

本文来自网络,不代表站长网立场,转载请注明出处:https://www.zwzz.com.cn/html/server/windows/2021/0524/5798.html

作者: dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。
联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部