oldi

Советы администратору Windows NT

Николай Прокофьев

 

Контроль и учет комплектности аппаратных ресурсов компании

Написание собственного Windows NT-сервиса

Контроль сетевых ресурсов компании. Системные политики

Учет и контроль действий пользователей системы

Тайные способы инсталляции Windows NT 4.0

Использование нескольких операционных систем на одном компьютере

Почему сетью необходимо управлять?

 

Однажды наступает день, когда, придя на работу, сетевой администратор задает себе вопрос: а чем бы заняться сегодня? Сеть проложена, серверы подключены, пользователи заведены и работают, никто не обрывает телефон с требованием подключить его к системе. Такой день является венцом кропотливого и суматошного периода прокладки и настройки сети. Что же дальше?

 

Целью данного материала является рассмотрение ряда прикладных вопросов, связанных с администрированием сети под управлением операционной системой Microsoft Windows NT 4.0 производства компании Microsoft (http://www.microsoft.com/ntserver/).

В процессе эксплуатации системы возникают проблемы, которые можно условно разделить на три большие группы: проблемы коммутации и связи; аппаратного и программного обеспечения клиентской части; обеспечения работоспособности программного и аппаратного обеспечения сети. Для их решения в рамках службы технической поддержки создаются соответствующие группы: группа связи, инженерная и административная группы. В связи со спецификой решаемых проблем общий контроль остается за административной группой. В небольших сетях (с численностью рабочих мест до 20) для решения всех перечисленных проблем достаточно одного-двух человек. Однако для больших систем (более 100 рабочих мест) этого уже недостаточно. Необходимо отметить, что численность инженерной группы напрямую зависит от производителя аппаратного обеспечения клиентских рабочих мест. Если для обслуживания 200 компьютеров Brand-Name и решения всех проблем, возникающих при работе у пользователей, хватает двух-трех инженеров, то для такого же количества «желтых» систем это число придется удвоить. Для группы связи и административной группы такой подход неприменим. Численность этих подразделений определяется на основе количества обслуживаемых устройств и регламента их повседневной деятельности. Необходимо отметить, что в системе должен быть один администратор. На случай его отсутствия в момент возникновения проблемы у одного из инженеров должен быть доступ в систему с администраторскими привилегиями. При большом количестве контролируемых сетевых ресурсов численность административной группы может увеличиваться. Как правило, на административную группу возлагается еще и ряд дополнительных обязанностей (например, написание прикладного программного обеспечения).

Основная цель, стоящая перед службой технической поддержки, — постоянная и полная работоспособность системы. Для ее успешной реализации необходимо определить узкие места системы и вести их мониторинг с минимальной задержкой реагирования на возникшие проблемы. При этом перечень узких мест достаточно обширен: здесь и контроль наличия свободного места и анализ информации файл-сервера, и полный учет и контроль аппаратного обеспечения, и проверка функционирования ключевых серверов сети, и контроль действий пользователей системы, и анализ Internet-трафика сети, и поиск и пресечение попыток хищения информации из сети. Все эти действия нудны, монотонны и неизменно непопулярны в среде системных администраторов. Однако выполнять их необходимо постоянно. Выходов из ситуации несколько. Некоторые, например, вешают такую рутину на подчиненных инженеров. Другой выход состоит в полной изоляции системы от всего внешнего мира. Но как долго главный бухгалтер согласится бегать смотреть курсы валют на вашем компьютере и хранить все проводки на регулярно сбоящих дискетах? Каким же образом сохранить полный контроль над ситуацией при минимальных временных затратах? Выход один — необходимо делегировать некоторые функции контроля над сетью специализированному программному обеспечению.

Контроль и учет комплектности аппаратных ресурсов компании

Слово «инвентаризация» неизменно вызывает гримасу отвращения. Снова несколько дней, а то и недель проводить за переписью серийных номеров компьютеров и проверкой их комплектности… Отказаться от этого процесса или использовать данные инвентаризации годичной давности не представляется возможным в связи с непредсказуемостью пользователей: кто-то мог запросто снять с компьютера новый большой винчестер и унести его к себе домой, поставив в систему свой старый винчестер. Попробуем рассчитать количество времени, затрачиваемое на проведение инвентаризации:

((200 компьютеров * 10 минут ) : 60) : 4 часа в день = 8 дней, или 2 недели.

Это только время, необходимое для обхода всех компьютеров. Исходя из собственного опыта можно констатировать, что ни одна инвентаризация не длилась меньше трех недель. Для сокращения этого времени нами были использованы самые разные способы — от запирания компьютеров с целью защиты от хищений до попыток написания собственного программного обеспечения контроля комплектности персональных компьютеров. Однако кардинального сокращения времени инвентаризации эти меры не принесли. В публикациях мы нашли упоминания о программном обеспечении Microsoft System Management Server (http://www.microsoft.com/smsmgmt/default.asp). Мы пытались получить ознакомительную версию данного продукта, но безуспешно. Вскоре с новым сетевым аппаратным обеспечением компании 3Com пришел пакет управления сетью HP OpenView. Он произвел на нас неизгладимое впечатление как обилием полезных функций, так и частотой сбоев. Однако задумка разработчиков была очень интересна, и мы стали ждать появления улучшенной версии этого пакета. Результат превзошел все наши ожидания.

Программный пакет HP TopTools является серверным приложением, построенным по модульному принципу, работа с которым ведется через браузер путем обращения к определенной страничке Intranet. В процессе работы создается база устройств, присутствующих в сети с определением их типа и производителя. Предоставляемая информация о сети весьма многообразна — от построения полной топологии с возможностью определить положение компьютера с точность до порта концентратора и до получения информации о «железе» компьютера пользователя с возможностью обновления по сети программы BIOS. В составе программного пакета доступны модули управления следующими элементами сети:

  • концентраторы и коммутаторы (Hubs&Switches);
  • Windows-терминалы (Windows based terminals);
  • персональные компьютеры (Desktop PCs);
  • сетевые серверы (NetServers);
  • принтеры Hewlett-Packard (Web JetAdmin for Printers);
  • дополнительные утилиты (Value Pack).

С помощью этой программы инвентаризация сейчас занимает не более трех-четырех дней. Самая сильная черта программы состоит в том, что она бесплатна и доступна по адресу http://www.hp.com/toptools/. Эта программа заслуживает того, чтобы с ней познакомиться поближе. Единственное ограничение — на сервере должно быть не менее 128 Мбайт оперативной памяти.

К тому же использование этого программного пакета будет оправдано для сетей с большим количеством сетевых устройств. Для небольших сетей наиболее разумно использовать ПО контроля, построенное по технологии Trojan Horse. Как минимум, оно должно реализовать следующие функции:

  • контроль аппаратного обеспечения и информация обо всех изменениях;
  • контроль свободного дискового пространства на локальной машине и возможность регулярно удалять содержимое временных папок;
  • работа в фоновом режиме и задействование минимума системных ресурсов. При этом пользователь не должен иметь возможность ее отключить В файловых архивах удалось обнаружить ряд программ, реализующих часть указанных функций и, что более важно, ряд компонентов C++ Builder и Delphi.

На нашем CD-ROM приведены наиболее интересные компоненты:

  • полная информация о системе и системных устройствах
  • лучший набор компонент для написания собственных приложений
  • компонент, позволяющий скрыть программу из TaskBar и TaskList Windows
В начало

В начало

Написание собственного Windows NT-сервиса

Серверное программное обеспечение должно удовлетворять ряду дополнительных требований. Прежде всего это ПО должно работать независимо от того, кто локально работает на сервере. Идеальным будет его автоматический запуск при загрузке сервера до появления приглашения на вход в систему. Это реализуется путем добавления команды запуска программы в сервис AT или аналогичный. При этом само ПО должно проверять наличие экземпляра программы в памяти. В противном случае мы получим несколько экземпляров программы в памяти, что отрицательно скажется на производительности сервера. Вторым требованием является возможность удаленного управления ПО с возможностью его остановки и перезапуска. Для выполнения второго требования в ПО приходится встраивать модуль удаленного управления, что является не такой уж сложной задачей, но излишне усложняет программный код. В полном объеме удовлетворить приведенным требованиям при минимуме использования дополнительных ресурсов (имеется в виду — как дополнительных сервисов, так и излишнего программного кода) возможно только путем написания собственного Windows NT-сервиса. В этом случае его запуск будет выполняться автоматически при загрузке сервера и управлять им можно будет с использованием стандартных средств Windows NT. В качестве примера рассмотрим шаблон написания сервиса, опубликованный на http://www.torry.ru/ автором peter@interbill.co.za. Для его использования необходимо создать новое приложение, затем удалить форму, предложенную по умолчанию (Form1), и добавить форму шаблона сервиса (uService.pas) в проект. Далее делаем форму uService.pas создаваемой по умолчанию (Auto create) и в настройках проекта (Project options) указываем необходимость создания консольного приложения (Generate console application). И, наконец, в исходном коде проекта (Project source) удаляем все строчки между begin и end и дописываем туда строку DoService(ServiceName, ServiceDisplayName); где ServiceName — наименование сервиса, а ServiceDisplayName — условное имя сервиса в файлах протокола (log-files) и менеджере сервисов (Service manager).

Дальнейшее написание программного обеспечения производится как в самом заурядном случае, за исключением невозможности отладки привычными средствами (через вывод в метки на форме промежуточных значений и BreakPoints) и вывода информации на экран (возможен вывод только через WriteLN при открытом консольном окне сервиса). При написании сложного сервиса, работа которого зависит от других сервисов, рекомендуется использовать параметр Dependencies. Он позволяет указывать очередность загрузки сервисов при загрузке системы. Например, добавление строки Dependencies := 'RASMAN' #0 'SQLSVR' перед DoService приведет к тому, что сервисы RASMAN и SQLSVR будут запущены до запуска нашего сервиса. Пример исходного текста проекта приведен ниже:

program VCPService; 
uses
        Forms,
        uService in 'uService.pas' {Form1}; 
{$R *.RES}
begin
        Dependencies := 'RASMAN';
        DoService('VCPService', 'VCP Service');
   end. 

Инсталляция сервиса в систему производится через системную консоль (Command prompt). Запуск файла сервиса с ключом '/A' установит наш сервис в режим автоматического запуска (Manual start-up). Полный список ключей выдается при запуске с ключом '/?'. Файл 'uService.pas'.

В начало

В начало

Контроль сетевых ресурсов компании. Системные политики

В целях обеспечения максимальной безопасности все сетевые ресурсы должны создаваться и контролироваться только администратором системы. В больших сетях эти функции выполняет административная группа, члены которой должны постоянно обмениваться информацией об изменениях, происшедших в сети. Альтернативой является распределение управления сетевых ресурсов между членами административной группы с ведением детального протокола. При этом необходимо запретить пользователям персональных систем создавать свои сетевые ресурсы (sharing). Наиболее простым и гибким способом является введение системных правил (system policy). Этот способ позволяет защитить систему от некорректной работы пользователя путем централизованного задания некоторых ограничений как по имени компьютера, так и по имени пользователя (UserName). Для его реализации достаточно установить с Microsoft Windows 95 CD программу редактирования правил (poledit.exe). С помощью этой программы создается файл конфигурации (config.pol), который необходимо поместить в /Netlogon контроллера вашего домена. При следующем входе пользователя в сеть информация из данного файла будет включена в реестр. Более подробную информацию об этом можно найти в статье «Windows NT Server, управление рабочей средой пользователей» (КомпьютерПресс 10’98).

В начало

В начало

Учет и контроль действий пользователей системы

Важной проблемой является нерациональное использование сетевых ресурсов пользователями. Наиболее распространенными являются вывод на печать посторонних материалов в астрономическом количестве и нерациональное использование дисковой памяти серверов. К сожалению, базовая NT, в отличие от Novell, не позволяет вести учет количества распечатанных страниц и квотирование дисковой памяти сервера. Для этого администраторам Windows NT приходится использовать дополнительное ПО. Для контроля вывода на принтеры подойдет Print Manager Plus (http://www.printmanagerplus.com/). После установки на сервер печати вы получите статистику вывода на печать. Информация о пользователях берется с контроллера домена сети. Для Windows и OS/2 клиентов поддерживаются языки PCL4, PCL5, PCL5C, PCL5E, PCLXL, ESC/2, POSTSCRIPT и PJL. Для Apple Mac и Unix пока только POSTSCRIPT. Возможно как постоянное, так и суточное квотирование вывода на любой из доступных принтеров. В комплект поставки входит клиентское приложение, информирующее пользователя о размере его квоты и о количестве распечатанных страниц. Вся служебная информация и информация об использовании печатных устройств хранится в базе Microsoft Access, что дает возможность составления произвольных отчетов. По истечении пробного периода отключается утилита администрирования системы. С квотированием дискового пространства несколько сложнее: Quota Manager не всегда корректно блокирует запрос на запись сверх установленного лимита. Поэтому имеет смысл задуматься над использованием простого командного (batch) файла, который периодически будет отслеживать и удалять файлы с определенным расширением (например, если сервер предназначен только для хранения текстовой информации, — с расширениями .com, .exe и пр.). Альтернативой может оказаться написание собственного программного обеспечения, которое будет удалять из определенных папок все файлы, за исключением указанных типов.

В начало

В начало

Тайные способы инсталляции Windows NT 4.0

Одной из несомненно положительных черт операционной системы Windows NT 4.0 является продуманность ее программы начальной установки. Однако с момента выхода базовой версии 4.0 производители аппаратного обеспечения выпустили огромное количество нового оборудования. Сейчас установка Windows NT представляет собой сложный многоступенчатый процесс. Видеоадаптеры AGP начинают определяться системой только после установки пакета обновления NT Service Pack 3, проблема Y2K решается установкой пакета обновления NT Service Pack 6a. Однако после ее установки вам не удастся установить драйверы сканера, которые требуют именно установки пакета обновления 3 и никакого другого. Специалисты рекомендуют для каждого компьютера создать инструкцию, регламентирующую процесс начальной установки системы. Но что делать, если программа установки не может опознать установленный в системе винчестер?

С данной проблемой сотрудники нашего сервисного центра столкнулись неожиданно. В партии нового оборудования, закупленного компанией, пришел новейший сервер производства Hewlett-Packard HP E-60. По старой привычке не доверять предустановленному программному обеспечению, инженеры начали процесс начальной установки Windows NT с полным форматированием установленного в системе SCSI-диска. Однако программа установки не смогла определить наличие SCSI-устройства. Первая мысль была о неисправности диска. Однако под DOS диск успешно работал. Тогда в систему был установлен второй винчестер стандарта IDE. Установка на него Windows NT была успешна, но диск не появился. После установки пакета обновления 3 ситуация изменилась: мы смогли нормально работать со SCSI-устройством. Но IDE-диск был нужен в другом месте — пришлось задуматься о способе переноса операционной системы с диска IDE на SCSI-устройство. Коллеги, к которым мы обращались за помощью, не смогли ничего посоветовать. Пришлось пойти путем анализа загрузочной записи диска. В результате был обнаружен способ переноса операционной системе. Он достаточно прост, однако для его реализации был необходим еще один компьютер с установленной системой Windows NT:

  1. IDE-винчестер с операционной системой (диск 1) и SCSI-устройство (диск 2) были подключены к компьютеру с установленной системой Windows NT 4.0 (диск 3).
  2. Выполнена загрузка с диска 3.
  3. Проведено форматирование диска 2.
  4. Простым копированием (sic!) папки WINNT и файлов корневой папки с диска 1 на диск 2 операционная система была перенесена.
  5. Используя программу FDISK, раздел на диске 2 был назначен активным.

После установки диска 2 в сервер (SCSI-устройство 0) мы успешно загрузились и смогли работать.

В начало

В начало

Использование нескольких операционных систем на одном компьютере

В процессе администрирования сети приходится сталкиваться с проблемой выбора операционной системы, устанавливаемой на рабочем месте сотрудников административной группы. С одной стороны, поскольку мы администрируем домен Windows NT, было бы логично установить на рабочее место Windows NT Server. Однако это не вполне удобно с точки зрения эффективности использования ресурсов компьютера. Действительно, NT Server оптимизирован для сетевых приложений и запросов, то есть локальные входы имеют более низкий приоритет. NT WorkStation менее требовательна к ресурсам, оптимизирована для выполнения локальных приложений. При этом все утилиты администрирования домена работают в ней корректно. Определенным преимуществом является и наличие русской версии. С другой стороны, для мониторинга сети наиболее удобны операционные системы семейства UNIX (FreeBSD), а для создания и редактирования системных правил для клиентов Windows 95/98 необходима системы Windows 95. В связи с этим приходится использовать в работе несколько компьютеров с разными операционными системами, что не вполне оправданно с финансовой точки зрения.

После пресловутого августовского кризиса мы задумались: нельзя ли поставить на один компьютер несколько операционных систем таким образом, чтобы они были полностью изолированы друг от друга? Было рассмотрено и опробовано несколько программ, реализующих такие функции. К сожалению, большинство из них предоставляли возможность выборочного запуска MS-DOS/Windows/Windows NT, при этом NT приходилось устанавливать на файловую систему FAT. Также существенным недостатком была невозможность полной изоляции одной операционной системы от других. Физически это выражалось в размещении всех операционных систем на одном диске при отсутствии ограничений доступа в зависимости от загруженной операционной системы. В литературе мы нашли упоминания о менеджере загрузки, входящим в состав IBM OS/2 WARP. Он поставляется как часть стандартной поставки OS/2 WARP и доступен отдельно. Он позволял разбить жесткий диск на части, при этом доступ из одной в другую был невозможен. При загрузке в зависимости от выбранной системы активизировалась одна из них, ей присваивалось логическое имя «C:», и грузилась операционная система. Для удобства инсталляции операционных систем с компакт диска и из Internet один из разделов назначался активным по умолчанию, то есть при загрузке с дискеты или CD он был доступен как обыкновенный раздел. Среди недостатков этого менеджера загрузки стоит упомянуть только наличие ограничений на загрузочные части — их должно быть не более трех. В случае установки в системе нескольких винчестеров возможность доступа к ним определяется возможностями операционной системы.

КомпьютерПресс 3'2000