H Обновляем Skype 8 без участия администратора в черновиках Из песочницы

Со времен выхода ПО Skype восьмой версии многие столкнулись с проблемой обновления в случае если конечный пользователь не имеет прав на установку приложений в системе. Обновляется он достаточно часто и естественно требует от рядовых пользователей ввод данных Администратора через UAC. Поиск в интернете приводит ко не совсем удобным для админа способам:

  • Повышение прав пользователя до Администратора? Не вариант, это в большинстве случаев приводит к тому, что из решения одной проблемы со Скайп Вы можете нажить себе множество других проблем из-за неграмотности рядового пользователя (а их неграмотных большинство, это статистика)
    !
  • Использование встроенной в Windows команды ‘runas’ не совсем подходит. При ее использовании все равно необходим пароль, а при использовании ключа /savecred Вы делаете огромную дыру в безопасности своей системы!
  • Можно использовать сторонний софт, что то вроде AdmiLink Алексея Курякина, или ExecAs. Как вариант, но не совсем удобно распространять дополнительное ПО если у Вас большое количество рабочих станций в сети!
  • Отключить обновление Скайп. Компания Microsoft известа и тем, что добровольно принудительно заставляет пользоваться свежими версиями ПО и здесь встает вопрос времени, сколько проработает программа неактуальной версии!
  • Компания Microsoft не рекомендует использовать домашнюю версию Скайп в корпоративной среде и мило предлагает перейти на платную версию Скайп для Бизнеса!

Поехали… Имеем установленный Скайп 8 версии, при очередной попытке запуска cтановится понятно, что Скайп закачивает exe-инсталятор в папку, где размещаются данные приложений того пользователя от которого выполнен запуск Скайп: Создаем bat-файл:

echo off  set SKYPE=  :: Поиск 'exe' файла  for /f "tokens=*" %%i in ('where /R %HOMEDRIVE%Users Skype-Setup.exe') do (set SKYPE=%%i)  :: Проверка переменной на "пустоту" (если файл не найден) if "%SKYPE%"=="" goto quit  :: Запуск инсталятора с ключом /silent "%SKYPE%" /silent  :: Удаляем 'exe' файл чтобы избежать циклическую установку одной и той же версии при запуске сценария (сам Скайп его не удаляет после обновления) del "%SKYPE%" /F /Q  :: Завершаем процесс skype.exe от админа, автоматом запускаемый после обновления taskkill /F /IM skype.exe  :quit exit 

Суть проста — сценарий ищет файл Skype-Setup.exe. В случае работы нескольких пользователей в одной системе, мы не знаем в каком профиле лежит инсталятор, поэтому ищем его в папке где хранятся все профили пользователей (справедливо для Windows Vista и выше, для Windows XP путь размещения данных приложений другой). Если Вы знаете конкретного пользователя замените значение переменной SKYPE на «%HOMEDRIVE%UsersAppdataRoamingMicrosoftSkype for DesktopSkype-Setup.exe», я лишь привел обобщенный пример. Записываем результат команды ‘where’ (путь включая имя файла) в переменную SKYPE, запускаем его добавляя ключ /silent для режима «тихой» установки. Запускаем встроенный планировщик заданий от админа и помещаем в расписание выполнение созданного bat-файла следующим образом: В моем случае доменная сеть и несколько сотен рабочих станций, распространение bat и настройку задания в планировщике выполнена с помощью групповых политик в домене. Я настроил триггер на выполнение при запуске компьютера, вполне достаточно. Для удобства можно создать ярлык на рабочем столе пользователя для ручного запуска задания руководствуясь вот этой статьей. Способ актуален для Windows Vista/7, в Windows 10 ПО Skype является универсальным APPX-приложением, для обновления которых прав Администратора не требуется.

Как Вы уже знаете, 1 сентября 2018 года будет прекращена поддержка Skype 7.xx (Skype Classic), в связи с чем всем пользователям мессенджера рекомендуется обновить его до версии 8.xx. Если у Вас несколько компьютеров, разумнее всего обновить Skype вручную, в противном случае имеет смысл автоматизировать развертывание мессенджера на всех необходимых рабочих станциях. Как решить данную задачу в пределах домена Active Directory с учетом того, что официальные MSI-пакеты Skype больше не выпускаются?

Развертывание Skype без MSI-пакетов

Как и в случае Mozilla Thunderbird, Mozilla Firefox и OpenOffice инсталлятор Skype поддерживает режим «тихой» установки, позволяющий организовать установку и обновление мессенджера на множестве компьютеров, работающих под управлением любых операционных систем семейства Microsoft Windows, соответствующих системным требованиям (следует отметить, что вопреки официальной информации, инсталлятор Skype не работает в среде Microsoft Windows XP SP3 со всеми существующими обновлениями, включая Microsoft Internet Explorer 8). Как Вы уже догадались, для автоматизации развертывания мессенджера в пределах домена Active Directory в очередной раз будет достаточно подготовить единственный сценарий «тихой» установки Skype и назначить его сценарием запуска компьютера с помощью любого объекта групповой политики (далее — GPO), действие которого распространяется на соответствующие рабочие станции. С одной стороны, все делается по очень привычному сценарию, с другой — всегда имеются нюансы, которые стоит учитывать.

