Seite 1 von 1

Windows 10 Bereinigung und Upgrade

Veröffentlicht: 21. Juli 2020 - 10:32 Uhr
von Mathieu
WAPT 1.8.2.7269
Server-Betriebssystem: Debian
OS DEV: Windows 10

Guten Morgen,

Ich habe gerade mein Windows10-Upgrade-Paket auf Version 2004 aktualisiert und alles funktioniert einwandfrei.

Ich wollte wissen, ob jemand eine Lösung mit WAPT hat, um die Überreste der Update-Installation zu beseitigen.

Nach der Installation stelle ich fest, dass 16,3 GB Speicherplatz für temporäre Dateien unter „Vorherige Windows-Installationen“ belegt sind, die ich gerne löschen möchte, um Speicherplatz freizugeben und sie in den Bereich „Überwachung“ zu verschieben.

Ich habe Folgendes gefunden, das funktioniert, aber nicht im Hintergrund:

Code: Alle auswählen

New-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Temporary Setup Files' -PropertyType 'DWORD' -Force -Name 'StateFlags1337' -Value 0x2
New-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Previous Installations' -PropertyType 'DWORD' -Force -Name 'StateFlags1337' -Value 0x2
cleanmgr.exe /SAGERUN:1337
Mir fiel außerdem auf, dass das Windows10-Upgrade-Paket im Überwachungsbereich nicht funktionierte, da es den Ordner „Windows Upgrade“ nicht löschte.

Durch Hinzufügen der Variable upgrade_path = makepath(systemdrive,'WindowsUpgrade') in def audit und Entfernen des try-Blocks wird der Ordner korrekt gelöscht.

Hier ist meine Modifikation:

Code: Alle auswählen

def audit():
    # Declaring specific app values
    package_version = control.version.split('-')[0]
    latest_version = package_version
    upgrade_path = makepath(systemdrive,'WindowsUpgrade')

    if Version(windows_version()) < Version(latest_version):
        print('Windows Upgrade has not succeed')
        return 'ERROR'
    elif isdir(upgrade_path):
        print('Windows %s already up-to-date' % windows_version())
        print('Cleanup as upgrade suceeded..')
        print('remove WindowsUpgrade')
        remove_tree(upgrade_path)
    else:
        print('Windows %s already up-to-date' % windows_version())
        return 'OK'
Danke

Betreff: Reinigung des Windows 10-Upgrades

Veröffentlicht: 14. August 2020 - 08:48 Uhr
von Mathieu
Guten Morgen,

Nach meinem Urlaub kehre ich zum Thema der Bereinigung von Windows 10-Upgrades zurück

Ich verwende die Lösung, die mir Simon gegeben hat, aber ich habe ein Problem: Der Ordner Windows.old wird nicht gelöscht, obwohl die Befehle zur Änderung der Berechtigungen funktionieren, egal ob ich als Administrator oder als Systembenutzer arbeite

Haben Sie irgendwelche Hinweise?

Code: Alle auswählen

def install():
    package_version = control.version.split('-')[0]
    latest_version = package_version
    update_package_old = makepath(systemdrive,'Windows.old')

    if Version(windows_version()) < Version(latest_version):
        print('Windows Upgrade has not succeed')
        return 'ERROR'
    elif isdir(update_package_old):
        print('Windows %s already up-to-date' % windows_version())
        print('remove Windows_old')
        print('Changement proprietaire')
        run_powershell('takeown /F C:\Windows.old\* /R /A /D O')
        print('Modification droits')
        run_powershell('cacls c:\Windows.old\*.* /t /grant administrators:f')
        print('Supression Windows.old')
        run('rmdir /s /q c:\Windows.old')
        print('Cleanup as upgrade suceeded..')

    else:
        print('Windows %s already up-to-date' % windows_version())
        print('Cleanup as upgrade suceeded..')
        return 'OK'

Betreff: Reinigung des Windows 10-Upgrades

Veröffentlicht: 14. August 2020 - 11:39 Uhr
von Mathieu
Die Befehle funktionieren auch manuell, wenn man die Option „Alle Berechtigungseinträge für untergeordnete Objekte ersetzen“ aktiviert, die ich in der Eingabeaufforderung nicht finden kann

Betreff: Reinigung des Windows 10-Upgrades

Veröffentlicht: 19. August 2020 – 13:32 Uhr
von nliaudat
Um Vererbung hinzuzufügen:

Code: Alle auswählen

  iCACLS.exe /inheritance:e|d|r
          e - Enable inheritance
          d - Disable inheritance and copy the ACEs 
          r - Remove all inherited ACEs
Details unten viewtopic.php?f=9&t=2439

Betreff: Reinigung des Windows 10-Upgrades

Veröffentlicht: 26. August 2020 - 11:09 Uhr
von nliaudat

Code: Alle auswählen

    run_notfatal('RD /S /Q "C:\$Windows.~BT"')
    run_notfatal('RD /S /Q "C:\$Windows.~WS"')
    run_notfatal('RD /S /Q "C:\$GetCurrent"')
    run_notfatal('RD /S /Q "C:\$WinREAgent"')
    run_notfatal('RD /S /Q "C:\update_win10.log"')
    run_notfatal('RD /S /Q "C:\Windows.old"')
    run_notfatal('RD /S /Q "C:\Windows10Upgrade"')
    run_notfatal('RD /S /Q "C:\WindowsUpgrade"')
Funktioniert bei mir einwandfrei, ohne dass ich die Berechtigungen ändern musste.

Betreff: Reinigung des Windows 10-Upgrades

Veröffentlicht: 29. August 2020 - 12:28 Uhr
von Mathieu
Ich habe Ihre Befehle ausprobiert.

Der Ordner „Windows.old“ ist immer noch vorhanden.

Ich finde nicht die richtigen Befehle, um ihn nach dem Upgrade ordnungsgemäß zu bereinigen.

Betreff: Reinigung des Windows 10-Upgrades

Veröffentlicht: 31. August 2020 - 12:25 Uhr
von Jonathan K.
Hallo,

nur mal so eine Idee: Haben Sie schon mal an ein PowerShell-Skript gedacht?

Betreff: Reinigung des Windows 10-Upgrades

Veröffentlicht: 1. September 2020 - 11:12 Uhr
von nliaudat
Es handelt sich lediglich um ein Berechtigungsproblem. Siehe den Thread zu iCACLS.exe: viewtopic.php?f=9&t=2439

Betreff: Reinigung des Windows 10-Upgrades

Veröffentlicht: 1. September 2020 - 11:27 Uhr
von nliaudat

Code: Alle auswählen

takeown /F "C:\Windows.old" /A /R /D Y
icacls "C:\Windows.old" /grant *S-1-5-32-544:F /T /C /Q
RD /S /Q "C:\Windows.old"