Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» Windows Server Update Services (WSUS & SUS)

Автор: ViktorVal
Дата сообщения: 08.02.2006 14:59

Цитата:
Цитата:Используй
wuauclt.exe /resetauthorization /detectnow
для начала нового обновления.

Команда на сервере WSUS? или на клиенте?

на клиенте.
Автор: BULLDOG
Дата сообщения: 08.02.2006 15:19
mavrr

Такой батник только на XP/2003 прокатит.
Автор: in0x
Дата сообщения: 08.02.2006 15:27
А никто не пытался продлить жизнь SUSу для Linux, заставив его тянуть новое с Microsoft или хотя бы как-нить с WSUS?
Автор: 3M
Дата сообщения: 08.02.2006 16:36
Ykidia написал


Цитата:
Для исправления сего вызываются свойства нужной службы в групповых политиках (Конфигурация компьютера -> Конфигурация Windows -> Параметры безопасности -> Системные службы), галочка "Определить следующий параметр политики" снимается и снова ставится, заново выбирается тип запуска. И без надобности, просто чтобы "посмотреть", выбирать "Изменить безопасность" не рекомендуется.


в gpedit.msc по указанному пути не нахожу Системные службы. В чем проблема?
Автор: levkadub
Дата сообщения: 09.02.2006 02:14

Цитата:
Попробуй "wsusutil.exe reset".

Не помогло
Автор: stampik
Дата сообщения: 09.02.2006 08:31
А как настроить IIS5.0 чтоб клиенты ДОВЕРЕННОГО домена могли скачивать обновления?
А то они на WSUS нормально зарегились, список необходимых обновлений выгружают, а патчи не качают

