20 апреля 2010 г.

Алгоритм аварийного восстановления сервера Exchange Server 2010

Прочитал отличную статью Аварийное восстановление сервера Exchange 2010.

Всем рекомендую. Написано просто и понятно. Часть этих операций может быть применена и к Exchange 2007

12 апреля 2010 г.

BE2010 и Microsoft Exchange 2007 SCC кластер

Вчера, наконец-то, перенесли файловый сервер и сервер бэкапирования с Windows Server 2003 R2 на Windows Server 2008 R2. Перенос файлового сервера прошел достаточно гладко – переключили разделы на SAN и перезагрузили сервера. После этого раздал разделам те же буквы и с помощью командных файлов пересоздал share. Как оказалось, пару синтаксических ошибок я таки не заметил, но это, в общем-то, была мелочь. После этого изменил пути в DFS и все заработало. File Screens и Storage Reports еще нужно перенастраивать, но это, в общем-то, не самая большая проблема.

Проблема подкралась при запуске Backup Exec. Как оказалось, Backup Exec 2010, в случае использования родного агента, не видит Exchange Information Store, если пытаться подключиться к Exchange Server 2007, использующий Mailbox Cluster. В общем-то, Symantec утверждает, что это касается только CCR кластера, но у меня-то SCC (Single Copy Cluster) и на нем тот же эффект. Решения пока нету, но есть обходной путь, который заключается в том, чтобы установить на Exchange агента от Backup Exec версии 12.5, причем обязательно с Hotfix 337202.

Я попробовал и таки да, работает. Пишет предупреждение, но работает. Так что теперь нужно ждать от них патча, который устранит эту проблему.

7 апреля 2010 г.

Статистика использования браузеров с января 2010 по апрель 2010

Делать ежемесячные выпуски нету особого смысла, да и лень :-) А вот раз в три месяца – лучше видны тенденции

Мои источники:

Русскоязычные

  1. bigmir.net
  2. Spylog
  3. liveinternet

Зарубежные

  1. Market Share
  2. w3counter

 

30 марта 2010 г.

Настройка точного времени в домене Windows 2003 / 2008 / 2008 R2

обновлено 30.03.2010

Все хотят видеть на компьютере точное время, кроме того, это очень важно для нормального функционирования домена Windows и AD. Казалось бы, чего проще, настраиваешь PDC эмулятор на синхронизацию с каким-нибудь ntp и все становится на места само собой … Но нет, уже несколько раз, наблюдалась рассинхронизация контроллеров домена между собой и жалобы пользователей на то, что наше время отличается от точного на пару минут.

Казалось бы, смешная проблема – пару минут, но для некоторой работы и пара минут важно. Особенно, если это редактора новостной ленты www.korrespondent.net. Правда были еще и шуточные жалобы, что они из-за этой проблемы целых 2, 3 или 5 минут перерабатывают :-)

Стандартные “танцы с бубнами”, которые делал я, а потом и наш сетевой инженер, по руководству от Microsoft помогали, но не долго. Т.е. время сходится, ошибки из лога исчезают, а через пару часов, или, через сутки все начинается заново. А потом, через пару-тройку недель, или месяц-другой, ошибка снова достигает размера более 2-х минут и все заново.

25 марта 2010 г.

WSUS - сверка списка компьютеров с AD

обновлено 25.03.2010

На блоге Ильи Сазонова обнаружил очень интересный материал: WSUS - сверка списка компьютеров с AD. Да и вообще, там регулярно появляется любопытная информация.

Позволю себе перенести то, что он выложил к себе с некоторыми моими комментариями и модификациями.

Что это и зачем это нужно? В каждой уважающей себя организации используется Active Directory как единый каталог и WSUS для централизованной установки обновлений. Но, по разным причинам, некоторые компьютеры могут не обновляться со WSUS. Причины тому могут быть самые разные: сбой агента обновления, файрволл, еще что-то … Главное – это то, что такие случае нужно выявлять и разбираться с ними индивидуально.

Итак

Текущая версия WSUS имеет API, который позволяет удаленное управление сервером. Чтобы его задействовать, необходимо установить на компьютер клиентскую часть сервера. После чего запускаем оболочку Powershell 2.0 и загружаем WSUS API:

[reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration")

   Теперь надо подключаемся к удаленному серверу по имени «WSUS»:

$wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer("WSUS", $false)

   Второй параметр $false говорит о том, что будет использоваться HTTP протокол, а не HTTPS, т.е. не будет шифрования.

Скрипт Ильи работает, если у вас WSUS висит на стандартном порту. У меня же он висит на другом, нестандартном. Как поступить? А вот как (спасибо коллеге, нашел):

$wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer("WSUS", $false,port_number)

Где port_number – номер нестандартного порта WSUS

   Теперь получаем список всех компьютеров зарегистрированных на WSUS-сервере:

$WSUScomps = $wsus.GetComputerTargets()

   Каждый элемент массива $WSUScomps это объект, а нам нужны только имена компьютеров. Получаем FQDN имена компьютеров:

$WSUSCompNames = $WSUScomps | ForEach { $_.FullDomainName.ToUpper() }

   Перевод имени в верхний регистр не критичен (по умолчанию Powershell выполняет сравнение строк без учета регистра), но формально все же это надо сделать.

   Следующий шаг – получение списка учетных записей компьютеров из Active Directory:

$ADcomps = (new-object System.DirectoryServices.DirectorySearcher([ADSI]”LDAP://ou=DEPS,dc=DOMAIN,dc=com”,"(&(objectCategory=computer)(!userAccountControl:1.2.840.113556.1.4.803:=2))")).findAll()

   Тут конструкция !userAccountControl:1.2.840.113556.1.4.803:=2 исключает запрещенные (disabled) учетные записи компьютеров. LDAP://ou=DEPS,dc=DOMAIN,dc=RU задает корень поиска в дереве AD. objectCategory=computer – выбираем только учетные записи компьютеров.

   Из объектов учетных записей компьютеров извлекаем имена компьютеров (также формально переводим их в верхний регистр):

$ADCompNames = $ADcomps | ForEach {$_.GetDirectoryEntry().dNSHostName.ToString().ToUpper()}

   И последний шаг – получаем имена компьютеров, которые есть в Active Directory, но отсутствуют в WSUS:

$NoWSUSCompNames = $ADCompNames | Where { $WSUSCompNames -notcontains $_ }

   Теперь нам остается проанализировать полученный список и разобраться почему выявленные компьютеры не получают обновления с WSUS. Для получения списка просто выведу на экран значения

$NoWSUSCompNames

В отдельной записи представлены скрипты, с помощью которых мы “чиним” агентов WSUS на клиентских компьютерах и серверах.

24 марта 2010 г.

Русские mp3 tags и Nokia

Смартфонами Nokia пользуюсь уже много лет, но музыку на них никогда не слушал. Мне наушники еще в студенческие годы надоели :-) А тут вот стал пользоваться орбитреком и обнаружил что тяжеловато 20 минут заниматься монотонным занятием и при этом больше ничего не делать. Обычно, в таких случаях, помогает книга, но при беге не очень-то почитаешь :-) И тут я вспомнил, что есть такая штука как аудио книги! Пользоваться ими в другом месте я смысла не вижу, т.к. до обычной книги они не дотягивают, да и до электронных тоже.

В общем закачал я книжек всяких на свой Nokia N97 mini и обнаружил, что там есть проблема. Проигрыватель там сильно умный и рассчитан на музыку с MP3 tags. Т.е. все группировки там привязаны именно к тэгам альбома, исполнителя и т.д., а в аудиокнигах все файлы имеют названия типа 001.mp3 и таки не заполнены, т.о. они все там в ходят в группу другие, где представлены всем скопом. Можно было запускать на проигрывание из диспетчера файлов, но это было не очень удобно, т.к. в этом случае проигрывается только конкретный файл и на следующий автоматически не переходит.

18 марта 2010 г.

LU1805 или BE 2010 – приключения продолжаются

Как я уже писал ранее, установка Backup Exec 2010 идет с приключениями. Как оказалось, они все еще не закончены. Вчера решил проверить не вышли ли обновления. К моему удивлению, вызванный из консоли Live Update сказал мне “LU1805: LiveUpdate was unable to find any products to Update . . .", т.е. он не в курсе, что у меня есть Backup Exec.

Я пробовал уже всякое, в ручном режиме, т.е. при запуске из папки он видел BE, но писал, что обновлений нету. Сегодня я решил закрыть эту проблему. Способов было найдено много, но большинство из них так и не сработали, в частности, удалить Live Update и установить заново – точно не пашет.

В конце концов решение было найдено – я провел чистку, т.е. сделал uninstall Live Update, удалил папки, которые от него остались в ProgramData (ранее это было в All Users\Application Data). Установил его по новой, после чего, под админом, перешел в папку Program Files\Symantec\Backup Exec и запустил в командной строке

BeUpdateOps.exe -AddBE –OptOut

Все заработало.