Заметки практикующего сисадмина

Дядя Саша Кузьмич пишет о работе

Рубрика: сисадмину на заметку

  • Расширение возможностей Microsoft Indexing Service с помощью IFilter

    По умолчанию MS Indexing Service обладает достаточно скромным функционалом — умеет работать с малым числом форматов и не производит поиск документов в архивах. Расширение возможностей производится с помощью подключаемых модулей — IFilter.

    Для поиска по всем документам MS Office, придется его установить (если требуется поиск по документам Visio — установить дополнительно).

    Для поиска по документам в формате PDF нужно установить Acrobat Reader.

    Конечно, при наличии желания, можно изготовить набор из библиотек и командных файлов, дабы не заморачиваться каждый раз с установкой таких достаточно больших программ. Лично мне в данный момент такой вариант не требуется 😉

    Для поиска по файлам CHM, HLP, MHTML, а так же внутри архивов CAB, RAR, ZIP (включая самораспаковывающиеся), необходимо скачать соответствующие IFilters с замечательного сайта www.citeknet.com.

    Там же есть очень полезная утилита IFilterExplorer, которая покажет все установленные в системе IFIlters и расскажет какой из них какие документы обрабатывает.

    Если требуется создать свою собственную страницу поиска, то можно почитать вот эту статью или обратиться к первоисточнику — MSDN (разделы: Creating Query Forms, Highlighting Search Hits).

  • Русская морфология для Microsoft Indexing Service

    MS Indexing Service — встроенная в систему служба полнотекстового поиска по документам. В справке очень подробно расписаны все аспекты работы с данной службой. Как обычно, русская морфология при поиске отсутствует. Чтобы исправить этот досадный факт, необходимо раздобыть файлы noiseRUS.txt, rusdict.lex, ruslr.dll из дистрибутива MS SQL Server (можно даже Express Edition with Advanced Services). Копируем в одну папку вышеуказанные файлы, а так же setup.cmd и setup.reg.

    Содержимое setup.cmd:
    @echo off
    net stop cisvc
    copy /y noiseRUS.txt %systemroot%\system32
    copy /y rusdict.lex %systemroot%\system32
    copy /y ruslr.dll %systemroot%\system32
    regsvr32 /s %systemroot%\system32\ruslr.dll
    regedit /s setup.reg
    net start cisvc

    Содержимое setup.reg:
    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ContentIndex\Language\Russian_Russian]
    "ISAPIIDQErrorFile"="/iissamples/issamples/IDQError.htx"
    "ISAPIHTXErrorFile"="/iissamples/issamples/HTXError.htx"
    "ISAPIRestrictionErrorFile"="/iissamples/issamples/ResError.htx"
    "ISAPIDefaultErrorFile"="/iissamples/issamples/DefError.htx"
    "Locale"=dword:00000419
    "NoiseFile"="noiseRUS.txt"
    "StemmerClass"="{20036414-F1AF-11D2-A57F-006052076F32}"
    "WBreakerClass"="{20036404-F1AF-11D2-A57F-006052076F32}"

    Для установки необходимо запустить командный файл setup.cmd.

  • Русская морфология при поиске в Windows Sharepoint Services 3.0

    По умолчанию поиск в Windows Sharepoint Services (WSS) 3.0 не использует русскую морфологию. Чтобы исправить этот досадный факт, необходимо раздобыть библиотеки naturallanguage6.dll, nlsdata0019.dll, nlslexicons0019.dll. Их можно взять из русского MOSS 2007 или Windows Vista Ultimate/Enterprise (возможно, есть и в других выпусках). Копируем в одну папку библиотеки, файлы setup.cmd и setup.reg.

    Содержимое setup.cmd:
    @echo off
    net stop spsearch
    copy /y naturallanguage6.dll "C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN"
    copy /y nlsdata0019.dll "C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN"
    copy /y nlslexicons0019.dll "C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN"
    regedit /s setup.reg
    net start spsearch
    iisreset /noforce

    Содержимое setup.reg:
    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\12.0\Search\Setup\ContentIndexCommon\LanguageResources\Default\Russian]
    "IsInstalled"=dword:00000001
    "Locale"=dword:00000419
    "StemmerClass"="{E06A0DDD-E81A-4e93-8A8D-F386C3A1B670}"
    "StemmerDLLPathOverride"="C:\\Program Files\\Common Files\\Microsoft Shared\\web server extensions\\12\\BIN\\naturallanguage6.dll"
    "WBDLLPathOverride"="C:\\Program Files\\Common Files\\Microsoft Shared\\web server extensions\\12\\BIN\\naturallanguage6.dll"
    "WBreakerClass"="{2CB6CDA4-1C14-4392-A8EC-81EEF1F2E079}"

    Для установки необходимо запустить командный файл setup.cmd.

    Взято отсюда.

  • Резервное копирование метабазы IIS

    Internet Information Services (IIS) metabase backup.

    Запускаем планировщиком вот такой командный файл с нужной периодичностью (можно несколько раз в день):

    @echo off
    for /f "delims=. tokens=1,2,3" %%a in ("%date%") do cscript.exe /nologo %systemroot%\system32\iisback.vbs /backup /b %%c_%%b_%%a
    forfiles /p %systemroot%\system32\inetsrv\metaback /m *.* /d -14 /c "cmd /c del /q /s @path"
    copy /y %systemroot%\system32\inetsrv\metaback\*.* x:\web\iis
    forfiles /p x:\web\iis /m *.* /d -14 /c "cmd /c del /q /s @path"

    Комментарии:
    1. Создается архивная копия метабазы с названием, равным текущей дате и версией NEXT_VERSION.
    2. Удаляются архивные копии старше 14 дней в каталоге архивных копий метабазы IIS.
    3. Содержимое каталога архивных копий метабазы IIS копируется на сервер резервного копирования.
    4. Удаляются архивные копии старше 14 дней на сервере резервного копирования.

  • Проблема при печати общего календаря Microsoft Office Outlook

    Проблема: один сотрудник открывает второму доступ к своему календарю в Microsoft Exchange (набор прав роли не играет). Когда второй сотрудник пытается распечатать календарь первого в Microsoft Office Outlook в режиме «день», возникает ошибка: Интepфeйc пepeдaчи cooбщeний вoзвpaтил нeизвecтнyю oшибкy. Ecли этo пoвтopитcя, пepeзaгpyзитe Outlook. В режимах «неделя» и «месяц» проблема отсутствует.

    Причина: отсутствует доступ к списку задач.

    Решение: открыть доступ к списку задач или отключить пункт «список задач» в меню Файл -> Параметры страницы -> Ежедневник.

  • Возможные проблемы при установке MOSS 2007

    Ну наконец-то я поставил Microsoft Office Sharepoint Server (MOSS) 2007!!! Меня просто накрыла волна счастья 🙂

    А теперь о ситуации, с которой столкнулся при установке. Не запускалась служба Windows Sharepoint Search, в журналах событий появлялись ошибки.

    Смотрим журналы событий на самом сервере с англоязычной ОС (если подключиться через computer management с русскоязычной ос, результат тот же):

    Event Type: Information
    Event Source: Windows SharePoint Services 3 Search
    Event Category: Служба поиска
    Event ID: 1003
    Date: 22.05.2007
    Time: 14:48:30
    User: N/A
    Computer: [censored]
    Description:
    Служба поиска запущена.

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

    Event Type: Information
    Event Source: Windows SharePoint Services 3 Search
    Event Category: Служба поиска
    Event ID: 1013
    Date: 22.05.2007
    Time: 14:48:31
    User: N/A
    Computer: [censored]
    Description:
    Служба поиска успешно остановлена.

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

    Event Type: Error
    Event Source: VSS
    Event Category: None
    Event ID: 11
    Date: 22.05.2007
    Time: 14:48:31
    User: N/A
    Computer: [censored]
    Description:
    Volume Shadow Copy Service information: The COM Server with CLSID {4e14fba2-2e22-11d1-9964-00c04fbbb345} and name CEventSystem cannot be started. [0x800401f0]

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
    Data:
    0000: 2d 20 43 6f 64 65 3a 20 - Code:
    0008: 57 52 54 57 52 54 49 43 WRTWRTIC
    0010: 30 30 30 30 33 30 34 34 00003044
    0018: 2d 20 43 61 6c 6c 3a 20 - Call:
    0020: 57 52 54 57 52 54 49 43 WRTWRTIC
    0028: 30 30 30 30 33 30 31 32 00003012
    0030: 2d 20 50 49 44 3a 20 20 - PID:
    0038: 30 30 30 30 33 36 34 38 00003648
    0040: 2d 20 54 49 44 3a 20 20 - TID:
    0048: 30 30 30 30 34 35 34 34 00004544
    0050: 2d 20 43 4d 44 3a 20 20 - CMD:
    0058: 22 43 3a 5c 50 72 6f 67 "C:\Prog
    0060: 72 61 6d 20 46 69 6c 65 ram File
    0068: 73 5c 43 6f 6d 6d 6f 6e s\Common
    0070: 20 46 69 6c 65 73 5c 4d Files\M
    0078: 69 63 72 6f 73 6f 66 74 icrosoft
    0080: 20 53 68 61 72 65 64 5c Shared\
    0088: 57 65 62 20 53 65 72 76 Web Serv
    0090: 65 72 20 45 78 74 65 6e er Exten
    0098: 73 69 6f 6e 73 5c 31 32 sions\12
    00a0: 5c 42 49 4e 5c 6d 73 73 \BIN\mss
    00a8: 65 61 72 63 68 2e 65 78 earch.ex
    00b0: 65 22 20 20 20 20 20 20 e"
    00b8: 2d 20 55 73 65 72 3a 20 - User: [censored]
    00d8: 2d 20 53 69 64 3a 20 20 - Sid: [censored]

    Event Type: Error
    Event Source: VSS
    Event Category: None
    Event ID: 8193
    Date: 22.05.2007
    Time: 14:48:31
    User: N/A
    Computer: [censored]
    Description:
    Volume Shadow Copy Service error: Unexpected error calling routine CoCreateInstance. hr = 0x800401f0.

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
    Data:
    0000: 2d 20 43 6f 64 65 3a 20 - Code:
    0008: 57 52 54 57 52 54 49 43 WRTWRTIC
    0010: 30 30 30 30 33 30 35 30 00003050
    0018: 2d 20 43 61 6c 6c 3a 20 - Call:
    0020: 57 52 54 57 52 54 49 43 WRTWRTIC
    0028: 30 30 30 30 33 30 31 32 00003012
    0030: 2d 20 50 49 44 3a 20 20 - PID:
    0038: 30 30 30 30 33 36 34 38 00003648
    0040: 2d 20 54 49 44 3a 20 20 - TID:
    0048: 30 30 30 30 34 35 34 34 00004544
    0050: 2d 20 43 4d 44 3a 20 20 - CMD:
    0058: 22 43 3a 5c 50 72 6f 67 "C:\Prog
    0060: 72 61 6d 20 46 69 6c 65 ram File
    0068: 73 5c 43 6f 6d 6d 6f 6e s\Common
    0070: 20 46 69 6c 65 73 5c 4d Files\M
    0078: 69 63 72 6f 73 6f 66 74 icrosoft
    0080: 20 53 68 61 72 65 64 5c Shared\
    0088: 57 65 62 20 53 65 72 76 Web Serv
    0090: 65 72 20 45 78 74 65 6e er Exten
    0098: 73 69 6f 6e 73 5c 31 32 sions\12
    00a0: 5c 42 49 4e 5c 6d 73 73 \BIN\mss
    00a8: 65 61 72 63 68 2e 65 78 earch.ex
    00b0: 65 22 20 20 20 20 20 20 e"
    00b8: 2d 20 55 73 65 72 3a 20 - User: [censored]
    00d8: 2d 20 53 69 64 3a 20 20 - Sid: [censored]

    Подключаемся через computer managemet с англоязычной ОС с установленным русским MUI:

    Тип события: Уведомление
    Источник события: Windows SharePoint Services 3 Search
    Категория события: Служба поиска
    Код события: 1003
    Дата: 22.05.2007
    Время: 14:48:30
    Пользователь: Н/Д
    Компьютер: [censored]
    Описание:
    Служба поиска запущена.

    Дополнительные сведения можно найти в центре справки и поддержки, в "http://go.microsoft.com/fwlink/events.asp".

    Тип события: Уведомление
    Источник события: Windows SharePoint Services 3 Search
    Категория события: Служба поиска
    Код события: 1013
    Дата: 22.05.2007
    Время: 14:48:31
    Пользователь: Н/Д
    Компьютер: [censored]
    Описание:
    Служба поиска успешно остановлена.

    Дополнительные сведения можно найти в центре справки и поддержки, в "http://go.microsoft.com/fwlink/events.asp".

    Тип события: Ошибка
    Источник события: VSS
    Категория события: Отсутствует
    Код события: 11
    Дата: 22.05.2007
    Время: 14:48:31
    Пользователь: Н/Д
    Компьютер: [censored]
    Описание:
    Ошибка теневого копирования тома: не удается создать экземпляр административной папки COM+ [{4e14fba2-2e22-11d1-9964-00c04fbbb345}].

    Дополнительные сведения можно найти в центре справки и поддержки, в "http://go.microsoft.com/fwlink/events.asp".
    Данные:
    0000: 2d 20 43 6f 64 65 3a 20 - Code:
    0008: 57 52 54 57 52 54 49 43 WRTWRTIC
    0010: 30 30 30 30 33 30 34 34 00003044
    0018: 2d 20 43 61 6c 6c 3a 20 - Call:
    0020: 57 52 54 57 52 54 49 43 WRTWRTIC
    0028: 30 30 30 30 33 30 31 32 00003012
    0030: 2d 20 50 49 44 3a 20 20 - PID:
    0038: 30 30 30 30 33 36 34 38 00003648
    0040: 2d 20 54 49 44 3a 20 20 - TID:
    0048: 30 30 30 30 34 35 34 34 00004544
    0050: 2d 20 43 4d 44 3a 20 20 - CMD:
    0058: 22 43 3a 5c 50 72 6f 67 "C:\Prog
    0060: 72 61 6d 20 46 69 6c 65 ram File
    0068: 73 5c 43 6f 6d 6d 6f 6e s\Common
    0070: 20 46 69 6c 65 73 5c 4d Files\M
    0078: 69 63 72 6f 73 6f 66 74 icrosoft
    0080: 20 53 68 61 72 65 64 5c Shared\
    0088: 57 65 62 20 53 65 72 76 Web Serv
    0090: 65 72 20 45 78 74 65 6e er Exten
    0098: 73 69 6f 6e 73 5c 31 32 sions\12
    00a0: 5c 42 49 4e 5c 6d 73 73 \BIN\mss
    00a8: 65 61 72 63 68 2e 65 78 earch.ex
    00b0: 65 22 20 20 20 20 20 20 e"
    00b8: 2d 20 55 73 65 72 3a 20 - User: [censored]
    00d8: 2d 20 53 69 64 3a 20 20 - Sid: [censored]

    Тип события: Ошибка
    Источник события: VSS
    Категория события: Отсутствует
    Код события: 8193
    Дата: 22.05.2007
    Время: 14:48:31
    Пользователь: Н/Д
    Компьютер: [censored]
    Описание:
    Ошибка теневого копирования тома: существуют два устройства записи с идентичным id CoCreateInstance.

    Дополнительные сведения можно найти в центре справки и поддержки, в "http://go.microsoft.com/fwlink/events.asp".
    Данные:
    0000: 2d 20 43 6f 64 65 3a 20 - Code:
    0008: 57 52 54 57 52 54 49 43 WRTWRTIC
    0010: 30 30 30 30 33 30 35 30 00003050
    0018: 2d 20 43 61 6c 6c 3a 20 - Call:
    0020: 57 52 54 57 52 54 49 43 WRTWRTIC
    0028: 30 30 30 30 33 30 31 32 00003012
    0030: 2d 20 50 49 44 3a 20 20 - PID:
    0038: 30 30 30 30 33 36 34 38 00003648
    0040: 2d 20 54 49 44 3a 20 20 - TID:
    0048: 30 30 30 30 34 35 34 34 00004544
    0050: 2d 20 43 4d 44 3a 20 20 - CMD:
    0058: 22 43 3a 5c 50 72 6f 67 "C:\Prog
    0060: 72 61 6d 20 46 69 6c 65 ram File
    0068: 73 5c 43 6f 6d 6d 6f 6e s\Common
    0070: 20 46 69 6c 65 73 5c 4d Files\M
    0078: 69 63 72 6f 73 6f 66 74 icrosoft
    0080: 20 53 68 61 72 65 64 5c Shared\
    0088: 57 65 62 20 53 65 72 76 Web Serv
    0090: 65 72 20 45 78 74 65 6e er Exten
    0098: 73 69 6f 6e 73 5c 31 32 sions\12
    00a0: 5c 42 49 4e 5c 6d 73 73 \BIN\mss
    00a8: 65 61 72 63 68 2e 65 78 earch.ex
    00b0: 65 22 20 20 20 20 20 20 e"
    00b8: 2d 20 55 73 65 72 3a 20 - User: [censored]
    00d8: 2d 20 53 69 64 3a 20 20 - Sid: [censored]

    Абсолютно непонятно, почему английская и русская версия ОС показывают события одинаково, а английская с MUI переводит содержимое. Необъяснимый факт.

    А теперь к вопросу, почему так вышло. Пользователю, под которым запускалась служба, не хватало прав на доступ к папке %systemroot%\Registration, т.е. не было прав от корня диска до папки, на саму же папку права были. Снова чудеса — через групповую политику всем пользователям назначено право Bypass traverse checking (Обход перекрестной проверки), т.е., по идее, права от корня диска не нужны. Цитирую описание:

    Обход перекрестной проверки. Это право пользователя определяет, какие пользователи могут проходить по дереву каталога независимо от того, имеются ли у них разрешения на доступ к этому каталогу. Эта привилегия не позволяет пользователю выводить список содержимого каталога, а только дает возможность перемещаться по его структуре.

    Есть идеи по поводу?

    Вот такая веселенькая история приключилась 🙂

  • Проблемы при синхронизации времени на Windows XP

    Недавно переставил дома систему и обнаружил, что время не синхронизируется ни с time.nist.gov, ни с time.windows.com. Ответов на вопрос «почему же так случилось?» я не получил ни от Гугля, ни от Яндекса. Пляски с бубнами и настройка службы Windows Time через командную строку и реестр не помогли.
    Положительный результат все же был достигнут путем смены сервера на ru.pool.ntp.org. Вот такая история.

  • Бесплатные системы внешнего мониторинга

    Хочу порекомендовать две системы внешнего мониторинга , которым пользуюсь сам.

    UpPanel Опрос каждые 30 минут HTTP, HTTPS, FTP, SSH, POP3, SMTP, MySQL, Ping, Custom TCP Ports, Page content check. Базовая отчетность, предупреждения высылаются на Email, Telephone, SMS, AIM, MSN, YIM. В данный момент система работает, но на главноей странице выдается ошибка.
    Update: В данный момент система функционирует нормально.

    mon.itor.us Web 2.0 в действии. Куча возможностей по опросу (HTTP, HTTPS, FTP, SIP, IMAP, SMTP, POP3 на любом порту, любой TCP или UDP порт, DNS, Ping) и отчетности, мониторинг из 3х точек, опрос каждые 30-45 минут, предупрежедния высылаются на e-mail, ICQ, YIM, MSN, GTalk, телефон. Можно скачать и установить агента (пока только под Windows), который помимо мониторига процессов, памяти и жестких дисков самой машины может выступать в роли еще одной точки опроса (пока опрашиваются только HTTP и Ping).

    Оптимально использовать обе, т.к. в результате проверки будут каждые 15 минут 🙂

  • Выдача Last-Modified, а также работа с If-Modified-Since в PHP-скриптах

    <?php
    // Определяем дату модификации скрипта и выдаем Last-Modified
    $last_modified = filemtime($SCRIPT_FILENAME);
    header('Last-Modified: ' . gmdate('D, d M Y H:i:s', $last_modified) . ' GMT');
    // Пытаемся получить содержимое If-Modified-Since
    foreach($_SERVER as $name => $value) {
    if($name == 'HTTP_IF_MODIFIED_SINCE')
    $modified_since = $value; }
    // Пытаемся преобразовать значение в Unix time
    if (isset($modified_since)) {
    $modified_since = strtotime(preg_replace('/;.*$/', '', $modified_since));
    } else {
    $modified_since = 0; }
    // Сравниваем даты и выдаем заголовок, если требуется
    if ($last_modified <= $modified_since) {
    header('HTTP/1.1 304 Not Modified');
    exit(); }
    ?>

    В PHP не понимаю вообще ничего, поэтому комменты по оптимизации и исправлению багов крайне приветствуются.