|
|
|
Страница 2 из 2 Установка и удаление программОчевидно, что на терминальном сервере будут запускаться те или иные приложения. Это можно сделать двумя способами: через Control Panel Add/Remove Programs и через командную строку – по команде Change User. Обе утилиты переводят терминальный сервер в режим Install. При этом в системный реестр в ветвь HKEY_LOCAL_MACHINE вносятся некоторые изменения, связанные с устанавливаемыми параметрами. Программа инсталляции также копирует их в ветвь HKEY_CURRENT_ USER, когда пользователь запускает данное приложение в терминальном режиме на сервере, который находится в режиме Execute. (После установки приложения администратор системы должен щелкнуть мышью на кнопке Finish или же с командной строки ввести change user /execute для перевода сервера в режим Execute.) Службы терминального сервера не предоставляют никаких других механизмов для управления процессом установки приложений. Если администратор попытается просто запустить программу установки setup.exe, система выдает сообщение, что для этой цели следует воспользоваться Add/Remove Programs, и предлагает ссылку. Когда используется Add/Remove Programs, приложение устанавливается в операционной системе Windows 2000 в многопользовательском режиме. Утилита лицензирования, Terminal Services Licensing, предназначена для учета только терминальных сессий. Менеджер лицензирования нужно запустить, чтобы пользователи могли обращаться к терминальному серверу. Сама по себе эта программа вовсе не обязательно должна запускаться именно на терминальном сервере, ее можно установить на любой компьютер с Windows 2000 Server. До сих пор я рассказывал о том, как работать с утилитами терминальных служб при создании клиентов, о настройке параметров соединения и пользователя, инсталляции приложений и лицензировании пользователей терминального сервера. Но что делать, если события станут развиваться не так, как предполагает администратор терминального сервера? В таком случае на помощь приходит менеджер Terminal Services Manager (см. Рисунок 4) из состава Windows 2000 Server. С его помощью администратор следит за использованием терминального сервера, проводит мониторинг запущенных на сервере приложений и проверяет статус соединений. Рисунок 4. Terminal Services Manager. В левой панели, представленной на Рисунке 4, показаны все домены сети и все терминальные серверы внутри доменов. (Чтобы обслуживать терминальный сервер, совсем необязательно находиться за консолью – достаточно запустить данное управляющее приложение и выполнять администрирование любого из найденных в сети серверов.) Что появится в правой панели, зависит от того, что выбрано в левой. Если указана вся сеть или какой-то конкретный домен, то в правой части отображаются все текущие соединения с терминальными серверами (и активные, и не обслуживаемые), с указанием имени хоста для каждого соединения. Если указан определенный сервер, то выводится список всех его соединений. При указании на пользовательское имя, правая панель позволяет увидеть все процессы, запущенные в контексте пользователя или же информацию о пользовательской сессии. Т. е. правая панель составлена из отдельных закладок, содержимое которых синхронизировано с выбранным в левой части объектом – доменом, сервером или пользователем. Советую не полениться и уделить немного времени изучению данного инструмента. Таблица 2 содержит подсказку для поиска необходимой информации, в ней перечисляется, что именно находится на той или иной закладке. Более важная задача – научиться работать с Terminal Services Manager. Рассмотрим для примера, как, используя Terminal Services Manager, установить, что запущено на терминальном сервере, послать пользователям сервера сообщения, принудительно завершить некоторые удаленные процессы и закрыть ряд пользовательских сессий. Таблица 2. Поиск информации в менеджере терминальных служб (Terminal Services Manager).
Предположим, администратор системы решил выяснить, не играет ли кто-нибудь из сотрудников в TSQuake (терминальную версию популярной игры Quake). Он запускает Terminal Services Manager, выбирает домен или сервер, информацию о котором намеревается собрать. На правой панели выводится закладка со списком пользователей, зарегистрированных на данный момент на терминальном сервере, закладка с активными и отсоединенными сессиями и, наконец, закладка со списком запущенных на терминальном сервере процессов. Эта информация позволяет определить, какой пользователь и какой идентификатор процесса (PID) ассоциирован с какой сессией, а также насколько сервер занят обслуживанием данной сессии. Если щелкнуть на закладке Processes, связанной с выбранным доменом, появится полный список всех запущенных в домене процессов с указанием серверов, на которых они работают, перечень всех сессий и пользователей – владельцев открытых сессий. Здесь также можно найти идентификаторы PID, которые понадобятся администратору в случае, если потребуется вручную завершить какие-то процессы с командной строки. Единственный способ сделать это – указать специфичную копию запущенного приложения, задав его PID. Наконец, список играющих в TSQuake готов. Администратор дает пользователям понять, что ему известно, чем они занимаются. Например, он может послать им сообщение, даже между доменами, или посредством интерфейса Terminal Services Manager, или с командной строки. Для отправки сообщения при помощи оболочки Terminal Services Manager нужно выбрать терминальный сервер, затем указать пользователей, которым следует отослать сообщение, и, наконец, в меню Actions выбрать Send Message. Откроется окно, в котором набирается текст сообщения, нажимается ОК, и сообщение незамедлительно «всплывает» перед участниками игры. ТерминаторНо представим себе, что нашелся сотрудник, который попросту проигнорировал полученное сообщение. Самое время «власть употребить» и принудительно снять запущенное приложение. Каждая копия TSQuake, которую закрывает администратор, будет тут же отключена безо всякого предупреждения. Чтобы снять с выполнения на терминальном сервере одну-единственную копию запущенного приложения, нужно выбрать сервер или домен в левой панели и щелкнуть на закладке Processes в правой части. На экране появятся все работающие процессы. Выбрав процесс, в меню Action нужно открыть контекстное меню и указать End Process (единственный доступный пункт). Работа копии приложения будет незамедлительно прекращена. Но вместо того, чтобы просто «убить» приложение, можно подойти к делу более тонко: администратор в состоянии увидеть, чем же именно занят пользователь в данный момент. Скажем, если сотрудник утверждает, что у него и в мыслях не было в рабочее время запускать TSQuake, но он понятия не имеет, как после непреднамеренного запуска этой программы завершить ее работу, администратор может взять на себя полный контроль над сессией данного пользователя. Все, что в состоянии сделать пользователь со своей локальной рабочей станции (в рамках терминальной сессии), может сделать и системный администратор. Важное замечание: захватить управление сессией терминального пользователя можно лишь из другой терминальной сессии, в которой применяется такой же протокол – другими словами, не удастся управлять сессией, обмен данными с которой осуществляется по протоколу ICA, из другой сессии, работающей по протоколу RDP. И наоборот, RDP-сессия не может управляться ICA-сессией. Кроме того, функция удаленного управления, реализованная в Terminal Services Manager, и соответствующая утилита командной строки непосредственно с консоли терминального сервера не работают. А значит, прежде чем организовать управление какой-либо терминальной сессией, администратор должен открыть новую терминальную сессию и зарегистрироваться на сервере с административными привилегиями. После этого необходимо запустить Terminal Services Manager, выбрать в левой панели сервер и открыть закладку Users со списком всех пользовательских сессий. Затем нужно отыскать сессию того пользователя, станцией которого требуется управлять в удаленном режиме, и выбрать Remote Control из меню Actions. В открывшемся окне будет предложено задать «горячую» клавишу, при нажатии на которую перехват управления сессией данного пользователя будет завершен, и администратор сможет вернуться в свою «родную» сессию. При описании конфигурации сессии администратор может указать, что пользователь должен дать разрешение на перехват управления своей сессией. В этом случае при обращении администратора системы к ней перед пользователем всплывет диалоговое окно с предложением разрешить или отвергнуть вмешательство в процесс управления сессией. Если разрешение получено, то с этого момента администратор несет полную ответственность за состояние сессии и может, если нужно, закрыть то или иное приложение, запущенное в ней. Если же пользователь не разрешает перехват управления, то система выдает администратору сообщение об ошибке, в котором говорится, что пользователь не дал ему разрешения управлять своей сессией. Если администратор хочет завершить сессию целиком, а не только закрыть какое-то одно открытое в ней приложение, у него есть выбор – либо отсоединить сессию (disconnect), либо сбросить (reset) соединение окончательно. Отсоединение означает остановку работы сессии пользователя при сохранении в памяти терминального сервера всех запущенных пользовательских приложений и рабочих данных. Впоследствии пользователь сможет вновь присоединиться к покинутой им сессии и продолжить работу с того же самого места. В противоположность этому, сброс соединения означает закрытие всех открытых приложений. Понятно, что отсоединенные сессии все еще потребляют какие-то ресурсы системы, но существенно меньше, чем раньше, поскольку Windows 2000 Server фактически сбрасывает данные, к которым отсутствует обращение, на диск, а сессия не получает от пользователя на вход ничего нового. Сброшенные сессии не потребляют вовсе никаких системных ресурсов. Для отсоединения или прекращения сессии с помощью интерфейса Terminal Services Manager нужно выбрать сессию в левой панели и указать либо Disconnect, либо Reset из меню Action. Появится окно с последним предупреждением перед выполнением запроса, нажимаем ОК. Ясно, что данная статья не может претендовать на полноту изложения, но тем, кто совсем недавно начал знакомиться с серверными приложениями на базе Windows 2000, я надеюсь, она очень пригодится. Об автореКриста Андерсон – независимый автор и консультант, редактор журнала Windows NT Magazine. Ее последняя книга, вышедшая в издательстве Sybex, – «Mastering Local Area Networks». С автором можно связаться по адресу: Этот e-mail защищен от спам-ботов. Для его просмотра в вашем браузере должна быть включена поддержка Java-script . Журнал "Windows & .NET Magazine/RE", #06, 2000 год // Издательство "Открытые системы" (http://www.osp.ru/) Постоянный адрес статьи: http://www.osp.ru/win2000/2000/06/045.htm |
|||||||||||||||||||||||




