none
Не удаляются отклонённые обновления с WSUS 3.0 SP2 RRS feed

  • Вопрос

  • Здравствуйте, уважаемые коллеги ! Не могу удалить с сервера WSUS утилитой WsusDebugTool отклонённые обновления.

    Предистория такова. Был сервер Windows Server 2003 Enterprise R2 RUS Service Pack2 + WSUS 3.0 SP2. Нужно было провести миграцию на Windows Server 2008 Standard RUS Service Pack 2. На 2008 сервере (он же резервный контроллер домена, DNS и DHCP) была добавлена роль WSUS, сервер настроен как реплика на старый WSUS, синхронизация прошла успешно. Затем на старом сервере останавливаем службы WSUS, копируем файлы SUSDB.mdf и SUSDB_log.ldf, останавливаем службы WSUS на новом сервере, заменяем файлы SUSDB.mdf и SUSDB_log.ldf версиями со старого сервера. Пришлось вручную задать права доступа NTFS на указанные файлы на новом сервере WSUS. После запуска служб WSUS на новом сервере настраиваем синхронизацию с сервера Майкрософт. Миграция была проведена в мае 2011 года. Все обновления, одобрения/правила/группы/учётки компьютеров перенеслись успешно, новый WSUS работает исправно, старый выведен из эксплуатации. На днях пытался почистить базу WSUS утилитой WsusDebugTool.exe /tool:purgeunneedefiles, но ничего не вышло ! Вот что пишет в окне командной строки:

    Running... PurgeUnneededFiles
    Starting a state machine reset...
    State machine reset completed...
    Error processing node: PurgeUnneededFiles
    System.Data.SqlClient.SqlException: При установлении соединения с SQL Server произошла ошибка, связанная с сетью или с определенным кземпляром. Сервер не найден или недоступен. Убедитесь, что имя экземпляра указано правильно и что на SQL Server разрешены удаленные соединения. (provider: Сетевые интерфейсы SQL, error: 26 - Ошибка при обнаружении указанного сервера или экземпляра)
    в System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)...

    и т. д, могу привести полный вывод команды. Точно помню, что на старом WSUS утилитой WsusDebugTool.exe /tool:purgeunneedefiles удалял несколько гигабайт ненужных обновлений. Старый сервер работал на порту 80, новый на 8530, менял порт на стандартный утилитой wsusutil.exe, не помогло. На самом сервере WSUS установлены все обновления + Internet Explorer 8. Других проблем в работе сервера не замечено. Как мне теперь почистить базу WSUS ?

    11 января 2012 г. 16:17

Ответы

  • Результат поиска отражает все имеющиеся обновления, в том числе и отклоненные.

    В Вашем случае необходимо сделать следующее:

    В режиме просмотра отфильтровать (одобрение: одобренные, не вижу смысла отклонять не одобренные обновления), пролистать и отклонить необходимые обновления, естественно это не совсем удобно, но далее можно создать новый "View" отфильтровать по периоду синхронизации (например последняя неделя) и согласно выставленному периоду отклонять обновления. 

    • Помечено в качестве ответа timofeik 13 января 2012 г. 8:05
    13 января 2012 г. 5:51
    Отвечающий