Общие сведения об инсталляторе Skype

Инсталлятор последней версии мессенджера, представляющий из себя исполняемый файл с именем Skype-НомерВерсии.exe
, всегда доступен для загрузки на соответствующей странице официального сайта. В связи с тем, что мессенджер является 32-разрядным приложением, указанный файл подойдет для установки и обновления Skype на всех компьютерах, не зависимо от разрядности установленных на них операционных систем. Как и во всех подобных ситуациях Вам нужно загрузить и сохранить инсталлятор мессенджера в общей папке, доступной для чтения Всем
на уровне файловой системы NTFS и на уровне общей папки. По умолчанию процедура «тихой» установки Skype обеспечивает инсталляцию мессенджера в папку %ProgramFiles%MicrosoftSkype for Desktop
в среде 32-разрядных операционных систем или %ProgramFiles (x86)%MicrosoftSkype for Desktop
— в среде 64-разрядных, а также последующее добавление соответствующих ярлыков на Рабочий стол
и в меню Пуск
. Для выполнения такого типа установки мессенджера необходимо запустить его инсталлятор с ключами /VERYSILENT и /NORESTART
, первый из которых выключает отображение каких-либо окон, а второй запрещает перезагрузку операционной системы. Если на компьютере установлен Skype версии ≤ 7.41, то процедура «тихой» установки инсталлирует мессенджер версии 8.xx параллельно со старым, при наличии более ранней версии 8.xx — обновит его. В связи с этим перед переходом на Skype 8.xx следует удалить с рабочих станций мессенджер версии ≤ 7.41. Также нужно отметить, что при переходе с классического Skype на версию 8.xx и при последующих обновлениях мессенджера процедура «тихой» установки никак не влияет на настройки пользователей, хранящиеся в папках %APPDATA%Skype
пользовательских профилей.

Сценарий «тихой» установки Skype

Как и в большинстве подобных случаев сценарий «тихой» установки Skype должен проверять, что мессенджер разворачиваемой версии не был установлен ранее, и, если приложение еще не установлено или имеет не совпадающую с разворачиваемой (более старую) версию, запускать процедуру «тихой» установки. В нашем случае для выяснения версии Skype применяется утилита командной строки WMI — wmic (она доступна во всех современных операционных системах семейства Microsoft Windows), выполняющая запрос версии исполняемого файла мессенджера (возьмите на заметку этот способ получения информации о версии файлов, он пригодится Вам для организации «тихой» установки любых приложений, которые не добавляют соответствующие сведения в реестр, например, QIP’а), разрядность операционной системы определяется по значению стандартной переменной окружения PROCESSOR_ARCHITECTURE
, для поиска строки используется команда find
с последующим анализом кода ее завершения ERRORLEVEL
. С учетом всех перечисленных особенностей сценарий «тихой» установки мессенджера InstallSkype.cmd
имеет следующий вид (обязательно учтите, что применение двойных бекслешей в выделенных строках является обязательным
):

 set VERSION=8.27.0.85 if %PROCESSOR_ARCHITECTURE% == x86 (   set FILENAME="C:\Program Files\Microsoft\Skype for Desktop\Skype.exe" ) else (   set FILENAME="C:\Program Files (x86)\Microsoft\Skype for Desktop\Skype.exe" ) wmic datafile where name=%FILENAME% get version | find "%VERSION%" if ERRORLEVEL 1 \local.company.comSHARESPACKAGESSkype-%VERSION%.exe /VERYSILENT /NORESTART 

Как Вы уже поняли, значение переменной окружения VERSION
, заданное в первой строке, должно совпадать с версией инсталлятора мессенджера, используемого в настоящий момент. Например, для установки Skype версии 8.27.0.85
и обновления устаревших мессенджеров до этой версии в соответствующей общей папке должен присутствовать инсталлятор Skype-8.27.0.85.exe
, и переменная окружения VERSION
должна иметь значение 8.27.0.85
. Если Вы пожелаете перейти, например, на мессенджер версии 8.28.76.42
(на момент написания статьи данная версия Skype пребывала в статусе предварительной), придется всего лишь загрузить в соответствующую общую папку инсталлятор Skype-8.28.76.42.exe
и изменить значение переменной окружения VERSION
на 8.28.76.42
. Конечно же, после этого можно спокойно удалить ставший устаревшим инсталлятор Skype-8.27.0.85.exe
, который больше не понадобится.

Массовая «тихая» установка Skype

