RSS Подписка на статьи RSS Подписка на комментарии Панель инструментов

Блог профессионалов стал частью сайта технической поддержки DocsVision http://support.docsvision.com. Новые материалы будут появляться уже на этом сайте.

Поиск

Ярлыки

авто генерация кода (1) Администрирование DocsVision (60) Атрибутивный поиск (3) База данных (24) Базы знаний (1) Безопасность (1) Бизнес-процессы (20) Блог (2) Вы увидите это первыми (1) Групповые политики (1) Диаграммы (2) Задания (2) Интеграция (2) Карточки DocsVision (14) Конструктор Решений (11) Маркетинг и продажи (4) Навигатор (3) Новое (3) Новости (32) Опрос (4) Опросы DocsVision (4) Оптимизация (3) Отчеты (2) Ошибки (1) Поддержка (14) Полезные ссылки (1) Представления (4) Производительность (5) Разбор полетов (18) Разработка для Workflow (7) разработка карточек (2) Разработка на платформе DocsVision (41) Разработка решений (43) Расширение платформы (1) Расширенные отчеты (9) Решения на платформе DocsVision (6) Сервисы DocsVision (3) Сканеры (3) Справочник сотрудников (1) Справочник типов (1) Установка (1) Утилиты (13) Шлюз в SharePoint (8) Штрихкод (2) Cкрипты карточек (7) DocsVision внутри (1) DocsVision Live (1) FileStream (1) FireFox (2) Opera (1) Powershell (5) Safari (1) SharePoint2007 (1) SharePoint2010 (2) Silverlight (1) UltraViews (1) Vista (1)

Скрипт PowerShell для перезапуска сервисов DocsVision

Зачастую возникает задача перезапуска сервисов DocsVision и IIS. Для этого нужно либо открывать 2 консоли управления, либо останавливать из командной строки все по очереди.
При этом нужно помнить, что если клиенты соединяются по net pipes c Windows сервисом DocsVision Storage Server Service, то останавливать его нужно в последнюю очередь.

Для упрощения задачи можно использовать скрипты на PowerShell для автоматизации процесса.

Скрипты приведены для версии DocsVision 4.1. Для других версий нужно указать другие имена сервисов в массиве $Services

Скачать готовые скрипты

1. Перезапуск сервисов DocsVision и службы IIS

Function SmartStop ([string]$Name, [bool]$RO)
{
$Service = Get-Service -Name $Name
If ($RO -eq $true)
{
If ($Service.Status -eq "Running")
{
write-host ("Stopping:" + $Name)
Stop-Service -Name $Name -force
return $Name
break
}
} else {
write-host ("Stopping:" + $Name)
Stop-Service -Name $Name
return $Name
}
}

$ErrorActionPreference="SilentlyContinue"
$Services=("WFServer41","WWFServer41","DVReportServer41","DVStorageServer41")
$Stopped=@()

$RunningOnly=$false
if ($args)
{
if ($args[0] -eq "-ro")
{
$RunningOnly=$true
write-host ("Restarting only running services")
}
}


foreach ($ServName in $Services) {
[string]$a=SmartStop $ServName $RunningOnly
$Stopped=$Stopped+$a
}

Stop-Process "ExecLogic.exe"
write-host ("IIS restarting")
IISRESET /RESTART

$i=0
while ($Stopped[$i] -ne $null)
{
if ($Stopped[$i] -ne "")
{
write-host ("Starting:" + $Stopped[$i])
Start-Service -Name $Stopped[$i]
}
$i+=1
}

Например, скрипт сохранен в restart-dv.ps1. Есть два варианта использования
>restart-dv1
перезапускает сервисы по порядку

>restart-dv1 -ro
перезапускает, только те сервисы, которые на данный момент активны. Полезно в случаях, когда некоторые из них остановлены вручную.

2. Остановка всех сервисов DocsVision и службы IIS.

$ErrorActionPreference="SilentlyContinue"
$Services=("WFServer41","WWFServer41","DVReportServer41","DVStorageServer41")

foreach ($ServName in $Services) {
write-host ("Stopping:" + $ServName)
Stop-Service -Name $ServName
}
Stop-Process "ExecLogic.exe"

iisreset /STOP

3. Запуск всех сервисов DocsVision и службы IIS.
$ErrorActionPreference="SilentlyContinue"
$Services=("DVStorageServer41","WFServer41","WWFServer41","DVReportServer41")

iisreset /START

foreach ($ServName in $Services) {
write-host ("Starting:" + $ServName)
Start-Service -Name $ServName
}

Помните про установку политики безопасности скриптов >Set-ExecutionPolicy Читать дальше

1 коммент.:

iromaten комментирует...

реализовано батником

@rem стопаем службы ДВ
net stop "DVStorageServer45"
net stop "WFServer45"
@rem стопаем службу шарепоинта
net stop "SPTimerV3"
@rem стопаем службу веб публикации
net stop "W3SVC"
@rem стопаем скуль агент и скульсервер
net stop "*ИМЯ СЛУЖБЫ АГЕНТА*"
net stop "*ИМЯ СЛУЖБЫ СЕРВЕРА*"
@rem ресет иис
iisreset /noforce
@rem запускаем службы в обратном порядке
net start "*ИМЯ СЛУЖБЫ СЕРВЕРА*"
net start "*ИМЯ СЛУЖБЫ АГЕНТА*"
net start "W3SVC"
net start "SPTimerV3"
net start "WFServer45"
net start "DVStorageServer45"

Отправить комментарий