Jump to content
NorbertFe

WSUS Edge Chromium - Channels ausschließen

Recommended Posts

Hier mal das Script wie es jetzt von Norbert getestet und für gut befunden wurde. Lehnt ab und löscht die Edge Versionen, die in dieses Raster fallen: %edge-Stable%x64%

Die aktuellste und höchste Version bleibt bestehen.

 

USE [SUSDB]
GO
-- Lehnt und löscht ersetzte Edge Updates ab. 29.08.2020

	Declare @Anzahl int

	Set @Anzahl = (Select Count([Updateid]) as Anz
	FROM 
		[SUSDB].[PUBLIC_VIEWS].[vUpdate]

	where 
		DefaultTitle like '%edge-Stable%x64%' and Isdeclined = 0 AND [UpdateID] NOT IN
	(Select TOP 1 [Updateid]
	FROM 
		[SUSDB].[PUBLIC_VIEWS].[vUpdate]
	where 
		DefaultTitle like '%edge-Stable%x64%' and Isdeclined = 0
	Order By SUBSTRING(DefaultTitle,
				CHARINDEX('(',DefaultTitle,1)+1, 
				LEN(DefaultTitle)
				-CHARINDEX('(',DefaultTitle,1)-1) desc
				)
	)

	print @Anzahl
	-- Anzahl der Versionen ausgeben, die abgelehnt und gelöscht werden können.

	Declare @UpdateID1 uniqueidentifier

	IF @Anzahl = 0
		Begin
			Print '=0!'
			RETURN
		END
	IF ( @Anzahl > 0 )
		START:
			Begin

			-- Hier beginnt die eigentliche Schleife und Arbeit. :)
			While ( @Anzahl > 0 ) BEGIN
				SET @UpdateID1 = (
									Select 
										TOP 1 [Updateid]
									FROM 
										[SUSDB].[PUBLIC_VIEWS].[vUpdate]

									where 
										DefaultTitle like '%edge-Stable%x64%' and Isdeclined = 0 AND [UpdateID] NOT IN
										(Select 
											TOP 1 [Updateid]
										FROM 
											[SUSDB].[PUBLIC_VIEWS].[vUpdate]
										where 
											DefaultTitle like '%edge-Stable%x64%' and Isdeclined = 0
										Order By 
											SUBSTRING(DefaultTitle,
											CHARINDEX('(',DefaultTitle,1)+1, 
											LEN(DefaultTitle)
											-CHARINDEX('(',DefaultTitle,1)-1) desc
											)
										Order By 
											SUBSTRING(DefaultTitle,
											CHARINDEX('(',DefaultTitle,1)+1, 
											LEN(DefaultTitle)
											-CHARINDEX('(',DefaultTitle,1)-1) desc
									)
					-- Update ablehnen.	Die Stored Procedure spDeclineUpdate ist im Original bei jedem WSUS in der SUSDB dabei.
					EXEC [SUSDB].[dbo].[spDeclineUpdate] @UpdateID1;
					-- Update löschen. Die Stored Procedure spDeleteUpdateByUpdateID ist im Original bei jedem WSUS in der SUSDB dabei.
					EXEC [SUSDB].[dbo].[spDeleteUpdateByUpdateID] @UpdateID1;
					-- Von der Gesamt Anzahl abziehen.
					SET @Anzahl-=1
			END

			IF( @Anzahl > 0 )
				GOTO Start
			ELSE
				--Wenn es keine Edge Versionen zum Ablehnen gibt, wird die SP/das Script verlassen.
			RETURN
		END

Und hier noch das Script, das die Edge Updates aus den Dev-, Beta-, Stable-x86 und ARM64 Kanälen ablehnt. Das kann jeder natürlich auf seine Bedürfnisse anpassen.

 

USE [SUSDB]
GO
-- Lehnt und löscht Edge Updates ab. 29.08.2020

	Declare @Anzahl int

	Set @Anzahl = (Select Count([Updateid]) as Anz
	FROM 
		[SUSDB].[PUBLIC_VIEWS].[vUpdate]
	where 
		DefaultTitle like '%edge-Dev%' 
		OR 
		DefaultTitle like '%edge-Beta%' 
		OR 
		DefaultTitle like '%edge-stable%x86%'
		OR
		DefaultTitle like '%edge-stable%ARM64%'
	)

	print @Anzahl
	-- Anzahl der Versionen ausgeben, die abgelehnt und gelöscht werden können.

	Declare @UpdateID1 uniqueidentifier

	IF @Anzahl = 0
		Begin
			Print '=0!'
			RETURN
		END
	IF ( @Anzahl > 0 )
		START:
			Begin

			-- Hier beginnt die eigentliche Schleife und Arbeit. :)
			While ( @Anzahl > 0 ) BEGIN
				SET @UpdateID1 = (
									Select 
										TOP 1 [Updateid]
									FROM 
										[SUSDB].[PUBLIC_VIEWS].[vUpdate]

									where 
										DefaultTitle like '%edge-Dev%' 
										OR 
										DefaultTitle like '%edge-Beta%' 
										OR 
										DefaultTitle like '%edge-stable%x86%'
										OR
										DefaultTitle like '%edge-stable%ARM64%'
									)
					-- Update ablehnen.	Die Stored Procedure spDeclineUpdate ist im Original bei jedem WSUS in der SUSDB dabei.
					EXEC [SUSDB].[dbo].[spDeclineUpdate] @UpdateID1;
					-- Update löschen. Die Stored Procedure spDeleteUpdateByUpdateID ist im Original bei jedem WSUS in der SUSDB dabei.
					EXEC [SUSDB].[dbo].[spDeleteUpdateByUpdateID] @UpdateID1;
					-- Von der Gesamt Anzahl abziehen.
					SET @Anzahl-=1
			END

			IF( @Anzahl > 0 )
				GOTO Start
			ELSE
				--Wenn es keine Edge Versionen zum Ablehnen gibt, wird die SP/das Script verlassen.
			RETURN
		END

 

  • Thanks 2

Share this post


Link to post

mal ne Frage zum Script ... wenn ich das über den Master-WSUS laufen lasse, fliegen die Updates dann bei der Replikation der Standort-WSUS Server mit dem Master dort auch raus, oder muss man das Script an jedem Standort laufen lassen?

Share this post


Link to post

Es sollten natürlich anschließend die Änderungen vom Replica gezogen werden, d.h. die Edge Updates müssen auch auf den Replicas nach der Synchronisierung verschwinden.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


Werbepartner:



×
×
  • Create New...