Jump to content

itsa

Members
  • Gesamte Inhalte

    46
  • Registriert seit

  • Letzter Besuch

Reputation in der Community

0 Neutral

1 Benutzer folgt diesem Benutzer

Über itsa

  • Rang
    Newbie

Letzte Besucher des Profils

371 Profilaufrufe
  1. WSUS und GPO läuft, hier geht es nur um das erzwingen der Updates für schnellere Bereitstellung der Server.
  2. Du meinst aus dem $Computers ein weiteres Array Feld betanken? Diese Variable verliert aber in der nächsten Foreach Schleife Ihre Werte weil diese ja neu betankt wird, oder sehe ich das falsch?
  3. In die generierten Variablen soll der Wert $WU_Status1 importiert werden damit am Ende geprüft werden kann ob der PC neuzustarten ist oder nicht. Und daher muss jeder Update Status genau mit jedem PC übereinstimmen welche am Schluss ausgewertet werden soll. $Computers = Get-Content -Path "c:\tmp\Test.txt" foreach($Computer in $Computers ){ New-Variable -Name "PC_number_$i" $i ++ } ############################################################# ######## Vorbereitungen - Kopieren und importieren ###### foreach ($Computer in $Computers){ #### $testpath = "\\" + $computer + "\C$\Windows\System32\WindowsPowerShell\v1.0\Modules\" [string]$Copypath = $testpath $item_path = $testpath + "PSWindowsUpdate\" $WU_Module_path = "\\" + $computer + "\C$\Windows\System32\WindowsPowerShell\v1.0\Modules\PSWindowsUpdate" $Path_result = Test-Path -Path $WU_Module_path # Modul importieren falls es nicht vorhanden ist if($Path_result -eq $false){ copy "C:\Temp\PSWindowsUpdate\" $testpath copy "C:\Temp\PSWindowsUpdate\*" $item_path Write-Host "Kopieren von WU-Update abgeschlossen" + $Computer Invoke-Command -ComputerName $Computer -ScriptBlock { Import-Module PSWindowsUpdate } Write-Host $Computer + "Modul importiert" } } ############################################################# ############################################################# ############# Anstarten der Updates auf allen PC's ########## $i = 1 foreach($Computer in $Computers){ $WU_Status1 = Invoke-Command -ComputerName $Computer -ScriptBlock { Get-WUInstall -ListOnly} PC_number_$i = $WU_Status1 if(!$WU_Status1){ $Computer + " keine Updates Verfügbar, fahre mit nächsten Computer fort" continue } Invoke-wuinstall -ComputerName $Computer -Script {Get-WUInstall -AcceptAll -AutoReboot -IgnoreUserInput} -Confirm:$false $Computer + " Update Installation 1 angestoßen" $i++ } # Warte 10 Minuten "Warte 10 Minuten" Start-Sleep -Seconds 120 ######################################################################################################### ############### Prüfe ob die PC's einen ausstehenden Neustart haben, falls ja Neustart durchführen ##### foreach ($Computer in $Computers){ $counter = 1 do{ $WU_Status2 = Invoke-Command -ComputerName $Computer -ScriptBlock { Get-WUInstall -ListOnly} #$Installer_Status = Invoke-Command -ComputerName $Computer -ScriptBlock {Get-WUInstallerStatus} $Computer + " Installer Status: " + $WU_Status2 + " Counter: " +$counter # Informativ damit man weiß wo das Skript steht if($WU_Status2){ "WU Status ist: " + $WU_Status2 "Warte 2 Minuten in Schleife zum Überwachen der Updates" Start-Sleep -Seconds 10 } $counter ++ } until((!$WU_Status2) -or ($counter -eq 10)) $reboot_pending = Invoke-Command -ComputerName $Computer -ScriptBlock { Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending"} $Computer + "Neustart ausstehend: " + $reboot_pending # Informativ damit man weiß wo das Skript steht if(($reboot_pending -eq $true) -or ($WU_Status1)){ $Computer + " Startet neu" Restart-Computer -ComputerName $Computer -Force } } # Warte 2 Minuten auf die Server bis Sie die Updates verarbeitet haben "Warte 2 Minuten in Schleife zum Überwachen des Update Status" Start-Sleep -Seconds 120 ######################################################################## ##### Zweite Update Installation ####################################### $i = 1 foreach ($Computer in $Computers){ $WU_Status3 = Invoke-Command -ComputerName $Computer -ScriptBlock { Get-WUInstall -ListOnly} #Update Status abfragen if((!$WU_Status3) -or (!$PC_number_[$i])){ $Computer + " keine Updates bei Installationschritt 2 Verfügbar, fahre mit nächsten Computer fort" $i++ continue } $i++ #$install_result = Invoke-Command -ComputerName $Computer -ScriptBlock {Get-WindowsUpdate} #Update Status abfragen if($WU_Status3){ Invoke-wuinstall -ComputerName $Computer -Script {Get-WUInstall -AcceptAll -AutoReboot -IgnoreUserInput} -Confirm:$false $Computer + " Update Installation 2 angestoßen" } $counter = 1 do{ $WU_Status3 = Invoke-Command -ComputerName $Computer -ScriptBlock { Get-WUInstall -ListOnly} $Computer + " Installer Status: " + $WU_Status3 + " | Counter: " +$counter # Informativ damit man weiß wo das Skript steht if($WU_Status3){ "Warte 2 Minuten in Schleife zum Überwachen des Installer Status" Start-Sleep -Seconds 120 } $counter ++ } until(!$WU_Status3) $reboot_pending = Invoke-Command -ComputerName $Computer -ScriptBlock { Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending"} $Computer + "Neustart ausstehend: " + $reboot_pending # Informativ damit man weiß wo das Skript steht if(($reboot_pending -eq $true) -or ($WU_Status3)){ $Computer + " Startet neu" Restart-Computer -ComputerName $Computer -Force } }
  4. Hi, Und wie rufe ich die Variablen wieder auf ohne die direkt zu benennen? In meinen folgenden foreach Schleifen wird auch wieder per Zähler $i die genaue ID der Computer aufgerufen welche an den Hauptvariablennamen angefügt werden muss, um diese aufzurufen.
  5. Hallo Zusammen, @BOfH_666 das auslesen ist ja kein Problem, ich möchte folgenden Programmcode gerne die einzelnen Variablen wieder aufrufen und mit Werten befüllen aber ohne das ich diese händisch angebe. Beim deklarieren in der Foreach Schleife gebe ich den Hauptnamen mit ( $PC_number_ ) und durch den Zähler ($i) den eindeutigen Namen. Wenn ich diese dann aufrufe geschieht die wieder in einer Forreach Schleife für jeden Computer und hier muss ich exakt an die Variablen ran kommen welche für den speziellen Computer einst generiert worden ist. Das heißt Computer1 in der Text.txt bekommt die $PC_number_1 und den Wert welchen ich rein schreibe ( Anzahl an Windows Updates ) und Computer2 ==> $PC_number_2 etc.pp. Für sowas müsste es doch eine Möglichkeit zum Aufrufen geben. leider funktioniert es mit den bisherigen Methoden nicht welche ich versucht habe. Beste Grüße
  6. Servus, ich steh irgenwie auf dem Schlauch, ich möchte die im nachfolgenden generierten Variablen aufrufen mit einem Platzhalten ähnlich wie sie auch angelegt werden. #Variablen anlegen $i= 1 $Computers = Get-Content -Path "c:\tmp\Test.txt" foreach($Computer in $Computers ){ New-Variable -Name "PC_number_$i" $i ++ } #Variablen ansteuern ohne diese manuell aufzurufen $i = 1 $PC_number_$i #geht nicht "$PC_number"_+"$i" #geht nicht $PC_number_+"$i" #geht nicht Habt ihr hier eine Lösung für mich?
  7. Hallo Zusammen, gibt es in den GPO's die Möglichkeit die Serverauthentifizierung innerhalb vom "Internetexplorer ==> Optionen ==> Inhalte ==> Zertifikate ==> Erweitert ==> Serverauthentifizierung " den Haken zu entfernen. Ich konnte bisher keinen Punkt finden. In den Benutzereinstellungen kann ich bei der Config des IE den Reiter nicht auswählen, er ist leider ausgegraut. Beste Grüße itsa
  8. DFS Filelock deativieren

    Hallo Andre, den Hersteller haben wir schon angeschireben und leider gibt es diese Option nicht, wir verwenden den PDF Editor von der Firma Tracker Software. Einen PDF Reader welcher nur lesend öffnet ist Sumatra PDF dieser schreibt seine zu öffnenden Files in einen Cache von Appdata\Temp allerdings ist dieser auf Grund seiner Sicherheitsupdate Politik keine Option für uns. Und wir benötigen einen Editor. Danke für die Antteilnahme an meinem Thema ich habe mir schon gedacht das es nicht ohne Änderungen an unserem Software Inventar möglich ist. Ich werde das intern mal so weiter geben. Beste Grüße
  9. DFS Filelock deativieren

    Ich habe nicht gesagt das es etwas mit DFS zu tun hat sondern ob es die Möglichkeit gibt hier eine Einstellung vorzunehmen Der Hersteller hat dass schon verneint, dass die Sperre nicht zu umgehen ist. Aber trotzdem danke für die Anteilnahme.
  10. DFS Filelock deativieren

    Guten Morgen, besteht die Möglichkeit am DFS den Filelock auf einen bestimmten Ordner zu deaktivieren? Wir haben einen Ordner mit PDF Dateien von unserer Technik. Wenn Benutzer aus der Produktion die PDF Dateien lesend geöffnet haben können die Kollegen aus der Technik keine Änderungen abspeichern solange wie jemand aus der Firma noch die Datei geöffnet hat. Beste Grüße
  11. Windows-Komponenten/Windows UpdateAusblenden Richtlinie Einstellung Kommentar Automatische Updates konfigurieren Aktiviert Automatische Updates konfigurieren: 4 - Autom. Herunterladen und laut Zeitplan installieren Die folgenden Einstellungen sind nur erforderlich und anwendbar, wenn die Option 4 ausgewählt wurde. Während automatischer Wartung installieren Aktiviert Geplanter Installationstag: 0 - Täglich Geplante Installationszeit: 09:00 Wenn Sie für den geplanten Installationstag "4 - Autom. herunterladen und laut Zeitplan installieren" ausgewählt und einen Zeitplan angegeben haben, können Sie mithilfe der folgenden Optionen Updates auch einmal pro Woche, alle zwei Wochen oder einmal pro Monat suchen lassen: Jede Woche Deaktiviert Erste Woche des Monats Deaktiviert Zweite Woche des Monats Deaktiviert Dritte Woche des Monats Deaktiviert Vierte Woche des Monats Deaktiviert Updates für andere Microsoft-Produkte installieren Deaktiviert Richtlinie Einstellung Kommentar Automatische Updates sofort installieren Aktiviert Automatischen Neustart nach Updates während der Nutzungszeit deaktivieren Aktiviert Nutzungszeit Start: 07:00 Ende: 12:00 Richtlinie Einstellung Kommentar Clientseitige Zielzuordnung aktivieren Aktiviert Zielgruppenname für diesen Computer Test Richtlinie Einstellung Kommentar Die Standardoption "Updates installieren und herunterfahren" im Dialogfeld "Windows herunterfahren" nicht anpassen Deaktiviert Empfohlene Updates über automatische Updates aktivieren Aktiviert Erneut zu einem Neustart für geplante Installationen auffordern Aktiviert Folgenden Zeitraum (in Minuten) warten, bevor zu einem Neustart aufgefordert wird: 180 Richtlinie Einstellung Kommentar Keine Verbindungen mit Windows Update-Internetadressen herstellen Aktiviert Keinen automatischen Neustart für geplante Installationen automatischer Updates durchführen, wenn Benutzer angemeldet sind Aktiviert Neustart für geplante Installationen verzögern Aktiviert Folgenden Zeitraum (in Minuten) warten, bevor ein geplanter Neustart aufgefordert wird: 30 Richtlinie Einstellung Kommentar Nichtadministratoren gestatten, Updatebenachrichtigungen zu erhalten Deaktiviert Nutzungszeitbereich für automatische Neustarts angeben Aktiviert Geben Sie den maximalen Nutzungszeitbereich an: Max. Bereich: 9 Richtlinie Einstellung Kommentar Option "Updates installieren und herunterfahren" im Dialogfeld "Windows herunterfahren" nicht anzeigen Deaktiviert Signierte Updates aus einem Intranetspeicherort für Microsoft-Updatedienste zulassen Aktiviert Softwarebenachrichtigungen aktivieren Deaktiviert Suchhäufigkeit für automatische Updates Aktiviert In folgenden Abständen (Stunden) nach Updates suchen: 1
  12. Hallo Zusammen, wir haben schon ca. 50% unserer Clients auf Windows 10 umgestellt und hatten bisher bei den den Windows 7 & 8 Installationen keine Probleme bei der Installation der Updates. Diese wurden über die GPO so eingestellt, dass die Updates beim Herunterfahren installiert wurden sind. Jetzt ist es bei Windows 10 bisher so gewesen dass wir die GPO so eingestellt haben, dass die Updates herunter geladen wurden sind und vor der Installation die User benachrichtigt werden sollten, dies kann aber nervig sein wenn zwischendurch immer eine Großflächige Meldung kommt das Updates bereit stehen. Daher haben wir es bei Win 10 und den neuen ADMX Files welche es für 1709 gibt so eingestellt das die Updates herunter geladen und laut Zeitplan ( Täglich um 9:00Uhr) installiert werden sollen. Die Updates werden auch herunter geladen aber anstatt das diese installiert werden kommt eine Meldung das "Updates werden automatisch installiert, wenn das Gerät nicht in Gebrauch ist." Leider werden diese aber nicht installiert und ich möchte nicht das die User händisch auf "Jetzt Installieren" drücken müssen. Auch ist nicht ersichtlich wann das Gerät nicht in Gebrauch ist, auch wenn der Rechner die Nacht durchbrummt hat er die Updates nicht installiert. Irgendwas scheint doch hier nicht zu stimmen und ich habe mir bereits einen Wolf probiert. Wie habt Ihr das gelöst bei Windows 10? Beste Grüße itsa
  13. Auf Grund dieser Event Einträge (ID865) machen wir ja unsere Einträge bzw. suchen uns die Exe Dateien aus denen wir Hash werte generieren. Was ich beim Haupteintrag vergessen habe, nach einem Neustart geht wieder alles. Es vergeht auch kein Tag an dem wir nicht irgendwas anpassen müssen, spätestens wenn ein User in einem CAD Programm eine neue Funktion gefunden hat die eine neue Exe angreift.
  14. Hallo Zusammen, wir haben für unsere Unternehmung eine SRP am laufen welche zu 90% auf Hash Regeln besteht und vereinzelte Anwendungen werden per Pfad Regeln freigegeben. Das Ganze funktioniert auch ganz gut, allerdings kommt es Win 7 x64 Pro immer wieder mal dazu das sich an diesen Rechnern gar nichts mehr öffnen lässt. Sogar Programme unter c:\Windows\ welche ja grundsätzlich funktionieren wie der Rechner etc. Unter Win8.1 und Win10 kommt das nicht vor. Habt Ihr eine Idee? Beste Grüße
×