Последним этапом автоматизации установки и обновления Skype в домене Active Directory является назначение сценария InstallSkype.cmd
сценарием запуска компьютера с помощью любого существующего или созданного исключительно для развертывания мессенджера GPO, действие которого распространяется на все необходимые рабочие станции. Для того чтобы ограничить область действия выбранного GPO компьютерами с операционными системами от Microsoft Windows 7 до Microsoft Windows 8.1 (у нас нет компьютеров с Windows Vista, поэтому я про нее «забыл»), удобнее всего использовать WMI-фильтр с запросом:

 SELECT * FROM Win32_OperatingSystem WHERE (Version LIKE "6.1%" OR Version LIKE "6.2%" OR Version LIKE "6.3%") AND ProductType="1" 

После нацеливания выбранного GPO на нужные рабочие станции следует добавить в его список Конфигурация компьютера Политики Конфигурация Windows Сценарии Автозагрузка
сценарий InstallSkype.cmd
. После окончания распространения групповой политики и перезагрузки соответствующих компьютеров на них будет установлен или обновлен мессенджер Skype, при этом никто, кроме Ваших коллег по IT-отделу, не заметит ничего «подозрительного».

Заключение

Я надеюсь, что данная инструкция поможет Вам надолго забыть про развертывание Skype в «ручном» режиме, и Вы сможете потратить освободившееся время на решение более интересных задач. Как только появится свободное время, я постараюсь рассказать Вам про другие способы автоматизации установки, обновления и настройки популярного программного обеспечения, для которого не выпускаются MSI-пакеты.

Задайте вопрос
Быстрый доступ
Администрирование клиентских ОС Windows

 > 

Администрирование Windows 7
  • Вопрос

  • Здравствуйте. Имеется домен, многие пользователи используют skype (не 
    business
    ).

    После обновления skype до 8-ой версии, он начал требовать обновить его каждую неделю, а то и чаще.

    Естественно skype требует ввод данных администратора домена.

    Возможно ли дать права на обновление skype рядовому пользователю???

    Например через GPO AD или batvbs положенный в autorun. 

    Может есть параметр командной строки позволяющий запустить обновление?

    «C:Program Files (x86)MicrosoftSkype for DesktopSkype.exe» /?       #не дало результата

    OS Windows 7 pro x86 & x64

    • Изменено
      7 февраля 2018 г. 9:22
      Добавление
    7 февраля 2018 г. 9:19
    Ответить
    |
    Цитировать

Ответы

  • вам ключи нужно у инсталятора спрашивать. Обновлять можно скорее всего через wsus, sccm, скрипты или политики, но в последних 3х вариантах вам нужно будет качать новый дистрибутив как только он будет выходить и распространять его централизованно.

    права скорее всего выдать только на скайп не получится, но что бы быть уверенным наверняка стоит исследовать процесс установки — возможно будеет достаточно прав на каталог и ветку реестра (можно раздать через политику), но учтите что это потенциальная дыра в безопасности

    The opinion expressed by me is not an official position of Microsoft

    • Предложено в качестве ответа
      21 февраля 2018 г. 10:37
    • Помечено в качестве ответа
      26 февраля 2018 г. 21:29
    8 февраля 2018 г. 5:52
    Ответить
    |
    Цитировать

Все ответы

  • вам ключи нужно у инсталятора спрашивать. Обновлять можно скорее всего через wsus, sccm, скрипты или политики, но в последних 3х вариантах вам нужно будет качать новый дистрибутив как только он будет выходить и распространять его централизованно.

    права скорее всего выдать только на скайп не получится, но что бы быть уверенным наверняка стоит исследовать процесс установки — возможно будеет достаточно прав на каталог и ветку реестра (можно раздать через политику), но учтите что это потенциальная дыра в безопасности

    The opinion expressed by me is not an official position of Microsoft

    • Предложено в качестве ответа
      21 февраля 2018 г. 10:37
    • Помечено в качестве ответа
      26 февраля 2018 г. 21:29
    8 февраля 2018 г. 5:52
    Ответить
    |
    Цитировать
  • Вам удалось «побороть» проблему ??

    http://odarchuk.com

    25 мая 2018 г. 6:56
    Ответить
    |
    Цитировать
  • Вам удалось «побороть» проблему ??

    http://odarchuk.com

    на itninya (4я ссыль в гугле по запросу ‘skype silent install’) говорят о том что при распаковке exe файла полного установщика есть msi который без проблем ставиться в тихую как любой (практически) msi

    The opinion expressed by me is not an official position of Microsoft

    25 мая 2018 г. 9:14
    Ответить
    |
    Цитировать
  • на itninya (4я ссыль в гугле по запросу ‘skype silent install’) говорят о том что при распаковке exe файла полного установщика есть msi который без проблем ставиться в тихую как любой (практически) msi

    The opinion expressed by me is not an official position of Microsoft

    • Изменено
      30 августа 2018 г. 10:22
    30 августа 2018 г. 10:14
    Ответить
    |
    Цитировать
  • Мир не без добрых людей. Вот здесь предлагается вариант решения через планировщик заданий

    https://sohabr.net/habr/post/422657/

    1 октября 2018 г. 5:20
    Ответить
    |
    Цитировать
Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации