Назад | Перейти на главную страницу

Резервное копирование IIS6 с помощью PowerShell и WMI

Я пытаюсь создать резервную копию IIS6 с помощью PowerShell, я нашел метод, который мне нужен, в WMI IISComputer.BackupWithPassword однако, когда я пытаюсь выполнить его с помощью следующей оболочки PowerShell:

$IISComputer = Get-WmiObject -Namespace "root/MicrosoftIISv2" -Class "IISComputer"
$IISComputer.BackupWithPassword("D:\Backup\Wednesday\", 1, 6, "QUESTTSTS")

Мне представлены:

Exception calling "BackupWithPassword" : "Win32: The parameter is incorrect.

At line:1 char:32

Попробовав различные комбинации скобок, кавычек, флагов и т. Д., Я действительно не смог понять, почему это не работает.

Любые мысли о том, как заставить это работать, я знаю iisback.vbs и другие механизмы для этого. Это как практическое решение проблемы, так и упражнение.

В конце концов я понял это, следующий код работает:

$HIGHEST_VERSION = 9999
$BACKUP_OVERWRITE = 1
$BACKUP_FORCE = 4
$BACKUP_SAVE_FIRST = 2
$Flags = $BACKUP_OVERWRITE -bor $BACKUP_FORCE
$Password = "WhiskyW4i5kyWh1sky"
$IISComputer = Get-WmiObject -Namespace "root/MicrosoftIISv2" -Class "IISComputer"
$result = $IISComputer.BackupWithPassword("ScriptedBackup", $HIGHEST_VERSION, $BACKUP_OVERWRITE, $Password)

Я попытался эмулировать имена переменных из Статья TechNet IisComputer.BackupWithPassword для сравнения. Резервная копия создается в %SYSTEMROOT%\system32\inetsrv\MetaBack названный ScriptedBackup.MD9999 и ScriptedBackup.SC9999 эти два файла можно скопировать в другое место или создать резервную копию с помощью программы резервного копирования.

У меня сейчас нет IIS6 под рукой. Проверь это: http://www.vbsedit.com/scripts/iis/iis6/admin/scr_504.asp

Не похоже, что вы можете «замаскировать» значения, как вы это сделали с 4 + 2 = 6.