Код:
2006-02-09    08:13:42     772    30c    Misc    =========== Logging initialized (build: 5.8.0.2469, tz: +0300) ===========
2006-02-09    08:13:42     772    30c    Misc     = Process: C:\WINNT\system32\svchost.exe
2006-02-09    08:13:42     772    30c    Misc     = Module: C:\WINNT\system32\wuaueng.dll
2006-02-09    08:13:42     772    30c    Service    *************
2006-02-09    08:13:42     772    30c    Service    ** START ** Service: Service startup
2006-02-09    08:13:42     772    30c    Service    *********
2006-02-09    08:13:42     772    30c    Agent     * WU client version 5.8.0.2469
2006-02-09    08:13:42     772    30c    Agent     * SusClientId = 'ebd78f36-0c6c-4986-bb26-a0a7630262fd'
2006-02-09    08:13:42     772    30c    Agent     * Base directory: C:\WINNT\SoftwareDistribution
2006-02-09    08:13:42     772    30c    Agent     * Access type: No proxy
2006-02-09    08:13:42     772    30c    Agent     * Network state: Connected
2006-02-09    08:14:28     772    30c    Agent    *********** Agent: Initializing Windows Update Agent ***********
2006-02-09    08:14:28     772    30c    Agent    *********** Agent: Initializing global settings cache ***********
2006-02-09    08:14:28     772    30c    Agent     * WSUS server: http://RBD.city.kirov.ru
2006-02-09    08:14:28     772    30c    Agent     * WSUS status server: http://RBD.city.kirov.ru
2006-02-09    08:14:28     772    30c    Agent     * Target group: (Unassigned Computers)
2006-02-09    08:14:28     772    30c    Agent     * Windows Update access disabled: No
2006-02-09    08:14:30     772    30c    DnldMgr    Download manager restoring 0 downloads
2006-02-09    08:14:30     772    30c    AU    ########### AU: Initializing Automatic Updates ###########
2006-02-09    08:14:30     772    30c    AU    AU setting next detection timeout to 2006-02-09 05:14:30
2006-02-09    08:14:30     772    30c    AU     # WSUS server: http://RBD.city.kirov.ru
2006-02-09    08:14:30     772    30c    AU     # Detection frequency: 22
2006-02-09    08:14:30     772    30c    AU     # Approval type: Scheduled (Policy)
2006-02-09    08:14:30     772    30c    AU     # Scheduled install day/time: Every day at 12:00
2006-02-09    08:14:30     772    30c    AU     # Auto-install minor updates: Yes (User preference)
2006-02-09    08:14:30     772    30c    AU    AU setting pending client directive to 'Forced Reboot'
2006-02-09    08:14:30     772    30c    AU    #############
2006-02-09    08:14:30     772    30c    AU    ## START ## AU: Search for updates
2006-02-09    08:14:30     772    30c    AU    #########
2006-02-09    08:14:30     772    30c    AU    <<## SUBMITTED ## AU: Search for updates [CallId = {FFF789CB-A515-4EBF-85D5-8B084D555D98}]
2006-02-09    08:14:30     772    39c    Agent    *************
2006-02-09    08:14:30     772    39c    Agent    ** START ** Agent: Finding updates [CallerId = AutomaticUpdates]
2006-02-09    08:14:30     772    39c    Agent    *********
2006-02-09    08:14:44     772    30c    AU    WARNING: AU found no suitable session to launch client in
2006-02-09    08:14:45     772    39c    Setup    FATAL: IsUpdateRequired failed with error 0x8009200d
2006-02-09    08:14:45     772    39c    Report    *********** Report: Initializing static reporting data ***********
2006-02-09    08:14:45     772    39c    Report     * OS Version = 5.0.2195.4.0.65536
2006-02-09    08:14:47     772    39c    Report     * Computer Brand = To Be Filled By O.E.M.
2006-02-09    08:14:47     772    39c    Report     * Computer Model = To Be Filled By O.E.M.
2006-02-09    08:14:47     772    39c    Report     * Bios Revision = 1002.002
2006-02-09    08:14:47     772    39c    Report     * Bios Name = BIOS Date: 06/11/04 22:10:21 Ver: 08.00.09
2006-02-09    08:14:47     772    39c    Report     * Bios Release Date = 2004-06-11T00:00:00
2006-02-09    08:14:47     772    39c    Report     * Locale ID = 1049
2006-02-09    08:14:48     772    39c    Setup    WARNING: SelfUpdate: Default Service: IsUpdateRequired failed: 0x8009200d
2006-02-09    08:14:48     772    39c    Setup    WARNING: SelfUpdate: Default Service: IsUpdateRequired failed, error = 0x8009200D
2006-02-09    08:14:48     772    39c    Agent     * WARNING: Skipping scan, self-update check returned 0x8009200D
2006-02-09    08:14:48     772    39c    Agent     * WARNING: Exit code = 0x8009200D
2006-02-09    08:14:48     772    39c    Agent    *********
2006-02-09    08:14:48     772    39c    Agent    ** END ** Agent: Finding updates [CallerId = AutomaticUpdates]
2006-02-09    08:14:48     772    39c    Agent    *************
2006-02-09    08:14:48     772    39c    Agent    WARNING: WU client failed Searching for update with error 0x8009200d
2006-02-09    08:14:48     772    40c    AU    >>## RESUMED ## AU: Search for updates [CallId = {FFF789CB-A515-4EBF-85D5-8B084D555D98}]
2006-02-09    08:14:48     772    40c    AU     # WARNING: Search callback failed, result = 0x8009200D
2006-02-09    08:14:48     772    40c    AU    #########
2006-02-09    08:14:48     772    40c    AU    ## END ## AU: Search for updates [CallId = {FFF789CB-A515-4EBF-85D5-8B084D555D98}]
2006-02-09    08:14:48     772    40c    AU    #############
2006-02-09    08:14:48     772    40c    AU    AU setting next detection timeout to 2006-02-09 10:14:48
2006-02-09    08:14:53     772    40c    Report    REPORT EVENT: {CDF6697E-AF2D-4DA1-9EE3-0A438E3E2FD9}    2006-02-09 08:14:45+0300    1    148    101    {D67661EB-2423-451D-BF5D-13199E37DF28}    0    8009200d    SelfUpdate    Failure    Software Synchronization    Error: Agent failed detecting with reason: 0x8009200d
2006-02-09    08:16:42     772    30c    AU    AU found 1 sessions to launch client into
2006-02-09    08:16:42     772    30c    AU    Launched new AU client for directive 'Forced Reboot', session id = 0x0
2006-02-09    08:16:43    1196    4a8    Misc    =========== Logging initialized (build: 5.8.0.2469, tz: +0300) ===========
2006-02-09    08:16:43    1196    4a8    Misc     = Process: C:\WINNT\system32\wuauclt.exe
2006-02-09    08:16:43    1196    4a8    AUClnt    Launched Client UI process
2006-02-09    08:16:43    1196    4a8    AUClnt    AU client got new directive = 'Forced Reboot', serviceId = {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7}, return = 0x00000000
2006-02-09    08:16:43     772    324    AU    AU setting client response for sessionId 0x0 to 'Pending'
2006-02-09    08:21:40     772    40c    PT    Initializing simple targeting cookie, clientId = ebd78f36-0c6c-4986-bb26-a0a7630262fd, target group = , DNS name = loginova.hrm
2006-02-09    08:21:40     772    40c    PT     Server URL = http://RBD.city.kirov.ru/SimpleAuthWebService/SimpleAuth.asmx
2006-02-09    08:21:40     772    40c    Report    Uploading 1 events using cached cookie, reporting URL = http://RBD.city.kirov.ru/ReportingWebService/ReportingWebService.asmx
2006-02-09    08:21:40     772    40c    Report    Reporter successfully uploaded 1 events.
2006-02-09    08:21:57     772    324    AU    AU setting client response for sessionId 0x0 to 'Complete'
2006-02-09    08:21:57    1196    4a8    AUClnt    AU client got new directive = 'Shutdown', serviceId = {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7}, return = 0x00000000

