Datei Backup und Log Eintrag

Powershell Datensicherung mit Event Log

Create Backup with Powershell

Mit diesem Skript erstellt ihr eine Dateisicherung von z.B. nur Text-Dateien und das rekursiv. Nach erfolgtem Backup wird ein Event in das Anwendungs-Protokoll geschrieben. Der Dateifilter kann natürlich angepasst oder entfernt werden.

Das Skript kopiert von einer lokalen Quelle auf ein Netzlaufwerk. Ist die angegebene Freigabe nicht vorhanden wird diese zuvor angelegt, genauso wie die Eventquelle.

Powershell anzeigen

$PS1Path = “D:\Daten1”
$ShareUserName = “Daten1”
$PS1SharePath = “\\Worker\Daten1Backup”
$PSEventSourceName = “Mein Daten Backup”

if (![System.Diagnostics.Eventlog]::SourceExists($PSEventSourceName))
{
New-EventLog -LogName Application -Source $PSEventSourceName
}
if (-Not (Get-PSDrive -Name PS1Share -ErrorAction SilentlyContinue))
{
New-PSDrive -Name PS1Share -Root $PS1SharePath -PSProvider FileSystem -Credential $ShareUserName | Out-Null
}
Write-EventLog -LogName Application -Source $PSEventSourceName -EntryType Information -EventId 100 -Message “Backup wird gestartet.”

Write-Verbose -Message “Backup wird gestartet.”

$CopyResult = Get-ChildItem -Path $PS1Path -File -Include *.txt -Recurse | Copy-item -Destination PS1Share: -PassThru

Write-EventLog -LogName Application -Source $PSEventSourceName -EntryType Information -EventId 100 -Message “Backup wurde abgeschlossen – $($CopyResult.Count) Dateien wurden gesichert.”

Write-Verbose -Message “Backup wurde beendet”

$VerbosePreference = “SilentlyContinue”