Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Powershell Datum der zuletzt eingespielten Patche bei remote Servern ermitteln

Mitglied: bensonhedges

bensonhedges (Level 1) - Jetzt verbinden

20.05.2019 um 12:48 Uhr, 925 Aufrufe, 18 Kommentare, 2 Danke

Hallo,

ich möchte gerne anhand einer Serverliste (bsp. computers.txt) via PS ermitteln,
wann derjeweilige Server zuletzt gepatcht wurde (Liste der installierten Patche sind nicht wichtig).

Wie bekomme ich das möglichst einfach mit Powershell-Mitteln hin?
Würde das Skript gerne mit privilegierten Rechten starten (Domänen-Admin), wie bekomme ich das ins Skript eingebaut?

Danke für Eure Tipps!

Gruß,
der Benson
Mitglied: Pjordorf
20.05.2019 um 13:07 Uhr
Hallo,

Zitat von bensonhedges:
wann derjeweilige Server zuletzt gepatcht wurde (Liste der installierten Patche sind nicht wichtig).
Das wird dir nicht zwingend weiterhelfen, aber wenn eine Maschine 6 Monate in der Ecke stand und sich jetzt ein Patch ausm letzten Jahr zog, ohne das du weisste welches Update es war, kannst du nur davon ausgehen das der Rechner Kontakt mit seinen Elter hatte.

Gruß,
Peter
Bitte warten ..
Mitglied: bensonhedges
20.05.2019 um 13:17 Uhr
Stimmt, da hast Du recht. Dann wäre es sinnvoll, per Skript zu ermitteln, welches das letzte erfolgreich installierte Update war.
Bitte warten ..
Mitglied: Pjordorf
20.05.2019 um 13:21 Uhr
Hallo,

Zitat von bensonhedges:
Stimmt, da hast Du recht. Dann wäre es sinnvoll, per Skript zu ermitteln, welches das letzte erfolgreich installierte Update war.
https://community.spiceworks.com/topic/1965305-get-windows-updates-last- ...

Gruß,
Peter
Bitte warten ..
Mitglied: bensonhedges
20.05.2019 um 13:41 Uhr
Hi Peter,

das Skript pass schon ganz gut, allerdings gibt es Probleme bei dem deutschen Datum, das wird nicht
korrekt angezeigt (Monat/Tag vertauscht):

sort : Ausnahme beim Abrufen von "InstalledOn": "Ausnahme beim Aufrufen von "Parse" mit 1 Argument(en): "Die Zeichenfolge wurde nicht als gültiges DateTime erkannt.""
In Zeile:1 Zeichen:125

... putername $_ | sort installedon)[-1] } >> C:\temp\file.txt

~~~~~~~~~~~~~~~~

Bitte warten ..
Mitglied: bensonhedges
20.05.2019 um 13:42 Uhr
Das Skript sieht aktuell so aus:

Bitte warten ..
Mitglied: Spanish
20.05.2019 um 13:52 Uhr
Hola,

Zitat von bensonhedges:
Das Skript sieht aktuell so aus:
Lass doch mal das InstalledOn ganz weg. Es gibt auch Updates die keinerlei Datum haben.

Besten Gruß,
Spanish
Bitte warten ..
Mitglied: bensonhedges
20.05.2019 um 13:55 Uhr
Hallo Spanish,

das bringt mir leider nichts, da ich ermitteln möchte, _wann_ das letzte Update auf dem jeweiligen Server
installiert worden ist.

BG,
Benson
Bitte warten ..
Mitglied: Spanish
20.05.2019 um 13:58 Uhr
Hola,

Zitat von bensonhedges:
das bringt mir leider nichts, da ich ermitteln möchte, _wann_ das letzte Update auf dem jeweiligen Server
Ich meinte ja auch nur weil du unter anderem
sort : Ausnahme beim Abrufen von "InstalledOn": "Ausnahme beim Aufrufen von "Parse" mit 1 Argument(en): "Die Zeichenfolge wurde nicht als gültiges DateTime erkannt.""
In Zeile:1 Zeichen:125
bekommst. Ich bin aber nicht der Powershellexperte.

