« - »

No se puede instalar Service Pack. Acceso Denegado

Thursday, 17 de June de 2010

Me he vuelto “mico” estos días en el trabajo intentando actualizar un SQL Server 2000 a SQL Server 2008, por el problema de base que el servidor en cuestión ni siquiera tenía instalado Service Pack 2. Lo sé.

El problema es que al intentar instalar el SP2, me aparecía el error “Acceso Dengado”. Esto me había pasado ya con XP y la solución era el famoso cmd que resetea los permisos del registro y algunos directorios para que la instalación se pueda llevar a cabo. En este caso no fué esta la solución. Después de muchas vueltas y muchas pruebas (borrando claves de registro con nulls y cosas de esas), me encontré con esto:

http://blogs.technet.com/b/sbs/archive/2007/06/22/sp2-may-fail-to-install-if-a-large-number-of-updates-are-installed.aspx

El artículo viene a decir que Windows Server (en el caso del artículo SBS) tiene un “tope” de actualizaciones instaladas!!!! Comorl!?!? Por lo visto hay una base de datos que mantiene un registro de los parches instalados y como todo, tiene un límite. Si esa base de datos “se llena” no hay mas updates.

En el blog de technet dan una solución automática y una manual. Yo probé las dos, por si acaso, y fué perfecto. Después de ejecutar el bat de marras, SP2 se instaló correctamente.

Por si lo necesitáis el bat es éste (copiad y pegad en un fichero y ponedle la extensión bat):

———– BEGIN —————

@ECHO OFF
SETLOCAL EnableDelayedExpansion

net stop cryptsvc
cd /d %WINDIR%\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}
attrib -s *.*
md %WINDIR%\system32\CatRoot\backup

FOR /F "delims=" %%a in ('REG QUERY "HKLM\Software\microsoft\Windows NT\CurrentVersion\Hotfix"') DO (REG QUERY "%%a" /v "Service Pack" | findstr /c:"0x2"
if !ERRORLEVEL!==0 (
For /f "delims=\ tokens=7" %%i in ('REG QUERY "%%a" /v "Service Pack"') do (
move %%i.cat %WINDIR%\system32\CatRoot\backup
)
)
)

if exist %WINDIR%\system32\CatRoot\backup\kb912354.cat copy %WINDIR%\system32\CatRoot\backup\kb912354.cat

%WINDIR%\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}
ren %WINDIR%\system32\catroot2 catroot2.old
md %WINDIR%\system32\CatRoot2
net start cryptsvc

@echo Ready for SP2 install.  You can now restart the SP2 installation.

———– END —————

Saludos a todos!


Una respuesta to ' No se puede instalar Service Pack. Acceso Denegado '

Suscribirse a comentarios con RSS or TrackBack to ' No se puede instalar Service Pack. Acceso Denegado '.

  1. Mikytron dice,

    el June 17th, 2010 a las 12:59

    que grande!. mira, esas grandes cosas que no se entiende de Microchof….

Dejar una respuesta