¿Por qué migrar a Windows 10?
3 enero, 2018
DriverStore Explorer
Cómo gestionar drivers almacenados en DriverStore con DriverStore Explorer (Windows)
3 enero, 2018

Vamos a ver un problema con el que me he encontrado recientemente. Este problema puede aparecer si utilizamos System Center Configuration Manager 2012 o superior para desplegar actualizaciones de software, y se debe a que ha quedado alguna referencia en la base de datos a una actualización ya eliminada.
 

Problema

El error se presenta a la hora de resolver las dependencias de cualquier Task Sequence para el despliegue de Sistemas Operativos que incluya algún paso para instalar actualizaciones de software. El mensaje que nos aparece es “An error occurred while starting the task sequence (0x80004005)”, y si nos fijamos en el SMSTS.LOG observaremos un registro como éste:

SCCM Error SMSTSLOG
 

Cómo solucionarlo

Para resolverlo, hay que eliminar la información residual de la actualización que nos está generando estos problemas. Para ello podemos seguir los siguientes pasos:

  1. Abrimos SQL Server Management Studio y navegamos hasta seleccionar la base de datos de Configuration Manager.
  2. Una vez seleccionada la base de datos de SCCM, vamos a ejecutar la siguiente query: select * from PolicyAssignment where PolicyID like ‘%A1B2C34D-13AD-55E1-33F2-789162FDA18F%’. Recordad cambiar el valor entre %’s por el GUID de vuestra política.
  3. Como resultado de la query anterior, obtendremos el PADBID (ejemplo: 111222333). Con esto, ejecutamos la siguiente query: Delete from PolicyAssignment where PADBID = ‘111222333’. Sustituid el número entre comillas por el PADBID que os ha devuelto la query del punto anterior.

Si no se obtiene ningún error al ejecutar la última query, ya podríamos ejecutar de nuevo nuestras Task Sequences. No obstante, podemos obtener un error como el siguiente:

Msg 547, Level 16, State 0, Line 1
The DELETE statement conflicted with the REFERENCE constraint “DepPolicyAssignment_1_FK”. The conflict occurred in database “CM_XXX”, table “dbo.DepPolicyAssignment”, column ‘PADBID’

En dicho caso, tendríamos que seguir los pasos indicados a continuación:

  • Ejecutamos una nueva query: select * from DepPolicyAssignment where PolicyID like ‘%A1B2C34D-13AD-55E1-33F2-789162FDA18F%’. De nuevo, sustituid por vuestro GUID.
  • Obtendremos de nuevo el PADBID, pero esta vez de la tabla DepPolicyAssignment (ejemplo: 444555666). Con él, ejecutamos la siguiente query, con la que comprobaremos que existe la entrada en la tabla: select * from DepPolicyAssignment where PADBID = ‘444555666’.
  • Una vez ejecutada con éxito la query anterior, vamos a proceder a eliminar las 2 entradas a la vez (una de la tabla PolicyAssignment y la otra de la tabla DepPolicyAssignment), ya que están referenciadas y hace falta eliminarlas. Para ello ejecutamos la siguiente query:

delete from DepPolicyAssignment where PADBID = ‘444555666’

delete from PolicyAssignment where PADBID = ‘111222333’

 

Finalmente, tras esta última query, el proceso de despliegue de imágenes debería volver a funcionar correctamente.

 

 

Podéis comentarnos lo que sea en info@kabel.es.

También podéis seguirnos en Twitter, LinkedIn y Facebook.

 

proudtobegeek


 

Licencia de Creative Commons
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial 4.0 Internacional.

 

Compártelo: Share on FacebookTweet about this on TwitterShare on LinkedInPin on Pinterest

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

NEWSLETTER