Besten Gruß,
Spanish
Bitte warten ..
Mitglied: bensonhedges
20.05.2019 um 14:05 Uhr
Hi Peter,

danke, den Link, kenne ich ja schon, aber da steht leider nicht die Lösung zum Problem.
Das Datum wird einfach nicht korrekt ausgegeben. Ansonsten reicht die Ausgabe aus.

Gruß,
benson
Bitte warten ..
Mitglied: bensonhedges
20.05.2019 um 14:28 Uhr
Dies könnte die Lösung sein:

http://joekadev.de/powershell-abfrage-der-letzten-windows-update-instal ...

Dort wird das Datum auch korrekt ausgegeben.
Da ich in PS nicht fit bin, wie kann ich eine Schleife drumrum bauen, damit eine .txt eingelesen wird und
alle die Server einzeln geprüft werden?

Hier das Skript von joekadev.de :

Bitte warten ..
Mitglied: SaschaRD
20.05.2019, aktualisiert um 15:02 Uhr
Hallo,
Ansonsten hilft auch Meister Google-Hupf

Nur das Datum:
Gruß, Sascha
Bitte warten ..
Mitglied: bensonhedges
20.05.2019 um 15:39 Uhr
Hi Sascha,

danke Dir! Ich hatte ein anderes Skript gemeint, das würde mir ausreichen, nur da bekomme ich die Schleife nicht herumgebastelt

Dieses meine ich, wo ich gerne ein .txt-File einlesen möchte:

Gruß,
Benson
Bitte warten ..
Mitglied: SaschaRD
21.05.2019 um 09:33 Uhr
Hallo @bensonhedges

das Einlesen von Dateien ist über Get-Content (kurz gc) möglich.
Dann wird das Ganze noch etwas umgestellt (Function entfernt) und mit einem hübschen Schleifchen drum herum versehen und schon initiiert diese über alle Computernamen welche sich in der Textdatei befinden.

Gruß, Sascha
Bitte warten ..
Mitglied: MarcoG
21.05.2019 um 11:02 Uhr
Ich kann dir hier nur zur einer Inventarisierungslösung wie lansweeper raten.
Damit bekommt ihr alle Maschinen auch wirklich in den Report. Mit SQL könnt ihr euch
Custom Reports bauen. Hab dazu mal was zu Windows updates geschrieben:

Vielleicht macht es dir das leichter.
https://www.protoncode.de/lansweeper-report-windows-updates/

Nein, ich bekomme von Lansweeper keine Provision ^^
Bitte warten ..
Mitglied: bensonhedges
23.05.2019 um 11:54 Uhr
Hallo Sascha,

vielen Dank für das Schleifchen

Bei mir kommt aber leider ein Fehler:

Es ist nicht möglich, eine Methode für einen Ausdruck aufzurufen, der den NULL hat.
In Zeile:8 Zeichen:5