Все ответы

  •  WSUS 3.0 SP2. 

    Как мне теперь почистить базу WSUS ?

    WsusDebugTool предназначена для использования с WSUS v2, 

    используйте  Server Cleanup Wizard


    11 января 2012 г. 18:34
    Отвечающий
  • Однако на старом сервере тоже был WSUS 3.0 SP2, и утилита WsusDebugTool работала !

    Server Cleanup Wizard не может физически удалить из базы WSUS те обновления, которые были скачены на сервер, а затем отклонены.

    • Предложено в качестве ответа a.antonets 24 декабря 2014 г. 6:21
    12 января 2012 г. 6:22
  • Однако на старом сервере тоже был WSUS 3.0 SP2, и утилита WsusDebugTool работала !

    2k8 то Ваш не x64, случаем? WsusDebugTool.exe не работает на x64 системах.

    Server Cleanup Wizard не может физически удалить из базы WSUS те обновления, которые были скачены на сервер, а затем отклонены.

    Cleanup Wizard, удаляет файлы отклоненых обновлений, тем самым освобождая место на драйве, НО не удаляет их представления в консоли(метаданные), если для Вас так ВАЖНО, чтобы в консоли они не отражались, используйте фильтр,

    не вижу здесь никакой проблемы.

    12 января 2012 г. 7:14
    Отвечающий
  • Нет, 2k8 не x64. На новом WSUS я отклонил множество обновлений для платформы ia64 (таких компов/серверов у нас просто нет, эти хотфиксы не нужны), почистил сервер через Cleanup Wizard, он освободил лишь 19 Mb на диске.

    Возможно ли такое, что я отклонил уже отклонённые обновления ? Поиск обновлений для платформы ia64 осуществлялся стандартной кнопкой "Поиск" в консоли WSUS, режим просмотра - Все обновления, Одобрение: Все, кроме отклонённых, Состояние: Любой. Всё, что нашёл - нажал правой кнопкой мыши - отклонить.

    12 января 2012 г. 14:11
  • Результат поиска отражает все имеющиеся обновления, в том числе и отклоненные.

    В Вашем случае необходимо сделать следующее:

    В режиме просмотра отфильтровать (одобрение: одобренные, не вижу смысла отклонять не одобренные обновления), пролистать и отклонить необходимые обновления, естественно это не совсем удобно, но далее можно создать новый "View" отфильтровать по периоду синхронизации (например последняя неделя) и согласно выставленному периоду отклонять обновления. 

    • Помечено в качестве ответа timofeik 13 января 2012 г. 8:05
    13 января 2012 г. 5:51
    Отвечающий
  • ОК, спасибо за совет !
    13 января 2012 г. 8:06
  • Разговор идет о чистке базы от ненужного, а вы рассказываете как пользоваться фильтром.

    Как можно удалять отклоненные обновления из базы на W12R2,  Server Cleanup Wizard, не делает этого, других средств не предусмотрено?

    12 августа 2015 г. 7:49
  • Столкнулся точно с такой же проблемой, пока решения не нашел - пробовал несколько скриптов на PopwerShell - но они делают ровно то же, что и мастер очистки сервера - т.е. ничего. У меня собралось примерно 4800 отклоненных обновлений, понятия не имею, как их удалить. Единственное предположение - через wsusutil.exe movecontent F:\WSUS F:\WSUS\wsus.log -skipcopy (адреса условны) изменить расположение папки WSUS, потом сделать wsusutil.exe reset и дождаться завершения обновления. 

    Еще вариант - остановить службу WSUS и  IIS, удалить папку WsusContent и сделать wsusutil.exe reset - но это как-то совсем грубо и некрасиво.

    18 августа 2017 г. 12:54
  • Итак, как всегда - сам спросил, сам ответил. 
    Аккуратно удалить отклоненные обновления не получилось - как победить ошибки в c:\Program Files\Update Services\LogFiles\SoftwareDistribution.log вида 
    2017-08-21 06:31:35.321 UTC Warning w3wp.25 AdminDataAccess.ExecuteSPCleanupUnneededContentFiles2 Failed to delete file {0), error was: {1} неизвестно.

    В итоге была остановлена служба WsusService, удалена папка WsusContent и выполнена команда c:\Program Files\Update Services\Tools\WsusUtil.exe reset - началась загрузка обновлений, надо будет проверить, сколько места займут после завершения. Хорошая подсказка, в том числе в комментариях тут h_ttps://blogs.technet.microsoft.com/gborger/2009/02/27/what-to-do-when-your-wsuscontent-folder-grows-too-large/

    21 августа 2017 г. 12:33