Пропускане към основното съдържание

Как да премахнем Windows.old след ъпгрейд на Windows Server работещ в режим Core



Наскоро ми се наложи да се позанимавам с един прясно ъпгрейднат(обновен) Windows Server. Microsoft обикновено препоръчва при сървърите винаги да правите нови инсталации и да мигрирате, с изключение на сървърите System Center Configuration Manager, където се поддържа конфигурация за надграждане на версии на Windows. Та въпросният сървър беше с препълнен диск C, и в тази връзка реших накратко да опиша процеса за премахване на windows.old директорията. Можете да освободите от 6 GB до 15 GB, като премахнете папката windows.old, където се премества всичко, що е Windows базирано, когато решите да надстроите вашия Windows Server.

Изтеглете помощната програма SysInternals Junction, която ще използваме за намиране и изтриване на directory symbolic links (или NTFS Junctions), които все още съществуват в структурата на директорията.
След като изтеглите програмата и я разархивирате създайте PowerShell файл със следния код и го запишете в C : \ temp (местоположението в ще работим).

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

Горният код ще обходи т. нар. junction list, който можем да извлечем с командата по-долу.
На по-голямата част от системите това всъщност трябва да върне празно, което показва, че ъпгрейдването на Windows е преминало гладко.

junction -s C:\Windows.old > junctions.txt

След което изпълняваме PowerShell файла, който първоначално написахме и текстовия файл, който току-що създадохме с помощната програма Junction. Щом се направи това, можем да започнем да почистваме. Следва да променим собствеността на файловете:

takeown /F c:\Windows.old\* /R /A /D Y

Ще откриете, че това ще е всичко, от което имате нужда. Сега може да използвате rmdir командата.Ако все пак  по някаква причина не можете да изпълните командата rmdir изпълнете тази допълнителна команда:

cacls c:\Windows.old\*.* /T /grant administrators:F


А ето и командата rmdir - rmdir /S /Q c:\Windows.old