$KeyValue = $regkey.GetValue(”LastSuccessTime”)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : InvalidOperation: ( [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull

pc0001 -
---

Hast Du eine Idee, was das sein kann. In der Hostname.txt steht ein Eintrag (pc0001).

Gruß,
benson
Bitte warten ..
Mitglied: bensonhedges
03.06.2019 um 12:37 Uhr
Kann mir jemand bei der Fehlereingrenzung helfen? Bin leider nicht so fit in Powershell..

LG,
Benson
Bitte warten ..
Mitglied: MarcoG
03.06.2019 um 15:45 Uhr
Ist $regkey initialisiert? Wenn $regkey keinen Wert hat (NULL) gibts diesen Fehler.
Bitte warten ..
Mitglied: MarcoG
LÖSUNG 03.06.2019 um 15:52 Uhr
Also ich bin mal her gegangen und hab eine Workstation in hostname.txt gelegt und bin zeile für zeile durchgegangen:

$computers = gc C:\temp\hostname.txt

#Hier spare ich mir deine Schleife und versuche das ganze mit dem ersten Objekt aus Computers
$computer = $computers[0];


$key = "SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\Results\Install"
$keytype = [Microsoft.Win32.RegistryHive]::LocalMachine
$RemoteBase = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey($keytype,$computer)

und dann kommt die erste Exception bei mir:
Ausnahme beim Aufrufen von "OpenRemoteBaseKey" mit 2 Argument(en): "Der Netzwerkpfad wurde nicht gefunden.
"
In Zeile:1 Zeichen:1

$RemoteBase = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey($keyty ...

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : NotSpecified: ( [], MethodInvocationException
+ FullyQualifiedErrorId : IOException


Danach hat $regkey einen NULL Wert weil $RemoteBase nichts zurückgibt. Musst mal schauen wo es in dieser Zeile hängt.
Die NULL-Reference Exception scheint ein folgefehler zu sein
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Powershell - Seitenanzahl aus PDF ermitteln

gelöst Frage von Pat.batBatch & Shell9 Kommentare

Hallo zusammen, ich versuche gerade ein kleines Skript zu schreiben, das mir die Seitenanzahl der PDFs in einem Ordner ...

Batch & Shell

Powershell Monthcalendar Datum Format ändern

gelöst Frage von xpxy15Batch & Shell4 Kommentare

Hallo Zusammen Wie kann ich bei monthcalendar Windowsforms den Format ändern. Ich brauche es in dieser Format dd.mm.yyyy. Ich ...

Microsoft

Mit Powershell Datum aus Ordnername als Datum extrahieren

gelöst Frage von YotYotMicrosoft11 Kommentare

Moin! ja, ich habe bereits gesucht und auch ein paar Fortschritte gemacht, da ich aber außerhalb von Exchange gerade ...

Batch & Shell

Powershell - Umrechnung Kalenderwoche zu Datum

gelöst Frage von KraemerBatch & Shell9 Kommentare

Moin zusammen, irgendwie scheint mir der richtige Suchbegriff zu fehlen. Ich suche nach einer Möglichkeit, eine Kalenderwoche in ein ...

Neue Wissensbeiträge
Virtualisierung

VEEAM Instant VM Recovery Datenverlust möglich

Information von sabines vor 8 StundenVirtualisierung

Wer instant VM Recovery unter Veeam nutzt, sollte seine Installation überprüfen. In manchen Fällen könnte es zu Datenverlust kommen, ...

Administrator.de Feedback
Hinweise auf Dienstleister oder auf Suchmaschinen
Information von Frank vor 4 TagenAdministrator.de Feedback71 Kommentare

Lieber User, Admins und Moderatoren, aus gegebenen Anlass möchte ich zwei Dinge endgültig klarstellen und für die Nachwelt festhalten: ...

Router & Routing

PfSense 2.4 IPSec VPN mobile Clients Phase 2 wird plötzlich nicht mehr aufgebaut - So einfach war die Lösung

Tipp von the-buccaneer vor 4 TagenRouter & Routing9 Kommentare

Moinsen! Nachdem ich mir hierbei nen Wolf gesucht habe, möchte ich doch die Welt an dieser simplen Lösung teilhaben ...

Humor (lol)
Wählscheiben Telefon
Information von brammer vor 5 TagenHumor (lol)4 Kommentare

Hallo, Mal wirkliche eine nette Spielerei brammer

Heiß diskutierte Inhalte
Backup
VMware ESXi Cluster Backup
Frage von ADRNEXBackup23 Kommentare

Hallo zusammen, Ich habe eine vmware esxi cluster Umgebung mit ca. 20TB Daten, die auf einem SAN liegen. Es ...

Netzwerkmanagement
Softwareverteilung für kleines Unternehmen mit sehr gemixter Hardware
gelöst Frage von BavarianSysadNetzwerkmanagement20 Kommentare

Hallo zusammen^^, ich stehe vor dem Problem das wir im Unternehmen eine Softwareverteilung einführen soll, leider ist dies wie ...

Windows 10
Dell Optiplex 790 Installation Windows 10
gelöst Frage von Ghost108Windows 1016 Kommentare

Guten morgen zusammen, möchte gerne auf meinem Optiplex 790 Windows 10 installieren (Clean Install). Habe das BIOS von Legacy ...

Exchange Server
Exchange 2019 Wildcard geht nicht
Frage von opc123Exchange Server13 Kommentare

Hallo, ich kann mein Wildcard auf dem Exchange keine Dienste zuweisen??