Автор: BULLDOG
Дата сообщения: 09.02.2006 08:52
3M

Групповая политика на контроллере домена.
Автор: Iv Michael
Дата сообщения: 12.02.2006 14:40
Здравствуйте, алл!
Поставил и завёл WSUS на дополнительном контроллере домена w2k3, домен, AD. Сделал все настройки, в соответствии со справочной системой. Обновления обнаруживаются. Прописал политики в домене для обновления компов (http://server2).
Однако (прошло трое суток) ни один компьютер в списоок обслуживаемых WSUS так и не добавился. Хотя политики на компьютерах (XP) сменились (в частности, вкладка "обновление" стала недоступной).
Компьютеры в группе AD, которая уже успешно используется для установки софта.
Настроил Sparepoint Services - и проверил работоспособность скриптов (как описано в документации) - всё ОК. Так же настройки в реестре на локальном компьютере.
До настройки Sharepoint сервер ругался на неработающую службу SelfUpdate, вычитал, что надо сделать
C:>cscript WSUS install C:\Program Files\Update Services\Setup\InstallSelfupdateOnPort80.vbs
Получил ошибку:
Input Error: There is no file extension in "C:\Documents and Settings\Adm******\WSUS".
И это несмотря на то, что скрипты доступны и работают - с клиентских компьютеров их можно загрузить.

На что обратить внимание? Может кто наступал на такие грабли?
Заранее спасибо, в форуме не нашёл ответ

Автор: BULLDOG
Дата сообщения: 13.02.2006 08:26
Iv Michael

Windows XP должен быть, хотя бы, с SP1. Может в этом проблема?
Поставь частоту синхронизации компов с сервером повыше. Например, 1 час, на время отладки.

Добавлено:
Выключи SSL, если включил.
Автор: Iv Michael
Дата сообщения: 13.02.2006 09:17
Спасибо за сочуствие!
1. Половина компов даже с SP2 (из тестовых), есть SP1. Поставил 1 час.
2. SSL не включал, доступ проверял (через IE) без SSL - всё ок.
Так и не появляется... может Firewall Client мешать? Ещё что-то?
Автор: mavrr
Дата сообщения: 13.02.2006 14:03
Может немного не по теме, просьба сильно не пинать !
Масенькие проблемы с клиентами - глюки не прекращаются, пока не обновишь агента (WindowsUpdateAgent20-x86.exe) - и все становиться красиво!
Хотелось бы раскидать его (установить без участия пользователей и с повышенными правами) групповыми политиками, но он не .msi зараза!
Подскажите, плиз!
(Домен - W2K)
Автор: BULLDOG
Дата сообщения: 13.02.2006 15:13
Iv Michael

Вся фигня в том, что даже твой SERVER2 не обслуживается.
Запусти ClientDiag.exe, что он покажет
Автор: Iv Michael
Дата сообщения: 13.02.2006 16:03
Мгм... а кто это ClientDiag.exe? Нет такого зверя у меня...
Автор: itman
Дата сообщения: 13.02.2006 19:09
Помогите пожалуйста!

Впервый раз попробовал поднять WSUS на W2003 и что-то не идет, выдается ошибка

Отказано в доступе
Параметры настройки сетевой политики препятствуют доступу к этому серверу Windows Server Update Services.

Если вы считаете, что это сообщение не должно было появляться, обратитесь к системному администратору.

Если кто-то сталкивался с этой проблемой и знает решение, буду очень признателен!


Автор: DikSoft
Дата сообщения: 14.02.2006 07:05

Цитата:
Так и не появляется... может Firewall Client мешать? Ещё что-то?
- Если стоит галочка "Использовать сценарий автоматической настройки", и что-то типа такого в нем : http://server-isa.domen.local:8080/array.dll?Get.Routing.Script , то может.
Раз речь пошла про FireWall client, значит наверное есть ISA ?
Внимательно прочитайте про "разрешенные сайты" в системной политике и прочие тонкости, коих в ISA немало тут
Автор: Daimos
Дата сообщения: 15.02.2006 10:22
Вроде не пробегало тут и может кому поможет

WUA Networking Error Codes
http://msdn.microsoft.com/library/en-us/wua_sdk/wua/wua_networking_error_codes_.asp
Автор: gretis
Дата сообщения: 15.02.2006 12:16
WSUSUtil export -> WsusUtil import...
Имеем прекрасную возможность синхронизации оффлайн. - Это как утверждают доки по ВСУСу. Реально же приходится руками править одобрения/отклонения. Я где-то был неправ или какие могут быть предложения по поводу того, как перенести одобрения с одного сервера на другой?
Автор: potem
Дата сообщения: 15.02.2006 14:08
Подскажите новые названия для xpsp2ru и xpsp2en?
Чтобы переименовать старые из sus и подложить в wus.
Как я понял что так можно сделать.
Автор: wers
Дата сообщения: 15.02.2006 17:33
Я аж окопался с этим WSUS'ом... Проблема такая: никак не хотят появляться компьютеры в списке, причем в любом из них.(All, Unassigned). В GPO на уровне OU, где лежат компьтерный аккаунты, прописал Client-side targening с папкой, которую предварительно создал в WSUS. Еще не понятно, какой путь указывать для клиентов: //servername/WSUSAdm или другой? WSUS находится не в корне кталога.
Судя по этой ссылке, проблема может упираться в настройки IIS. Какую аунтентификацию следует выставить?
Автор: Leecher
Дата сообщения: 15.02.2006 20:44
wers

Цитата:
ще не понятно, какой путь указывать для клиентов

http://servername
Автор: biakus
Дата сообщения: 16.02.2006 08:22
Просьба потестировать скрипт, который извлекает из WSUSа последние обновления с учетом заменяемости между ними, раскладывает их по полочками и создает описания:


Цитата:

#!/usr/bin/perl -w
#
# Name: WSUSExtractor.pl
#
# Purpose: Extract latest or all updates from WSUS and generate descriptions.
#
# Syntax: WSUSExtractor.pl
#
# Version: 2.0
#
# Requirements: Windows 2000+
# ActivePerl 5.8.7 buld 815 or higher from www.ActiveState.com
# osql.exe Utility (included in MSDE)
# WSUS on MSDE
#
# Author: biakus
#


use strict;
use locale;
use IO::File;
use File::Path;
use Win32::Registry;
use Fcntl;

$|=1;

my $ppid;
my $fpid=open_pid_file("WSUSExtractor.pid");
print $fpid $$;
close($fpid);
# warn("Starting script (pid=$$)\n");

###########################################################################################
# Tunable params
###########################################################################################

my $root = "C:\\WSUS\\FtpRoot"; # your dir for files (volume must be the same at WSUS content folder for NTFS hardlinks)
my $is_latest = 1; # Is all updates extract or latest only
my $update_langs = " 0,1033,1049 "; # comma separated languageIDs of extracting updates (0-all,1033-en,1049-ru,..%lang)
my $descr_lang = "ru"; # short language of titles and descriptions of updates (en,ar ..)
my $descfile = "_contents.html";
my $root_url = "ftp://ftp.server.com/microsoft";
my $db_name = "SUSDB";
my $content_dir = ""; # WSUS content folder
my $server_name = ""; # WSUS SqlServerName
my $tmpfile = "query.sql";

###########################################################################################

my @rec = ();
my $col;
my $query;
my $cmd;
my $is_replaced;
###########################################################################################
# Huge SQL query temporary save to file
###########################################################################################
my $latest_str = "";
if ($is_latest) { $latest_str = qq { AND tbBundleDependency.BundledRevisionID NOT IN (
SELECT tbBundleDependency.BundledRevisionID
FROM tbRevisionSupersedesUpdate
INNER JOIN tbUpdate ON ( tbUpdate.UpdateID = tbRevisionSupersedesUpdate.SupersededUpdateID )
INNER JOIN tbRevision ON ( tbRevision.LocalUpdateID = tbUpdate.LocalUpdateID )
INNER JOIN tbBundleDependency ON ( tbBundleDependency.RevisionID = tbRevision.RevisionID ) )
};
         print "\nStart extracting latest updates\n"; }
else {         print "\nStart extracting all updates\n"; }

open (SQL, ">$tmpfile");
print SQL qq {
SELECT C2.CategoryID, C3.CategoryID, RC4.CategoryID, tbRevisionLanguage.LanguageID,
tbFile.FileName, tbFile.FileDigest, tbFile.Modified, tbFile.Size,
tbPreComputedLocalizedProperty.Title, tbPreComputedLocalizedProperty.Description,
tbPreComputedLocalizedProperty.RevisionNumber
FROM tbCategory AS C1
INNER JOIN tbCategory AS C2 ON C1.CategoryID = C2.ParentCategoryID
INNER JOIN tbCategory AS C3 ON C2.CategoryID = C3.ParentCategoryID
INNER JOIN tbCategory AS C4 ON (C4.ParentCategoryID IS NULL AND C4.CategoryID != 7 )
INNER JOIN tbRevisionInCategory AS RC3 ON ( C3.CategoryID = RC3.CategoryID )
INNER JOIN tbRevisionInCategory AS RC4 ON ( RC4.RevisionID = RC3.RevisionID AND RC4.CategoryID = C4.CategoryID )
INNER JOIN tbBundleDependency ON ( RC4.RevisionID = tbBundleDependency.BundledRevisionID $latest_str )
INNER JOIN tbPreComputedLocalizedProperty ON ( tbPreComputedLocalizedProperty.RevisionID = tbBundleDependency.RevisionID )
INNER JOIN tbRevision ON ( tbRevision.RevisionID = RC4.RevisionID AND tbRevision.IsLatestRevision = 1 )
INNER JOIN tbFileForRevision ON ( tbFileForRevision.RevisionID = RC4.RevisionID )
INNER JOIN tbRevisionLanguage ON ( tbRevisionLanguage.RevisionID = tbFileForRevision.RevisionID )
INNER JOIN tbFile ON ( tbFile.FileDigest = tbFileForRevision.FileDigest )
WHERE ( tbRevisionLanguage.Expanded = 0 AND tbRevisionLanguage.LanguageID IN ( $update_langs )
AND tbPreComputedLocalizedProperty.ShortLanguage like '$descr_lang' )
ORDER BY tbFile.Modified };

close(SQL);

###########################################################################################
# Find WSUS content folder and SQL server address
###########################################################################################

my $reg;
$::HKEY_LOCAL_MACHINE->Open("SOFTWARE\\Microsoft\\Update Services\\Server\\Setup", $reg)
or die "Can't open registry: $^E";
$reg->QueryValueEx("ContentDir", $col, $content_dir) or die "Cannot find WSUS content folder in registry: $^E";
$content_dir = $content_dir."\\WsusContent";
# print "Here's a dir: $content_dir\n";

$reg->QueryValueEx("SqlServerName", $col, $server_name) or die "Cannot find WSUS content folder in registry: $^E";
$server_name =~ s/%computername%/$ENV{computername}/;
# print "Here's a server name: $server_name\n";

###########################################################################################
# Put to hash Microsoft WSUS languages
###########################################################################################
my %lang = ();
$query= "SELECT LanguageID, ShortLanguage FROM tbLanguage";
$cmd = "osql.exe -w 500 -h-1 -s# -n -E -d $db_name -S $server_name -Q \"$query\" 2>nul |";

open (DAT, $cmd);
    while(<DAT>) {
        chomp;
#        print $_."\n";
    if ( @rec = split(/#/) )
            { foreach $col (@rec) { if( $col =~ /^\s*(.+?)\s*$/ ) {$col = $1;} } }
        else { last; }
        $lang{$rec[0]} = $rec[1];
#        print $rec[0]."\t".$rec[1]."\n";
    }
close(DAT);

###########################################################################################
# Put to hash Microsoft WSUS categories
###########################################################################################
my %ctg = ();
$query= "SELECT CategoryID, Title FROM tbPrecomputedCategoryLocalizedProperty WHERE ( ShortLanguage like 'en') ";
$cmd = "osql.exe -w 500 -h-1 -s# -n -E -d $db_name -S $server_name -Q \"$query\" 2>nul |";

open (DAT, $cmd);
    while(<DAT>) {
        chomp;
    if ( @rec = split(/#/) )
            { foreach $col (@rec) { if( $col =~ /^\s*(.+?)\s*$/ ) {$col = $1;} } }
        else { last; }
$rec[1] =~ s/\s+|\//_/g;
        $rec[1] =~ s/\W//g;
        $ctg{$rec[0]} = $rec[1];
    }
close(DAT);

###########################################################################################
# Processing Microsoft WSUS database and save files with descriptions
###########################################################################################

my $srcfile;
my $dstfile;
my $path;
my $counter = 0;
my $result;

$cmd = "osql.exe -w 5000 -h-1 -s# -n -E -d $db_name -S $server_name -i $tmpfile 2>nul |";
print "\nProcessing..\n";
open (DAT, $cmd);
    while(<DAT>) {
        chomp;
#        print $_."\n";
    if ( @rec = split(/#/) )
            { foreach $col (@rec) { if( $col =~ /^\s*(.+?)\s*$/ ) {$col = $1;} } }
        else { last; }

        if ($rec[4] =~ m/.(\w+)$/ ) { $srcfile = $1; }
        if ($rec[5] =~ m/^0x(\w{38})(\w{2})$/){ $srcfile = "$content_dir\\$2\\$1$2.$srcfile"; }
        $path = $root."\\".$ctg{$rec[0]}."\\".$ctg{$rec[1]}."\\".$ctg{$rec[2]}."\\".$lang{$rec[3]};
        if (! -e $path) { mkpath($path, 0, 0777) or die "Can't create dir: $^E\n";}
        $dstfile = $path."\\".$rec[4];
        $result = hardlink($srcfile, $dstfile, 1);
        if ( $result && ! $is_replaced ) { $counter += 1; }
        if ( $result ) { add2file($path, $rec[6], $rec[4], $rec[7], $rec[8], $rec[9], $rec[10],
        $root_url."/".$ctg{$rec[0]}."/".$ctg{$rec[1]}."/".$ctg{$rec[2]}."/".$lang{$rec[3]}."/".$rec[4] );
        }
    }
close(DAT);
print "\nTotal matching updates in database: $counter\n";

unlink($tmpfile) or die "Cannot unlink tmpfile: $^E";

warn "\nSuccess\n";

###########################################################################################
# POSIX NTFS hard link to file
###########################################################################################
sub hardlink {
my $exist_file=shift;
my $new_file=shift;
my $is_rewrite = shift;
$is_replaced = 0;
if(-e $new_file && $is_rewrite)
    { $is_replaced = 1; unlink ($new_file) or return 0; }

link ( $exist_file, $new_file ) or return 0;

return 1;
}
###########################################################################################
# Adding description to file
###########################################################################################

sub add2file {
my $file_path=shift; my $file = $file_path."\\".$descfile;
my $modified = shift;
my $name = shift;
my $size = shift;
my $title = shift;
my $desc = shift;
my $revnum = shift;
my $url = shift;

my $header = qq {<html>
<head>
<title>Description of updates</title>
<meta http-equiv="Content-Type" content="text/html; charset=cp866">
</head>
<body>
<table align=center border cellspacing=0 cellpadding=5>
<caption align=up><h2>Описания и ссылки на обновления для данной директории</h2></caption>
<tr>
    <td><h3>Имя Файла</h3></td>
    <td><h3>Размер файла</h3></td>
    <td><h3>Название</h3></td>
    <td><h3>Описание</h3></td>
    <td><h3>Дата модификации</h3></td>    
</tr>
};

my $footer = qq {
</table>
<p align="right"><font size="2">&copy;biakus</font></p>
</body></html>};

if(-e $file) {
    sysopen (DESC, "$file", O_WRONLY);
    seek (DESC, -length($footer)-1, 2);
         print DESC "<tr>"."\n\t"."<td><a href=".$url.">".$name."</a></td>"
                 ."\n\t"."<td>".dots($size)."</td>"
                 ."\n\t"."<td>".$title."</td>"
                 ."\n\t"."<td>".$desc."</td>"
                 ."\n\t"."<td>".$modified."</td>"
                 ."\n</tr> \n";
    print DESC $footer;
    close(DESC);
}
else {
    open (DESC, ">$file");
     print DESC $header;
         print DESC "<tr>"."\n\t"."<td><a href=".$url.">".$name."</a></td>"
                 ."\n\t"."<td>".dots($size)."</td>"
                 ."\n\t"."<td>".$title."</td>"
                 ."\n\t"."<td>".$desc."</td>"
                 ."\n\t"."<td>".$modified."</td>"
                 ."\n</tr> \n";
# FileName, Size, Title, Desc, Modified
     print DESC $footer;
    close(DESC);
}

return 1;
}
###########################################################################################
# dots for bytes processing
###########################################################################################

sub dots {
my $tmp = shift; my @tmp=();
unshift (@tmp, $1) while ($tmp =~ s/(\d{1,3})$//g);
return join ('.', @tmp);
}

###########################################################################################
# pid processing
###########################################################################################

sub open_pid_file {
my $file=shift;

if(-e $file) {
my $fh=IO::File->new($file) or die "Can't open PID file $file: $^E";
$ppid=<$fh>;
die "Invalid PID file" unless $ppid=~ /^(\d+)$/;
die "Process already running with PID $ppid" if(kill 0 => $ppid);
warn "Removing PID file for defunct process ($ppid).\n";
die "Can't unlink PID file $file" unless -w $file && unlink $file;
}
$ppid=$$;
return IO::File->new($file,O_WRONLY|O_CREAT|O_EXCL,0644)
or die "Can't create $file: $^E\n";
}
###########################################################################################

END {
unlink "WSUSExtractor.pid" or die "Can't unlink PID file: $^E";
# warn("Stoping script (pid=$$)\n");
}


__END__



Автор: Iv Michael
Дата сообщения: 16.02.2006 09:04
У меня таки заработало. Правда появились не все компьютеры. Но большинство. Разбираюсь с этим. Уже понятно, что от СП это не зависит - не появился к примеру мой ноут - на котором установлены ВСЕ нужные обновления и он тоже в домене).
При инсталляции я ставил WSUS не на 80-й порт (у меня на том же компьютере Project Server + Sharepoint), а на 8530. Кстати, в шарепойнте так же пришлось публиковать скрипты.
Через GPo указал именно http://server2:8530 в обоих строчках. И компьютеры начали появлятся.
Политику создавал новую (а не правил Default Domain Policy), всё по описанию.
SSL выключено.
В настройках безопасности IIS для веб-сайта Wsus administration стоит "разрешать анонимный доступ" и "встроенная аутентификация виндов".
Если доступ есть, попробуй "скачать"
http://WSUSServerName/iuident.cab
http://WSUSServerName/selfupdate/AU/x86/osvariable/languagevariable/wuaucomp.cab
Заменив osvariable/languagevariable на нужные значения (у меня XP/ru).
Это всё описано в WSUSOperationsGuide.doc от MS. Внимательно прочитай об устранении неполадок (в самом конце).
PS: WSUS у меня стоит на дополнительном контроллере с Windows Server 2003 без SP, с IIS + Sharepoint.
Автор: wers
Дата сообщения: 16.02.2006 10:12
Iv Michael, похоже что ты прав. В логах IIS нахожу следующие записи, где 192.168.189.5 - сервкак, а 130 - клиент. 401 - ошибка аунтентификации.

2006-02-15 15:06:42 W3SVC1 192.168.189.5 HEAD /clientwebservice/SusServerVersion.xml 0602151506 80 - 192.168.189.130 Industry+Update+Control 401 1 0

Автор: Iv Michael
Дата сообщения: 16.02.2006 10:25
С тем, что я прав, мне глупо спорить... Только вот я не понял, в чём именно я прав
Кстати, у меня появились ВСЕ компьютеры, кроме одного w2000. Ну да там не SP3 и ладно - потом заведу. И это без всяких шаманских плясок с принудительным поиском сервера обновлений и принудительного обновления групповой политики. Хотя на этапе настройки wuauclt.exe /detectnow и gpupdate /force были очень полезны - чтобы не ждать.
Пока ставятся только критические и обновления безопасности. Кто-нибудь пробовал ВСЕ ставить?
Автор: BULLDOG
Дата сообщения: 16.02.2006 14:10
Iv Michael

У меня все ставятся.
Автор: I am Robespier
Дата сообщения: 16.02.2006 16:40
Если информация такая уже была - не судите строго несколько дней назад я не смог найти ее и вот докопался сам, а потом нашел опубликованый вариант.

Решение: не появляются новые компьютеры на WSUS сервере
Проблемма заключалась в том, что компьютеры получали обновления, но их небыло видно в списке на WSUS сервере.
т.к. по документации WSUS идентефицирует компьютеры по уникальному ID, я принялся исходить их этого. На нашем предприятии операционки на рабочие станции заливаются из имиджа, а потом вносятся в домен. Это меня смутило и сбило поначалу с толку, т.к. ID машины при этом меняется. Но как выяснилось в последствии, что имидж операционки предварительно уже добавлялся в домен, а потом его вывели от туда. Но Update Service успел сохранить в своих настройках ID старой машины, из за чего все новые компьютеры идентифицировались WSUS сервером как одна машина, которая первая успела на нем зарегистрироваться. Следующие строки должны все обьяснить:

reg delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate /v AccountDomainSid /f
reg delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate /v PingID /f
rem И наконец удаляем злополучный ID
reg delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate /v SusClientId /f

net stop wuauserv
net start wuauserv
wuauclt /resetauthorization /detectnow

Полезные вещи есть в
http://download.microsoft.com/download/8/d/0/8d068114-bd66-4fde-a04c-aeaa9d1fe640/Update%20Services%20API%20Samples%20and%20Tools.EXE

А также в SQL Query Analyzer на вашем WSUS сервере.
Автор: denisdenis
Дата сообщения: 16.02.2006 17:01
В SUSe когда просматриваешь обновления, можно было прямо с той страницы сохранить их для дальнейшего использования. Можно ли это же сделать во WSUSe?
Автор: DikSoft
Дата сообщения: 17.02.2006 07:11
I am Robespier

Цитата:
На нашем предприятии операционки на рабочие станции заливаются из имиджа, а потом вносятся в домен.

Вы забыли сделать один шаг перед созданием имиджа: sysprep.
Актуально для WinXP.
Автор: I am Robespier
Дата сообщения: 17.02.2006 09:37
DikSoft
С одной стороны к счастью, с другой к сожалению, но я не занимаюсь созданием и разработкой имиджей, этим занимаются ребята соседнего подразделения. И мне не известно каким путем они их создают. Меня волнует работа рабочих станций в домене. А т.к. имидж операционки находится до внесения в домен и при установке новой машины те ребята вносят новую машину и при этом SID компьютера в любом случае меняется. В данной ситуации проблемма была именно одного конкретного имиджа и только со службой Windows Update по причине, что этот имидж уже когдато вносился в домен, а потом его вывели. Но служба успела записать старый SID. А новый она не подхватывает. Считаю, что в данной ситуации это недоработка microsoft-овцев. Т.к. SID компьютера изменился, а служба не предпринимает по этому поводу никаких действий. И, кстати, эта проблемма может подпортить жизнь сотрудникам с мобильными ПК если у предприятия разрозненая доменная структура.
Автор: Iv Michael
Дата сообщения: 17.02.2006 09:59
Получил ошибку при установке SP1 для Office 2003 на одной машине (на другие не ставил). Мелочь, конечно, есть ещё SP2 (пока не докачался).
Вопрос в том - как повторить установку и что делать в таких случаях?

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Настройка WinRoute 4.x


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.