From 031d83b7904efa423cc0efa2330c1585c3611fe3 Mon Sep 17 00:00:00 2001 From: smolkik_adm Date: Fri, 4 Sep 2026 03:47:18 +0000 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20Veeam=5FAllBackups=5FFull.ps1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Veeam_AllBackups_Full.ps1 | 64 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 Veeam_AllBackups_Full.ps1 diff --git a/Veeam_AllBackups_Full.ps1 b/Veeam_AllBackups_Full.ps1 new file mode 100644 index 0000000..85ece3e --- /dev/null +++ b/Veeam_AllBackups_Full.ps1 @@ -0,0 +1,64 @@ +# Подключаем модуль Veeam +Add-PSSnapIn -Name VeeamPSSnapIn -ErrorAction SilentlyContinue + +$AllJobs = @() + +# 1. Обычные задания резервного копирования +Get-VBRJob | ForEach-Object { + $Job = $_ + $JobObjects = Get-VBRJobObject -Job $Job -ErrorAction SilentlyContinue + + if ($JobObjects) { + $JobObjects | ForEach-Object { + $AllJobs += [PSCustomObject]@{ + JobName = $Job.Name + JobCategory = "Classic Backup" + JobType = $Job.JobType + ObjectName = $_.Name + ObjectType = $_.Type + Enabled = $_.Enabled + } + } + } else { + $AllJobs += [PSCustomObject]@{ + JobName = $Job.Name + JobCategory = "Classic Backup" + JobType = $Job.JobType + ObjectName = "No objects" + ObjectType = "N/A" + Enabled = $null + } + } +} + +# 2. Политики приложений (Application Backup Policies) +Get-VBRApplicationBackupJob | ForEach-Object { + $AllJobs += [PSCustomObject]@{ + JobName = $_.Name + JobCategory = "Application Policy" + JobType = $_.Type # OracleRMAN, SAPHANA, MSSQL и т.д. + ObjectName = "Application Policy" + ObjectType = "N/A" + Enabled = $_.Enabled + } +} + +# 3. Автономные задания плагинов +Get-VBRPluginJob | ForEach-Object { + $AllJobs += [PSCustomObject]@{ + JobName = $_.Name + JobCategory = "Plugin Job" + JobType = $_.JobType # Backup или BackupCopy + ObjectName = "Plugin Job" + ObjectType = "N/A" + Enabled = $_.Enabled + } +} + +# Экспортируем всё в один CSV +$AllJobs | Export-Csv -Path "C:\Veeam_AllBackups_Full.csv" -NoTypeInformation -Encoding UTF8 -Delimiter ";" + +Write-Host "✅ Полный отчет сохранен в C:\Veeam_AllBackups_Full.csv" -ForegroundColor Green +Write-Host " - Classic Backup: $(($AllJobs | Where-Object { $_.JobCategory -eq 'Classic Backup' }).Count) записей" +Write-Host " - Application Policies: $(($AllJobs | Where-Object { $_.JobCategory -eq 'Application Policy' }).Count) записей" +Write-Host " - Plugin Jobs: $(($AllJobs | Where-Object { $_.JobCategory -eq 'Plugin Job' }).Count) записей" \ No newline at end of file