Página 1 de 1

Limpieza y actualización de Windows 10

Publicado: 21 de julio de 2020 - 10:32 a. m.
por Mathieu
WAPT 1.8.2.7269
Sistema operativo del servidor: Debian
DESARROLLO DEL SO: Windows 10

Buen día,

Acabo de actualizar mi paquete de actualización de Windows10 a v2004 y todo funciona perfectamente.

Quería saber si alguien tenía alguna solución vía WAPT para limpiar los residuos de la instalación de la actualización.

Porque después de la instalación me encuentro con 16,3 GB de espacio para archivos temporales "Instalaciones anteriores de Windows" los cuales me gustaría eliminar para liberar espacio y ponerlo en la sección de auditoría.

Encontré esto que funciona, pero no de forma silenciosa:

Código: Seleccionar todo

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
También noté que el paquete windows10-upgrade en la sección de auditoría no funcionaba porque no eliminaba la carpeta "Windows Upgrade".

Al agregar la variable upgrade_path = makepath(systemdrive,'WindowsUpgrade') en def audit y eliminar el try, la carpeta se elimina correctamente.

Aquí está mi modificación:

Código: Seleccionar todo

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'
Gracias

Re: Limpieza de Windows 10-upgrade

Publicado: 14 de agosto de 2020 - 08:48
por Mathieu
Buen día,

De regreso de las vacaciones, vuelvo al tema de la limpieza de las actualizaciones de Windows 10

Estoy usando la solución que me dio Simon, pero tengo un problema: la carpeta Windows.old no se elimina, aunque los comandos de modificación de permisos funcionan ya sea que esté ejecutando como administrador o sistema

¿Tienes alguna pista?

Código: Seleccionar todo

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'

Re: Limpieza de Windows 10-upgrade

Publicado: 14 de agosto de 2020 - 11:39
por Mathieu
Los comandos funcionan manualmente si marca "Reemplazar todas las entradas de permisos para objetos secundarios", que no puedo encontrar en el símbolo del sistema

Re: Limpieza de Windows 10-upgrade

Publicado: 19 de agosto de 2020 - 13:32
por nliaudat
Para agregar herencia:

Código: Seleccionar todo

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

Re: Limpieza de Windows 10-upgrade

Publicado: 26 de agosto de 2020 - 11:09 a. m.
por nliaudat

Código: Seleccionar todo

    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"')
Para mí funciona perfectamente, sin cambiar los permisos.

Re: Limpieza de Windows 10-upgrade

Publicado: 29 de agosto de 2020 - 12:28
por Mathieu
Probé tus comandos.

Todavía tengo la carpeta Windows.old.

No encuentro los comandos adecuados para limpiarla correctamente después de la actualización.

Re: Limpieza de Windows 10-upgrade

Publicado: 31 de agosto de 2020 - 12:25
por Jonathan K.
Hola,

solo una idea, ¿has considerado usar un script de PowerShell?

Re: Limpieza de Windows 10-upgrade

Publicado: 1 de septiembre de 2020 - 11:12 a. m.
por nliaudat
Se trata simplemente de un problema de permisos. Consulta el hilo sobre iCACLS.exe: viewtopic.php?f=9&t=2439

Re: Limpieza de Windows 10-upgrade

Publicado: 1 de septiembre de 2020 - 11:27 a. m.
por nliaudat

Código: Seleccionar todo

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"