Академический Документы
Профессиональный Документы
Культура Документы
12.00-17.00
№7(56) июль 2007
Москва, ВВЦ, Павильон №69 подписной индекс 20780
Выставка «Softool» www.samag.ru
Малый конференц-зал
Групповые политики
OpenWRT – Linux-дистрибутив
В программе* для встраиваемых систем
nginx, его возможности Что нового в PostgreSQL 8.3?
и использование для повышения Иван Золотухин, Постгресмен
Библиотека Prototype –
ваш путь в Web 2.0
MySQL vs PostgreSQL
в номере
3 ТЕНДЕНЦИИ 58 Централизованная настройка UNIX‑систем
с помощью Puppet
АДМИНИСТРИРОВАНИЕ Изучаем возможности Puppet – функционального и гиб-
кого инструмента, который позволяет решить большую
4 Групповые политики в доменах AD часть задач по одновременному администрированию
Администратору локальной сети не приходится наде- большого числа UNIX-систем. Сергей Яремчук
яться на сознательность пользователей при работе grinder@ua.fm
в сети предприятия, поэтому работы по созданию эф-
фективной и безопасной рабочей среды – дело непро- 62 Особенности инсталляции Solaris
стое. На помощь приходят групповые политики, исполь- Как подружиться с «динозавром»? Бывает, так ласко-
зование которых как нельзя лучше подходит для вы- во называют одну из старейших операционных систем
полнения административных задач. семейства UNIX – Solaris. С чего же можно начать зна-
Александр Емельянов комство? Как вариант – с первоначальной установки.
numb13@mail.ru Посмотрим, в чем заключаются особенности первой
встречи с Solaris 10. Владимир Василькин
10 Знакомимся с Windows Server 2008 Beta 3 vasil1979@mail.ru
Весной этого года корпорация Microsoft выпустила
Beta 3 версию новой серверной операционной сис- 68 Построение отказоустойчивой системы
темы Windows Server 2008. Посмотрим, какие новые с помощью Oracle Physical Standby
функции и приложения появились в этом програм- Развернув информационную систему на базе Oracle
мном продукте. Андрей Бирюков и организовав надёжную стратегию резервного ко-
mex_inet@rambler.ru пирования-восстановления, можно приступать к про-
изводственной эксплуатации системы. В случае ава-
18 MOSS 2007: быстрая настройка рии мы сможем восстановить данные на требуемый
и самые интересные возможности момент времени. Но что делать, если допустимое вре-
Новая линейка продуктов Sharepoint удивляет прият- мя простоя не должно превышать нескольких минут?
ными сюрпризами администраторов, хорошо знако- Тогда не обойтись без различных способов дублиро-
мых с предыдущими версиями, и привлекает инте- вания данных в режиме реального времени.
ресными возможностями тех, кто только подумыва- Сергей Косько
ет о развертывании корпоративного портала с помо- sergkosko@ua.fm
щью Sharepoint. Нелли Садретдинова
nelly@ufanipi.ru ЧЕЛОВЕК НОМЕРА
32 Технология NLB – 74 Капитан корабля
отказоустойчивость без лишних затрат Наброски к документальному фильму о директоре
Решение задачи распределения нагрузки является од- Softline Игоре Боровикове. Оксана Родионова
ной из важнейших на сегодня. Предлагаем рассмот- rodion@dol.ru
реть одно из таких решений, построенных на осно-
ве службы Network Load Balancing, входящей в состав WEB-ПРОГРАММИРОВАНИЕ
Windows Server 2003. Андрей Бирюков
mex_inet@rambler.ru 78 Библиотека Prototype – ваш путь
в Web 2.0
38 MySQL vs PostgreSQL Работа, направленная на повышение удобства и прак-
Какую СУБД выбрать, как спроектировать схему дан- тичности пользовательского интерфейса зачастую от-
ных и где узкие места при использовании той или иной нимает много времени, которое хотелось бы потратить
СУБД? Тестируем производительность СУБД MySQL на разработку бизнес-логики приложения. Разработ-
и PostgreSQL на примере блогохостинга. чики настольных систем имеют в своём арсенале та-
Андрей Шетухин кие средства, как MFC, Gtk, Qt и другие библиотеки.
reki@reki.ru Чем же может воспользоваться веб-программист?
Кирилл Сухов
42 OpenWRT – suckhov@planetashop.ru
Linux для встраиваемых систем
Если вы сталкиваетесь с постоянными зависаниями, РЕТРОСПЕКТИВА
неудобством управления или нехваткой функционала
вашего роутера, и именно поэтому он вам не нравится – 84 История компании Intergraph
возможно, стоит попробовать установить OpenWRT. Уже полвека корпорация IBM считается лидером
Дмитрий Столяров по производству мэйнфреймов и суперкомпьютеров.
_@mrms-dos.ru За компанией Apple прочно укрепился статус де-фак-
то поставщика техники для вёрстки и дизайна. Подоб-
54 BusyBox: швейцарский нож ный список можно продолжить. Что же касается систем
для встраиваемых Linux-систем автоматизированного проектирования, здесь на про-
Системные администраторы и пользователи UNIX тяжении нескольких десятилетий лидирует компания
и Linux-систем, несомненно, привыкли к работе со сво- Intergraph, истории которой и посвящена статья.
ей любимой командной оболочкой и к стандартным про- Дмитрий Мороз
граммным средствам. Но их повсеместное использо- akuji@list.ru
вание не всегда возможно. И тогда на помощь прихо-
дит BusyBox – упрощенный shell с набором компактных 92 КНИЖНАЯ ПОЛКА
системных средств. Дмитрий Шурупов
osa@samag.ru 37, 57, 73 BUGTRAQ
Александр Емельянов
администрирование
П
остараемся обобщить инфор-
мацию по технологии развора-
чивания и применения группо-
вых политик (ГП) в службе каталогов.
В частности:
n в чем выгода для администратора
при использовании ГП;
n сущность объектов ГП и их место
в каталоге AD;
n отличие ГП домена от локальных
политик рабочих станций;
n как создаются, назначаются и при-
меняются ГП в домене;
n наследование и приоритеты для
ГП;
n утилиты gpupdate, gpresult и RSoP; Рисунок 1. Редактор групповых политик gpedit.msc
n другие утилиты для управления
и диагностики неисправностей источникам от 60 до 80% пользо- В разделе «Конфигурация поль-
в применении ГП; вателей во всем мире используют зователя» настраиваются парамет-
n будущее ГП – что нового в пла- для просмотра веб-страниц имен- ры рабочего окружения пользовате-
не групповых политик в Windows но этот браузер); ля (настройки рабочего стола, вид
Vista. n настраивать перенаправление оп- и ограничения для панели задач и ме-
ределенных папок из профиля ню «Пуск»), перенаправление папок,
Для чего нужны пользователя; а также параметры Internet Explorer.
групповые политики n накладывать ограничения на рабо- Каждый объект GPO создается с по-
в домене чий стол; мощью редактора групповых поли-
В предыдущей статье [1] я говорил n определять настройки таких кате- тик (Group Policy Object Editor). Запус-
об управлении пользователями в сре- горий, как автономные папки, дис- тить его можно из вкладки Group Policy
де Active Directory. Cлужба каталогов ковые квоты и др., не исключением свойств контейнера.
облегчает работу IT-подразделения являются настройки самих группо- Как уже говорилось, GPO содер-
по администрированию информаци- вых политик. жит в себе два узла, в которых опре-
онных ресурсов предприятия. Техно- деляются специфичные для компью-
логии Intellimirror и CCM (Change and Все настройки администратор мо- теров и пользователей настройки. Од-
Configuration Management – управле- жет сделать при помощи редактора нако бывает, что существуют иден-
ние изменениями и конфигурация- системного реестра, но интуитивно тичные настройки для компьютеров
ми) позволяют управлять рабочими понятный интерфейс редактора объ- и пользователей. Как система «раз-
местами, используя перемещаемые ектов групповой политики во многом руливает» их применение, будет рас-
профили и перенаправление ката- упрощает эту задачу. сказано далее.
логов, автономные папки и распро- Каждая политика в объекте GPO
странение программ. Многие из этих Структура объектов может быть сконфигурирована и нет.
задач легко выполняются при помо- групповой политики В первом случае она воздействует
щи групповых политик, обеспечивая и их место в службе на объект и может быть в состоянии
при этом централизованное управ- каталогов включено/отключено, а также прини-
ление, а также гибкий механизм на- Объект групповой политики (GPO, мать значения с указанием дополни-
стройки и отладки. Групповые поли- Group Policy Object) состоит из двух тельных параметров. Во втором – по-
тики позволяют: частей: конфигурация компьютера литика на объект не воздействует.
n назначать сценарии запуска, вхо- (Computer Configuration) и конфигура- Объекты групповых политик хра-
да и выхода; ция пользователя (User Configuration) нятся двумя частями: контейнер груп-
n распространять программное обес- (см. рис. 1). Он является контейнером повой политики (GPC, Group Policy
печение в сети при помощи публи- для групп политик, применяемых со- Container) и шаблон групповой полити-
кации или назначения; ответственно к машинам и пользова- ки (GPT, Group Policy Template). Контей-
n однозначно определять набор на- телям сети. нер хранится непосредственно в служ-
строек безопасности для удален- В «Конфигурации компьютера» ад- бе каталогов и содержит информацию
ных машин; министратор может настроить пара- о свойствах, версии, статусе и список
n определять политики паролей метры безопасности, политики паро- компонентов. Шаблоны GPT находят-
для пользователей домена; лей пользователей, параметры ауди- ся в каталоге \Windows\SYSVOL\sysvol\
n ко н ф и г у р и р о в ат ь п а р а м ет р ы та, использование групп с ограничен- Domain_Name\Policies\GUID (см. рис. 2),
Internet Explorer (даже несмотря ным доступом (Restricted Groups), па- где GUID – глобальный уникальный
на всю его «дырявость», по разным раметры реестра и так далее. идентификатор объекта GPO. В этой
администрирование
на основе групп. На вкладке «Фильтр Применение групповых политик пользователя и компьютера в системах Windows NT 5
WMI» (WMI Filter) вы можете выбрать, Операционная система Загрузка Вход в систему Обновление политик
будет ли применяться к объекту поли- Windows 2000 Синхронно Синхронно Асинхронно
тик фильтр WMI (Windows Management Windows XP Асинхронно Асинхронно Асинхронно
Instrumentation), и если да, то какой.
Windows 2003 Server Синхронно Синхронно Асинхронно
При создании объект групповой
политики привязывается к контейне- жащая в интервале 60‑120 минут. Эту де в систему он сразу же видит рабо-
ру, для которого вы его создали. Этот величину можно изменить при помо- чий стол, не дожидаясь применения
GPO будет храниться в Active Directory щи групповых политик, но не рекомен- всех политик. Для повышения безопас-
и может быть применен к другим кон- дуется делать ее очень маленькой, по- ности такое поведение можно изме-
тейнерам – сайтам, доменам и орга- тому что это повлечет за собой затраты нить с помощью параметра Computer
низационным единицам. Одновремен- системных ресурсов из-за постоянного Configuration/Administrative Templates/
но с этим вы можете удалить привязку обращения к контроллеру домена. Для System/Logon/Always wait for the network
GPO к контейнеру, не удаляя сам объ- контроллеров домена групповые поли- at computer startup and logon.
ект GPO. Групповые политики данного тики обновляются каждые 5 минут. По умолчанию политики пользова-
GPO к этому контейнеру применяться За обработку групповых политик теля применяются после политик ком-
не будут, но сам объект все еще будет на компьютерах клиентов отвечает пьютера. Но может возникнуть ситуа-
существовать в службе каталогов. Та- набор динамических библиотек – кли- ция, когда встречаются политики, воз-
ким образом, может возникнуть ситу- ентских расширений групповых поли- действующие на один и тот же пара-
ация, когда какой-либо объект группо- тик. И, к слову говоря, если на локаль- метр. В случае такого конфликта, по-
вой политики не будет связан ни с од- ной машине не будет файла scecli.dll литики пользователя берут верх. Од-
ним контейнером, но он все еще будет (на компьютерах часто можно видеть нако такое поведение не всегда прием-
существовать в службе каталогов, и вы событие с источником SceCli и описа- лемо. Включение Loopback Processing
в любой момент сможете привязать его нием «Политика безопасности в объ- (режим обратной обработки) позволя-
к сайту, домену или OU. ектах групповой политики успешно ет выйти из этой ситуации:
Каждый контейнер может иметь применена»), то групповые политики n при установленной опции Merge
связь с несколькими GPO, которые бу- на нем и вовсе выполняться не будут. (слияние) происходит объедине-
дут отображены в списке на вклад- Применение групповых политик ние двух одинаковых для конфи-
ке «Групповая политики». И, чем вы- пользователя и компьютера в систе- гурации компьютера и пользовате-
ше политика, тем выше ее приоритет- мах Windows NT 5 происходит по-раз- ля политик: в случае, если полити-
ность. Выигрывающей является самая ному. В таблице показано, как это ка для компьютера не определена,
верхняя в списке политика. Изменить происходит в различных системах а для пользователя задана, выиг-
приоритетность вы можете, передви- по умолчанию. Попросту говоря, в сис- рывает пользовательская полити-
гая объекты вверх-вниз и меняя тем са- теме Windows XP политики применяют- ка; в случае же, если политики кон-
мым очередность. Важно понимать, что ся после того, как пользователь уже фликтуют – выигрывает политика
применение параметров при воздейс- видит экран входа в систему. При вхо- компьютера;
твии многих политик происходит снизу
вверх, и, если политика в объекте GPO
не сконфигурирована, она не будет воз-
действовать на параметр. Таким обра-
зом, для параметра будет установлено
значение, определенное самым верх-
ним в списке объектом GPO, в котором
политика сконфигурирована.
Порядок применения
групповых политик
При загрузке компьютер получает
от контроллера домена своего сайта
список групповых политик в том поряд-
ке, в котором он должен их применить.
Аналогично при входе пользователя
в систему происходит запрос групповых
политик, определенных для контейнера,
которому этот пользователь принадле-
жит, и дальнейшее их применение. Да-
лее в процессе работы групповые поли-
тики обновляются в фоновом режиме
каждые X минут, где X – величина, ле- Рисунок 3. Открытие редактора групповых политик в DSA.MSC
администрирование
ните, каждый такой объект состоит
из двух частей: GPT – шаблон груп-
повой политики, и GPC – контейнер
групповой политики. Если одной из
частей нет, политика работать не бу-
дет. Одна из неприятных особеннос-
тей данной утилиты (хотя эта особен-
ность свойственна многим утилитам
для работы с групповыми политика-
ми) – она не показывает дружествен-
ные имена политик. Вместо этого она
выводит их GUID. В статье Q216359
можно посмотреть способ, как сопос-
тавить GUID имени политики. Анало-
гично для просмотра понятного имени
политик можно воспользоваться инс-
трументом ADSI Edit.
Утилита Dcgpofix поможет восста-
новить начальные настройки для груп-
повых политик по умолчанию домена
и контроллера домена. Рисунок 5. Консоль управления групповыми политиками GPMC.MSC
Консоль GPMC.MSC тик, для этого вам придется прибег- вают управление новыми параметрами
Мы рассмотрели большинство средств нуть к gpupdate. групповых политик в рамках домена.
по созданию, настройке и отладке В заключение хотелось бы дать не-
групповых политик. Но из-за их раз- Будущее групповых сколько советов по работе с групповы-
розненности существуют определен- политик ми политиками:
ные неудобства для администрато- Ну и напоследок нельзя не сказать не- n не стройте слишком сложных стра-
ра. Поэтому компания Microsoft вы- сколько слов о реализации механизма тегий по развертыванию ГП в доме-
пустила единый инструмент управ- групповых политик в вышедшей срав- не; чем сложнее схема, тем труднее
ления групповыми политиками – кон- нительно недавно Windows Vista. На- потом будет найти и устранить при-
соль GPMC.MSC (см. рис. 5), который чну с того, что в предыдущих верси- чину неполадки;
позволяет выполнять все основные ях операционных систем за обработ- n избегайте применения большого
операции по администрированию ГП. ку групповых политик отвечал процесс количества GPO с конфликтующи-
Он не входит в состав ни одной из опе- Winlogon, тогда как в Vista они пред- ми параметрами;
рационных систем, но доступен для ставляют собой целую службу, которую n старайтесь не увлекаться использо-
свободного скачивания на официаль- из соображений безопасности нельзя ванием режимов запрета перекры-
ном сайте Microsoft. остановить. Консоль GPMC.MSC те- тия и блокировки наследования;
GPMC.MSC является незамени- перь является встроенным компонен- n по возможности документируйте
мым инструментом администратора том операционной системы. изменения, это позволит быстрее
по управлению групповыми политика- Vista имеет несколько локальных отследить причину возникновения
ми в рамках домена, который интегри- объектов GPO, что позволяет по-раз- конфликта или неполадки;
рует в себе функционал вышеописан- ному настроить параметры локальных n не экспериментируйте на функцио-
ных утилит. В дополнение к этому вы рабочих станций для администрато- нирующем домене, лучше исполь-
можете: ров и обычных пользователей. Однако зуйте моделирование.
n создавать резервные копии объек- в рамках домена групповые политики
тов GPO и осуществлять их восста- Active Directory имеют более высокий Многие тонкости работы с группо-
новление; приоритет над локальными. Помимо выми политиками остались за рамка-
n составлять отчеты в формате HTML; этого, администраторы домена могут ми статьи. Используйте статьи базы
n смотреть сконфигурированные на- выключить локальные политики. знаний Microsoft и специальную лите-
стройки политик; Сам факт того, что в Vista добави- ратуру в качестве теоретической ба-
n копировать политики и импортиро- лось около 800 новых параметров по- зы для овладения лучшими навыками
вать настройки политик; литик, говорит о том, насколько повы- управления сетевой инфраструктурой
n использовать функцию Drug’n’Drop сится управляемость пользователь- при помощи групповых политик.
для назначения привязки объектов ским окружением. Но заработает этот
GPO к контейнерам. механизм на полную только после вы- 1. Александр Емельянов. Администриро-
хода новой серверной версии опера- вание пользователей в домене Active
С помощью GPMC.MSC нельзя вы- ционной системы от Microsoft, так как Directory. //«Системный администра-
полнить обновление групповых поли- текущие серверные ОС не поддержи- тор», №4, 2007 г.
Знакомимся
с Windows Server 2008 Beta 3
Андрей Бирюков
Весной этого года корпорация Microsoft выпустила Beta 3 версию новой серверной
операционной системы Windows Server 2008. Посмотрим, какие новые функции и приложения
появились в этом программном продукте.
Т
ак уж сложилось, что выход новой пуске операционной системы. Приме- Longhorn также не стала исключени-
операционной системы от Microsoft ром тому может служить Windows Vista. ем. Система анонсировалась Microsoft
это всегда событие, активно об- Во многих блогах и форумах систем- задолго до ее выхода. Собственно
суждаемое в сети. Конечно, во мно- ные администраторы и просто пользо- та версия, о которой пойдет речь се-
гом причиной этому является актив- ватели делятся впечатлениями от раз- годня также не является финальной,
ная маркетинговая политика корпо- личных функций и приложений, вошед- это лишь Beta 3. Так что тот функцио-
рации, но не следует забывать и о том, ших в состав новой ОС, критикуют по- нал, который я буду описывать, не яв-
что многих специалистов интересу- явившиеся возможности и инструмен- ляется окончательным, и возможно,
ет появление новых служб и прило- ты. Серверная операционная систе- с выходом финальной версии будет до-
жений, реализованных в свежем вы- ма Windows Server 2008 Code Name полнен новыми возможностями.
10
администрирование
Быстрая установка
Несколько слов об установке операци-
онной системы. Надо сказать, что раз-
работчики существенно упростили
процесс установки. Теперь некоторые
шаги удалены из процесса установки,
что позволяет немного сократить за-
трачиваемое время на неё. Не берусь
судить, насколько это удобно, но ду-
маю, многим начинающим админист-
раторам такая упрощенная процедура
установки понравится.
После установки операционной
системы мы попадаем в новую рабо-
чую среду. Конечно, внешних отли-
чий от предыдущих версий не так мно-
го, никаких Aero, как в Windows Vista,
здесь не загружается. Однако я хо-
тел бы обратить внимание на неко-
торые моменты, связанные со струк-
турой каталогов в новой операци- Рисунок 1. Пользовательские каталоги
онной системе. В Windows 2008 вы
не найдете на основном диске ката-
лога Documents and Settings, вместо
него появился каталог Users. Это не-
большое изменение может запутать
администраторов, привыкших к стан-
дартной структуре каталогов. Каталог
Users содержит пользовательские ка-
талоги. Как видно из рис. 1, содержи-
мое пользовательского каталога также
немного отличается от существовав-
шего в предыдущих версиях Windows.
Как видно, теперь у пользователя
есть отдельный каталог для сохранен-
ных игр, скачанных программ и т. д. Од-
нако все эти нововведения носят ско-
рее косметический характер и не не-
сут в себе глубокой функциональной
нагрузки, так что перейдем к рассмот-
рению других элементов новой опера-
ционной системы.
12
администрирование
как служба содержит реализацию принципиально новых чанию, поэтому ее ну жно добавить дополнительно
технологий, мне хотелось бы описать NPS подробнее. (см. рис. 8).
Прежде всего NPS пришел на смену IAS (Internet Действия, которые необходимо применять к подключаю-
Authentication Server) RADIUS-серверу, входившему в состав щемуся узлу, определяются с помощью политик Connection
Windows. Однако функционал NPS не ограничивается толь- Request Policies. Данные политики определяют набор правил,
ко поддержкой аутентификации по протоколу RADIUS. которые использует NPS для проверки попыток соединений.
Одним из основных элементов Network Policy Server Для того чтобы определить состояние узла, используются спе-
является поддержка технологии NAP (Network Access циальные маркеры System Health Validators (SHV), которые со-
Protection). Она позволяет ограничить доступ к сети, раз- общают NPS о состоянии системы машины, запрашивающей
решая его только хостам, удовлетворяющим требованиям
безопасности. Фактически это некоторый аналог проак-
тивной системы защиты. С помощью NAP можно создавать
различные политики для проверки состояния компьютера,
перед тем как разрешить ему доступ в сеть. Компьютерам,
не удовлетворяющим этим требованиям, можно, к приме-
ру, разрешить доступ только в карантинную зону, где они
смогут установить необходимые обновления, или же за-
претить доступ совсем.
Технология NAP аналогична Cisco Network Admission
Control (NAC) – программно-аппаратному комплексу по кон-
тролю за доступом в сеть. Однако Cisco NAC поддержива-
ется только оборудованием Cisco, что существенно услож-
няет ее внедрение. NAP не имеет таких жестких аппарат-
ных привязок.
Основным элементом NAP является как раз Network
Policy Server. NPS не входит в состав установки по умол- Рисунок 6. Запуск приложения
14
администрирование
n Client reported as infected by one Настраиваем защиту
or more SHV’s – состояние Infected. Но вернемся к обсуждению непосредс-
Антивирусные продукты, интегри- твенно Windows Server 2008.
рованные с NAP, могут возвращать Еще одной новой компонентой яв-
такое состояние SHV. ляется Security Configuration Wizard.
n Client reported as unknown by one В отличие от присутствовавшей в пре-
or more SHV’s – состояние «неиз- дыдущих версиях утилиты secedit,
вестен» обычно бывает на тех ма- здесь для работы с шаблонами безо-
шинах, которые несовместимы, пасности имеется специальный мас-
либо на них не установлен клиент тер, позволяющий быстро и без лиш-
NAP. Понятно, что такие машины них усилий настроить или откатить по-
тоже лучше в сеть не пускать. литику безопасности. Работа мастера
разделена на несколько этапов.
Далее, в NPS можно определить Прежде всего мастер проверяет те-
различные действия, которые при- кущее состояние системы, в частности
меняются к рабочим станциям, соот- какие службы запущены на сервере.
ветствующим тем или иным состоя- Затем администратору предлагает-
ниям SHV. ся добавить или удалить службы или их Рисунок 9. Настройки SHV
В частности, можно определить компоненты на основе тех ролей, кото-
политики, позволяющие доступ в сеть рые выполняет данный сервер (напри- ти выполняются настройки Registry
только в определенные промежут- мер, файл-сервер или DNS-сервер). Settings (см. рис. 11). Здесь опреде-
ки времени, или ограничить доступ При этом для каждой службы можно ляются политики доступа к данному
только определенными ресурсами получить ее краткое описание. серверу на уровне приложений и про-
(см. рис. 10). Далее мастер предлагает настро- токолов. То есть можно определить те
Теперь необходимо немного пояс- ить состояние служб, режим запуска требования, которые предъявляются
нить, как все это работает. (Disabled/Manual/Automatic). к подключающимся хостам. Напри-
Клиентская машина, на которой ус- Следующим этапом в настройке мер, можно ли подключаться машинам
тановлена Windows XP SP2 или Vista, Security Configuration является Network с операционной системой Windows 98
пытается установить соединение. Security. Здесь предлагается настроить или Windows CE.
Это выражается в RADIUS Access- политики межсетевого экрана Windows Далее описываются способы ау-
Request-запросе к серверу NPS. (о котором мы подробно поговорим тентификации для удаленных ма-
Сервер NPS сравнивает содержи- чуть позже) в соответствии со специ- шин (Domain Accounts, Local Accounts
мое Access-Request-сообщения с по- альными шаблонами (например, кли- on the Remote Computers, File Sharing
литиками, которые мы определили. ент DHCP или DNS). Passwords) и способы аутентификации
В зависимости от того, соответствует После настроек безопасности се- для локальных пользователей.
или нет данная информация полити-
кам, NPS применяет к пользователь-
ской станции то или иное действие, оп-
ределенное в Network Policy.
Да лее слу жба NPS отправля-
ет RADIUS Access-Accept-сообщение
с информацией об уровне доступа
пользователя.
Далее это сообщение уже может
обрабатываться сетевым устройс-
твом, которое отвечает за непосредс-
твенное подключение узла (например,
коммутатор).
В завершении рассказа о NAP хочу
порекомендовать дополнительную ин-
формацию тем, кто заинтересовался
данной технологией. На сайте Microsoft
по адресу http://www.microsoft.com/
technet/network/nap/default.mspx вы мо-
жете прочесть полезные статьи по дан-
ной технологии, а по адресам [1-4] вы
найдете подробное описание лабора-
торных работ с использованием NAP
для различных реализаций. Рисунок 10. Настройки политик NAP
Межсетевой экран
И, наконец, поговорим о межсетевом экране, встроенном
в Windows Server 2008. Различий с firewall, использовав-
шимся в Windows 2003, довольно много, я бы даже сказал,
что межсетевой экран в Windows 2008 – это совершенно
новый продукт.
Теперь в межсетевом экране можно создавать пра-
вила как для входящего, так и для исходящего трафика.
(см. рис. 13).
При этом сразу появляется возможность редактиро-
вания отдельно для доменных (Domain) профилей и отде-
льно для частных (Private) профилей пользователей. В каж-
дом правиле можно определить не только какое приложе-
Рисунок 11. Настройки Registry Settings ние, какой порт и по какому протоколу использует. Так-
же можно определить, какие пользователи и какие маши-
На следующем этапе можно настроить политики аудита, ны могут устанавливать соединения с данным сервером.
аналогично тому, что обычно делается через Group Policy, Ещё можно определить интерфейсы, к которым применя-
но только с помощью более удобного интерфейса. ется то или иное правило.
По завершении работы мастера вам предлагается со- Отдельно присутствует набор правил для защищенных
хранить созданную политику. Применить созданную поли- соединений (см. рис. 14).
тику можно как сразу, так и позже. Как видно, имеется четыре готовых шаблона:
n Isolation – ограничивает соединение, основываясь
Новый диспетчер задач на аутентификации пользователя, членстве в домене.
Среди прочих компонент, входящих в состав Administrative n Authentication exemption – запрещает соединения
Tools в Windows Server 2008, можно отметить Server Manager, от определенных компьютеров.
в консоли которого можно оперативно получить все сведе- n Server-toServer – создает соединения между компью-
ния о системе: версию, IP-адрес, используемые сетевые терами.
протоколы, установленные обновления, роли. n Tunnel – туннельные соединения с авторизацией меж-
Так же нововведения появились в Task Scheduler ду шлюзами.
(см. рис. 12). Теперь задачи можно привязывать к установ-
ленным на сервере приложениям. Режим Custom позволяет самостоятельно определить
правила защищенного соединения.
Для каждого шаблона требуются
свои, заранее заданные настройки.
Шаблон Custom позволяет самостоя-
тельно задать нужные настройки. Ду-
маю, встроенный межсетевой экран
в Windows Server 2008 вполне спосо-
бен выполнять задачи по защите ре-
сурсов сервера без помощи каких-ли-
бо сторонних программных и аппарат-
ных средств.
Заключение
За кадром остались новая реализация
службы Active Directory, групповые по-
литики GPO и многое другое. Однако
подведем некоторый итог, резюмируя
все описанное в этой статье.
В новой операционной системе
сделан акцент на улучшении средств
безопас нос ти, добав лены так ие
средства, как NPS, межсетевой эк-
ран и другие.
Рисунок 12. Настройки Task Scheduler Улучшен функционал, связанный
16
администрирование
с мониторингом событий и уведомле-
нием администраторов.
Несколько упрощен и ускорен про-
цесс установки самой операционной
системы. Это новшество может ока-
заться весьма полезным при развер-
тывании нескольких серверов с различ-
ными конфигурациями, когда исполь-
зование образов и файлов ответов за-
труднено или невозможно.
Что касается недостатков, то они,
конечно, тоже присутствуют.
Во-первых, очень жаль, что мы так
и не увидели существенных измене-
ний в средствах работы с файловой
системой. Конечно, Microsoft уже ко-
торый год обещает новую файловую
систему, однако ее выпуск все время
откладывается.
Также уже есть некоторые про-
блемы с совместимостью, в частнос-
ти, не удалось установить Microsoft Рисунок 13. Настройки межсетевого экрана в Windows Server 2008
Forefront Security, антивирусный про-
дукт от той же компании Microsoft.
Также жаль, что в локальных по-
литиках безопасности не появилось
новых опций. Но будем надеяться,
что когда выйдет полная версия (все-
таки сейчас мы обсуждаем бета-ре-
лиз), многие из этих недостатков бу-
дут устранены.
Напоследок несколько слов о до-
полнительных источниках информа-
ции.
Помимо основной страницы, пос-
вященной этому продук т у, http://
www.microsoft.com/windowsserver2008
вы также можете многое узнать из фо-
рума TechNet, который можно найти
по адресу [5].
И наконец, самое главное, Windows
Server 2008 Beta 3, как и любой бета-
продукт, доступен для свободного ска-
чивания. Так что, если вас заинтере-
совала новая операционная система,
то установить ее можно с диска, при- Рисунок 14. Настройки защищенных соединений
лагающегося к журналу.
Также любую из существующих ре- ee06 - 4dfb-bba2- 07605eff0608& 18ce- 40cb-8e59-188f7a198897&
дакций можно получить по следующе- displaylang=en – Step By Step Guide: displaylang=en – Step-by-Step Guide:
му адресу [6]. Demonstrate 802.1X NAP Enforcement Demonstrate DHCP NAP Enforcement
in a Test Lab. in a Test Lab.
1. http://www.microsoft.com/downloads/ 3. http://www.microsoft.com/downloads/ 5. http://forums.microsoft.com/TechNet/
details.aspx?FamilyID=298ff956- details.aspx?FamilyID=729bba00- default.aspx?ForumGroupID=161&
1e6c- 4d97-a3ed-7e7f fc 4bed32& 55ad-4199-b441-378cc3d900a7& S i t e I D =17 – ф о р у м Te c h N e t
displaylang=en – Step-by-Step Guide: displaylang=en – Step-by-Step Guide: по Windows Server 2008.
Demonstrate IPsec NAP Enforcement Demonstrate VPN NAP Enforcement 6. http://www.microsoft.com/technet/
in a Test Lab. in a Test Lab. prodtechnol/beta/lhs/default.mspx –
2. http://www.microsoft.com/downloads/ 4. http://www.microsoft.com/downloads/ здесь можно скачать дистрибутив
details.aspx?FamilyID=8a0925ee- details.aspx?FamilyID=ac38e5bb- Windows Server 2008 Beta 3.
Нелли Садретдинова
Новая линейка продуктов Sharepoint удивляет приятными сюрпризами администраторов,
хорошо знакомых с предыдущими версиями, и привлекает интересными возможностями тех,
кто только подумывает о развертывании корпоративного портала с помощью Sharepoint.
18
администрирование
В
начале 2007 года вышла новая нистратора потребуется минимум О требованиях и рекомендациях
линейка продуктов Microsoft действий. к этим учетным записям также можно
Sharepoint, которая вк люча- Полностью автоматически бу- узнать в 2007 Office Resource Kit [1].
ет в себя новую версию Windows дут развернуты «Центр администри- В тестовом варианте вы можете
Sharepoint Services (WSS 3.0) и Microsoft рования Sharepoint», семейство уз- назначить для всех этих целей одну
Office Sharepoint Server (MOSS) 2007 лов и главный узел портала, доступ- и ту же учетную запись, но по требо-
на замену Sharepoint Portal Server ный по стандартному для http 80-му ваниям безопасности на рабочем пор-
(SPS) 2003. порту. тале рекомендуется все же использо-
Системные администраторы и раз- Е д и н с т в е н н о е, п о н а д о б и т с я вать разные учетные записи с разным
работчики уже успели оценить удобс- предварительно установить – .NET уровнем безопасности на сервере.
тво и быстроту развертывания внут- Framework 3.0 (также можно скачать Что приятно, в процессе конфи-
рикорпоративных сайтов с помощью с сайта Microsoft). гурации можно указать порт для уз-
Sharepoint. Новая версия обладает бо- Если установка производится ла центрального администрирова-
лее широкими возможностями пре- на ферму серверов с использованием ния (раньше он выбирался случай-
жде всего в области совместной ра- полноценной версии SQL-сервера, по- ным образом, и запомнить его бы-
боты и интеграции с самыми разно- требуется некоторая настройка. Наибо- ло нелегко). После завершения рабо-
образными источниками информа- лее распространенный сценарий раз- ты мастера должна открыться стра-
ции. Наиболее интересные из этих мещения для средней фермы – это два ница центрального администрирова-
возможностей входят в состав корпо- сервера, на одном из которых развер- ния Sharepoint.
ративного выпуска (Enterprise Edition) нут сервер баз данных, а на другом – Возможные проблемы: если стра-
MOSS 2007. все приложения Sharepoint. О других ница администрирования не открыва-
Средства настройки и админист- сценариях можно узнать в 2007 Office ется или выдает ошибку, чаще всего
рирования новых версий Sharepoint Resource Kit [1]. это связано с неправильной регистра-
претерпели значительные измене- Для понимания дальнейших дейс- цией ASP .NET 2.0. Чтобы исправить
ния. С одной стороны, настроек ста- твий следует упомянуть, что в новой ошибку, нужно заново зарегистриро-
ло гораздо больше, с другой сторо- версии Sharepoint появилось такое по- вать .NET 2.0, выполнив команду:
ны, они лучше документированы, ло- нятие, как «поставщик общих служб»
гично сгруппированы и интуитивно бо- (Shared Services Provider или SSP), су- aspnet –regiis –r
лее понятны. щественное расширившее возмож-
Сегодня мы остановимся на неко- ности «Управления общими служба- из директории «%windir%\Microsoft.NET\
торых аспектах администрирования ми» в предыдущей версии. SSP пред- Framework\v2.0.xxxx»), проверить, пра-
MOSS 2007. Будет рассказано о том, ставляет собой набор служб, которые вильно ли указана ли версия .NET в на-
как быстро настроить и запустить являются общими для целого набора стройках сайта IIS «Центр администри-
в действие наиболее интересные из узлов и семейств узлов, и, соответс- рования Sharepoint» (или другого веб-
новых функций портала. твенно, имеют общие настройки безо- приложения, с которым возникли про-
пасности, поиска, личных узлов и дру- блемы), и перезапустить IIS.
Установка гих параметров. Центр администриро- Когда а дминистратор первый
и первоначальная вания поставщика общих служб пред- раз открывал страницу управления
настройка ставляет собой отдельное веб-прило- SPS 2003, у него сразу же возникал
Пробную версию MOSS 2007 мож- жение с собственными настройками вопрос: что делать дальше? В новой
но скачать на сайте Microsoft (http:// безопасности. версии продукта эту проблему раз-
download.microsoft.com). После окончания установки будет работчики учли. Теперь на главной
Если установка предыдущей вер- запущен «Мастер настройки и конфи- странице администрирования сразу
сии портала представляла некоторые гурирования продуктов и технологий же открывается список задач, кото-
сложности для человека неподготов- Sharepoint». Потребуется указать сер- рые необходимо выполнить для пер-
ленного, то MOSS 2007 устанавлива- вер баз данных и доменную учетную воначальной настройки портала, при-
ется легким движением руки. запись для служб Sharepoint. чем каждая задача содержит ссылку
Внимание! Если Sharepoint уста- Вообще говоря, учетные записи до- на подробную справку на русском язы-
навливается на сервер, где IIS уже мена понадобятся для выполнения как ке (см. рис .1).
используется другими веб-приложе- минимум следующих ролей: Из предложенного списка для быс-
ниями, настоятельно рекомендуется n для запуска служб Sharepoint; трого запуска портала с минимальным
предварительно провести установку n для запуска служб поиска; набором возможностей на ферме сер-
в тестовой среде, а перед установкой n для индексации и обхода содержи- веров понадобится выполнить всего
на рабочий сервер выполнить полное мого; четыре задачи:
резервное копирование. n для пула веб-приложений; 1) Включить службы «Веб-приложе-
В случае установки всех служб n для пула приложения поставщика ние Windows SharePoint Services»
MOSS в комплекте с SQL Server 2005 общих служб; и «Поиск Office SharePoint Server»
Express Edition (входит в поставку) n для запуска поставщика общих в разделе «Операции/Топология
автономно на один сервер от адми- служб. и службы/Службы на сервере».
20
администрирование
2) Создать три веб-приложения: Совет: в комплекте с MOSS 2007 В разделе «Управление приложе-
для поставщика общих служб, лич- поставляется очень неплохая русско- ниями» каждая группа настроек отно-
ных узлов и семейства узлов основ- язычная справка, в том числе для ад- сится к одному конкретному веб-при-
ного портала. Теперь для этого не министратора. Не забывайте и о ком- ложению. Поэтому, прежде чем выпол-
нужно открывать консоль управле- плекте SDK, который можно скачать нять планируемую операцию, не за-
ния IIS, достаточно воспользовать- на сайте Microsoft [2]. будьте выбрать нужное приложение.
ся разделом «Управление прило- Это можно сделать в пункте меню
жениями/Создание или расшире- Центр администрирования «Список веб-приложений» или ввер-
ние веб-приложения». и принципы управления ху страницы с каждой конкретной на-
3) Следующий этап – создание пос- MOSS 2007 стройкой (см. рис. 5).
тавщика общих служб в разделе Настройка различных служб и пара- Обратите внимание! После созда-
«Управление приложениями/Со- метров работы MOSS 2007 произво- ния нового веб-приложения нужно пе-
здание или настройка общих служб дится на пяти уровнях: рейти к разделу «Общие параметры
данной фермы». n ферма серверов (вкладка «Опе- веб-приложений» и настроить как ми-
4) Последним создается семейство рации» центра администрирова- нимум два важных параметра: «Часо-
узлов основного портала: на стра- ния); вой пояс» и «Максимальный объем от-
нице «Управление приложениями» n п о с т а в щ и к о б щ и х с л у ж б правляемых данных» .
нужно выбрать из списка веб-при- (центр администрирования об- Еще один значимый набор пара-
ложение, которое вы ранее созда- щих слу жб, по умолчанию это метров – «Управление возможнос-
ли для семейства узлов, и перейти «SharedServices1»); тями». Для безопасности и повыше-
к разделу «Создание семейства n веб-приложение (вкладка «Управ- ния быстродействия отдельные ком-
веб-узлов». ление приложениями» центра ад- поненты Sharepoint (службы работы
министрирования); с бизнес-данными, поиск и др.) мож-
Ну вот, теперь можно открыть глав- n семейство узлов («Действия уз- но включать/отключать на четырех
ный узел семейства узлов. Настрой- ла → Параметры узла → Измене- уровнях:
ки узла, управление пользователя- ние параметров узла» на главном n уровень фермы серверов;
ми и группами, редактирование теку- узле семейства); n уровень веб-приложения;
щей страницы и создание новых стра- n узел («Действия узла → «Парамет- n уровень семейства узлов;
ниц доступны в меню «Действия узла» ры узла → Изменение параметров n уровень отдельного узла.
(см. рис. 2). узла» на текущем узле).
Обратите внимание, что одни пара- Если на конкретном узле у вас
метры изменяются для отдельного уз- В разделе «Операции» помимо на- не работает какой-либо из компонен-
ла, другие – только для всего семейс- стройки общих для фермы серверов тов или отсутствуют нужные веб-час-
тва узлов, и некоторые настраиваются параметров можно также выполнить ти, проверьте, включены ли соответ-
на обоих уровнях (см. рис. 3). некоторые разовые операции, в част- ствующие возможности на всех нуж-
Настройка и разработка узлов в но- ности, резервное копирование и вос- ных уровнях.
вом портале, в частности, с исполь- становление, а также обновление и пе- На странице управления постав-
зованием нового продукта Microsoft ренос (см. рис. 4). щиком общих служб можно управ-
Sharepoint Designer, пришедшем При первоначальной настройке лять такими настройками, как профи-
на смену Frontpage, тоже во многом следует обратить внимание на веде- ли пользователей, поиск, определе-
отличается от предыдущей версии, ние журналов, в частности, журнала ния бизнес-приложений, параметры
и описание всех интересных возмож- трассировки (раздел «Сбор данных служб Excel.
ностей – тема для отдельной статьи. диагностики»). В некоторых случаях вам пона-
Скажу лишь, что многие элементы ста- По умолчанию ведение журналов добится создать несколько постав-
ло возможным легко редактировать и сбор всех ошибок включены, логи щиков общих служб, например, ес-
с помощью веб-интерфейса, напри- находятся на системном диске, а рас- ли у вас есть несколько различных
мер, это верхняя и левая панели ссы- тут они иногда не по дням, а по ча- поставщиков подлинности (к приме-
лок и логотип. сам. Обратите внимание на эти жур- ру, пользователи домена и внешние
Миграция со старой версии порта- налы и настройте систему так, чтобы пользователи) и для каждого нужны
ла на MOSS 2007 – также достаточно не возникло нехватки места на жест- отдельные настройки профилей поль-
широкая тема. Она (миграция) может ком диске. зователей и настройки безопасности
быть проведена легко и быстро, ес- Еще одна возможность, на кото- (см. рис. 6).
ли в портале не производилось ника- рую стоит обратить внимание, – «Со- Некоторые настройки по-прежне-
ких серьезных модификаций, и может поставления для альтернативного до- му придется вручную делать в файле
представлять собой достаточно слож- ступа». Здесь можно настроить аль- web.config. Для каждого приложения
ную задачу в противном случае – ес- тернативные адреса для одного и то- они располагаются по адресу «сис-
ли узлы и темы подвергались реди- го же веб-приложения, например, темный_диск:\Inetpub\wwwroot\wss\
зайну, использовались собственные для доступа изнутри локальной се- VirtualDirectories\порт_приложения».
веб-части и т. п. ти и извне. Например, если вы используете новую
22
администрирование
24
администрирование
В первую очередь такой способ n по адресу http://moss_server из ло- бу поддержки. Достаточно устано-
авторизации актуален для сайтов, кальной сети со стандартной аутен- вить на почтовом сервере пересылку
предназначенных для работы через тификацией Windows; с внешнего адреса службы поддержки
Интернет, например, для заказчиков n по адресу http://www.mycompany.ru на внутренний адрес библиотеки доку-
или партнеров. из Интернета с аутентификацией ментов. Можно также настроить опо-
Ин тер н ет- с ай т л е гко с оз д ать на основе форм. вещение специалистов о поступлении
средствами нового портала, доста- новой входящей почты.
точно выбрать шаблон «Публикация/ Синхронизация с AD Внимание! Имя почтового серве-
Портал публикации» при создании но- и профили пользователей ра и обратный адрес необходимо на-
вого семейства узлов. Однако следу- Еще одна исполненная мечта ад- строить в двух местах: в разделе «То-
ет обратить внимание, что для этого министраторов. В WSS 3.0 можно пология и службы» страницы «Опера-
потребуется дополнительное лицен- не только легко импортировать про- ции» для фермы серверов и «Управ-
зирование. фили пользователей из Active Directory, ление веб-приложениями Sharepoint»
Внимание! Вопреки распростра- но и настроить синхронизацию по рас- страницы «Управление приложения-
ненному в Интернете мнению, все веб- писанию. ми» для каждого приложения.
части бизнес-компонентов на интернет- Сделать это можно в настрой-
узлах работают, нужно только вклю- ках поставщика общих служб, раз- Backup и базы данных
чить корпоративные компоненты в «Уп- дел «Свойства и профили пользо- Если SPS 2003 хранил всю необходи-
равлении возможностями» семейства вателей». Как и в предыдущей вер- мую информацию в трех базах дан-
узлов и конкретного узла, т.к. по умол- сии, можно также настроить сопос- ных, то MOSS 2007 использует их мно-
чанию они отключены. тавление свойств Active Directory жество. Это база данных конфигура-
В н е ш н и й с а й т, с о з д а в ае м ы й и профиля пользователя в Sharepoint ции портала, отдельная база данных
по умолчанию, смотрите на рис .9. (см. рис. 10). для поставщика общих служб, отде-
Но это еще не самое интересное. Более того, в профили пользовате- льная база для каждого веб-приложе-
Замечателен факт, что для каждого лей теперь можно включить информа- ния, база для хранения результатов ин-
веб-приложения можно настроить од- цию не только из Active Directory, но и из дексации и некоторые другие.
новременно до пяти (!) способов аутен- других кадровых систем предприятия. Вместо отдельной утилиты для ре-
тификации в зависимости от так назы- Для этого необходимо воспользовать- зервного копирования портала теперь
ваемой «зоны». ся каталогами бизнес-данных. нам доступен раздел «Резервное копи-
«Зоны» различаются по адресу рование и восстановление» на страни-
URL. Допустим, у вас есть веб-при- Интеграция це «Операции». Здесь же можно про-
ложение с внутренним адресом http:// с почтовой системой смотреть полный список всех баз дан-
moss_server и стандартной аутентифи- Параметры почтового сервера для ис- ных (см. рис. 11).
кацией Windows. А вы хотите сделать ходящей почты и входящей почты на- Эти средства позволят выполнить
его доступным для партнеров через страиваются в разделе «Операции/ однократное сохранение данных пор-
Интернет и использовать для них ав- Топология и службы». Если отправ- тала, однако настроить регулярное
торизацию на основе форм. кой уведомлений по электронной поч- копирование по расписанию невоз-
В этом случае вам нужно расши- те администратора Sharepoint не уди- можно.
рить это веб-приложение со стра- вишь, то прием входящей электрон- Рекомендуется сохранить полный
ницы «Управление приложениями» ной почты – весьма полезная воз- список баз данных и воспользовать-
и указать в поле«URL‑адрес доме- можность. ся стандартными средствами резерв-
на со сбалансированной нагрузкой» Для включения этой возможнос- ного копирования Microsoft SQL Server
URL, который будет использоваться ти не понадобится почтовый сервер, или выполнять копирование с помо-
для доступа через Интернет, напри- достаточно установить виртуальный щью стандартного планировщика за-
мер, http://www.mycompany.ru. Зна- SMTP-сервер IIS и настроить парамет- даний и утилиты командной строки
чение в поле «Зона» означает все- ры входящей почты в разделе центра stsadm. Позволяют выполнять резер-
го лишь название зоны и ни на что администрирования «Операции». вные копии портала и некоторые спе-
не влияет. Можно выбрать, например, После этого можно использовать циализированные программные про-
«Интернет». любую библиотеку документов порта- дукты, например, ArcServ.
После этого на странице «Пос- ла для автоматического сбора входя- Внимание! Стандартные средства
тавщики проверки подлинности» для щей электронной почты. резервного копирования по-прежне-
приложения http://moss_server вы Адрес, с которого будет собирать- му не включают директорию, где хра-
найдете две зоны – «По умолчанию» ся почта, в этом случае выглядит как нятся схемы, шаблоны, иконки, сти-
и «Интернет». Для зоны «Интернет» «name@server», где name – имя, ука- левые таблицы и др. Если вы или ва-
можно настроить отдельного постав- занное в параметрах библиотеки доку- ши разработчики вносите изменения
щика проверки подлинности на ос- ментов Sharepoint, а server – имя front- в эти файлы, директорию нужно ко-
нове форм. end сервера Sharepoint. пировать отдельно. Для MOSS 2007
В результате одно и то же веб-при- Эта возможность весьма удобна и WSS 3.0 она находится по адре-
ложение будет доступно: для сбора отзывов или заявок в служ- су: «системный диск:\Program Files\
26
администрирование
Common Files\Microsoft Shared\web
server extensions\12».
Корпоративная
лицензия MOSS и работа
с бизнес‑данными
Наиболее интересные возможности
MOSS 2007 предоставляет для рабо-
ты с бизнес-данными, однако они пот-
ребуют для использования корпора-
тивной лицензии.
Это, в частности:
n службы Excel;
n каталоги бизнес-данных;
n работа с формами (на клиентских
машинах для этого более не требу-
ется установка InfoPath);
n цифровые панели и ключевые по-
казатели эффективности (KPI).
Службы Excel
Теперь графики, диаграммы и табли-
цы можно публиковать прямо на стра-
ницах Sharepoint. Совместную работу
в режиме онлайн над одной и той же Рисунок 9. Внешний сайт, создаваемый Sharepoint по шаблону «Портал публикации»
таблицей веб-клиент Excel, как бы это-
го не хотелось, не поддерживает. Од- n Проверить, включены ли компо- n с помощью BDC можно отображать
нако веб-клиент Excel – это не толь- ненты корпоративного выпуска бизнес-данные в одном из столб-
ко средство отображения, но и воз- Sharepoint на всех необходимых цов обычного списка или библио-
можный источник данных, например, уровнях в «Управлении возможнос- теки Sharepoint;
для подсчета KPI (ключевых показате- тями». n бизнес-данные можно легко встав-
лей эффективности) или составления лять на страницы посредством веб-
других отчетов (см. рис. 12). Некоторые виды документов Excel интерфейса и связывать между
Внимание! Веб-клиент Excel ра- невозможно отобразить в веб-клиен- собой;
ботает только с файлами в формате те. Например, содержащие веб-запро- n BDC под держивают действия,
Microsoft Office 2007, а именно – .xlsx. сы, внешние ссылки, макросы (полный т.е. можно не только получить ин-
В веб-браузере клиент будет коррект- список можно найти в справке). формацию из внешних источников
но отображаться у всех пользовате- данных, но и выполнить в них какое-
лей. Если пользователь хочет скачи- Каталоги бизнес-данных либо действие, например, обновить
вать таблицу к себе на машину и рабо- и служба единого входа какое-либо поле, отправить сооб-
тать с ней локально, но у него нет но- Пожалуй, каталоги бизнес-данных щение и т. п.;
вой версии Office, можно установить (Business Data Catalogs, BDC) – одно n BDC позволяют дополнять профили
ему Microsoft Office Compatibility Pack из самых интересных нововведений пользователей данными из внеш-
for Word, Excel, and PowerPoint 2007 в Sharepoint. BDC позволяют отоб- них систем, например, кадровых;
File Formats, доступный на сайте ражать на страницах портала дан- n BDC позволяют осуществлять по-
Microsoft. ных из широкого набора источников – иск средствами Sharepoint во внеш-
Чтобы настроить отображение веб- любой базы данных, к которой мож- них источниках;
частей клиента Excel, необходимо вы- но подключиться с помощью ODBC n BDC имеют встроенные средства
полнить следующие действия: или OleDB, а также любого веб-сер- разграничения доступа и их проще
n Создать на узле библиотеку доку- виса. персонализировать, особенно с по-
ментов, где будут храниться фай- В предыдущей версии отображать мощью службы единого входа;
лы Excel. данные из других источников мож- n BDC более надежны и безопасны,
n Настроить надежное расположе- но было только посредством встав- т.к. параметры подключения не хра-
ние данных: на странице управ- ки на страницу веб-части «Представ- нятся в открытом виде на странице,
ления поставщиком общих служб ление данных» с помощью Microsoft а определены в настройках прило-
в раз деле «Параметры слу жб Office Frontpage. жения на сервере, кроме того, че-
Excel/Надежные расположения Каталоги бизнес-данных облада- рез BDC можно получить доступ
данных» указать адрес этой биб- ют рядом преимуществ по сравнению строго к определенным таблицам
лиотеки. с этим способом: и данным.
28
администрирование
Для использования бизнес-данных браться, а средств отладки практичес- n Настроить параметры службы еди-
необходимо: ки нет (единственный источник инфор- ного входа в разделе: «Операции/
n создать файл определения при- мации об ошибках – event-логи серве- Управление параметрами единого
ложения (примеры можно найти ра и журнал трассировки). входа».
в SDK [2]); Впрочем, сейчас появились сторон- n Указать правила для сопоставле-
n импортировать файл определения ние программные продукты для визу- ния учетных записей («Операции/
и настроить параметры безопас- ального создания файлов определе- Управление параметрами едино-
ности на странице управления пос- ний приложений (например, MOSS BDC го входа/Управление сведениями
тавщиком общих служб в разделе Design Studio или BDC Meta Man), но они учетных записей для определений
«Каталог бизнес-данных» для ката- работают далеко не со всеми базами корпоративных приложений».
лога в целом и для каждого прило- данных и не работают с ODBC.
жения и сущности в отдельности; Если данные, отображаемые с по- Другие возможности
n проверить, включены ли компонен- мощью бизнес-каталогов, необходи- Хотелось бы отметить еще некоторые
ты корпоративного выпуска в «Уп- мо персонифицировать, потребует- из новых возможностей, полезных
равлении возможностями»; ся настройка службы единого вхо- для администратора:
n добавить на страницу веб-часть да. Эта служба позволит сопоставить n возможность аудита событий (от-
«Список бизнес-данных» или дру- учетные записи поставщика проверки крытие, просмотр, изменение эле-
гие подходящие веб-части. подлинности Sharepoint и учетные дан- ментов и документов);
ные корпоративных приложений. n корзина на двух уровнях (на уров-
Однако каталоги бизнес-данных Для этого необходимо: не узла, доступная всем пользова-
достаточно сложны в настройке – в на- n Запустить встроенный сервис телям, и на уровне семейства уз-
писании XML-файлов с определени- «Microsoft Single Sign On» («Служ- лов, доступная только админист-
ем приложения не так-то просто разо- ба единого входа Microsoft»). ратору);
30
администрирование
Технология NLB –
отказоустойчивость без лишних затрат
Андрей Бирюков
32
администрирование
О
тказ ключевых бизнес-прило- Выбор режима работы ном режиме – данная конфигурация,
жений всегда является боль- NLB-кластера как правило, является наиболее пред-
шой проблемой для систем- Узел может быть создан и настроен почтительной. В ней используется вто-
ных администраторов. Для ее решения для работы в одном из четырех режи- рой сетевой адаптер на каждом узле
можно использовать службу Microsoft мов, каждый из которых имеет свои кластера, что позволяет получить сле-
Clustering Service, входящую в состав достоинства и недостатки. Это следу- дующие преимущества: нет ограниче-
Windows Server 2003 Enterprise Edition. ющие режимы: ний на обычные сетевые соединения
Однако, кроме этой службы в состав n один сетевой адаптер в одноадрес- между узлами, возможна поддержка
Windows Server 2003 также входит ном режиме; NetBIOS через первый сконфигури-
служба Network Load Balancing. В чем n один сетевой адаптер в групповом рованный адаптер, не снижается про-
же различие между этими двумя клас- (многоадресном) режиме; изводительность сети и не возникает
терными службами? n несколько сетевых адаптеров в од- проблем с коммутаторами.
Microsoft Cluster Service прежде ноадресном режиме; Несколько сетевых адаптеров
всего дублирует систему хранения дан- n несколько сетевых адаптеров в групповом режиме – такая модель
ных, позволяя реализовать отказоус- в групповом режиме. используется, если у некоторых уз-
тойчивость посредством замены вы- лов в кластере имеется только один
шедшего из строя узла другими узла- Выбор режима функционирования сетевой адаптер, но при этом требу-
ми кластера. Такое построение клас- кластера зависит от обстоятельств, ется поддерживать обычные сетевые
тера удобно при реализации отказо- требований и ограничений, налагае- соединения между узлами данного
устойчивости для таких приложений, мых на структуру кластера. Рассмот- кластера. Такая модель вполне жиз-
как Microsoft Exchange, баз данных рим каждую из них. неспособна, однако могут быть про-
Microsoft SQL и других. Один сетевой адаптер, работаю- блемы с некоторыми моделями ком-
Другим решением, позволяющим щий в одноадресном режиме, явля- мутаторов.
также построить масштабируемую сис- ется в некотором смысле самым прос- Исходя из вышеописанного, на-
тему является Network Load Balancing. тым типом, и узел с одним адаптером иболее предпочтительной моделью
Данная служба дублирует сетевые немного дешевле, чем с несколькими. NLB‑кластера является использова-
службы, распределяя нагрузку между Но при этом налагаются существен- ние нескольких сетевых адаптеров
всеми узлами кластера. Служба NLB ные ограничения: снижается произво- в одноадресном режиме.
в основном используется при работе дительность сети в целом, отключают- Теперь обсудим некоторые момен-
с такими приложениями, как служба ся обычные соединения между узла- ты, связанные с предварительной на-
Web, FTP, Terminal Service. ми кластера, и наконец, в таком клас- стройкой NLB-кластера.
тере нет поддержки NetBIOS. Конеч- Во-первых, убедитесь что должным
Технология NLB но, последний пункт многим покажется образом обеспечена безопасность
Обсудим теоретические основы тех- не очень критичным, так как NetBIOS приложений, для которых распределя-
нологии. NLB – это драйвер сетево- сейчас мало кем используется, но все ется нагрузка. Система безопасности
го обмена Windows 2003. Он действу- же такое ограничение есть. NLB не распространяется на приложе-
ет независимо от сетевого стека TCP/ Один сетевой адаптер в груп- ния. Следовательно, службы кластера
IP и прозрачен для этого стека. Основ- повом (многоадресном) режиме с распределенной нагрузкой не будут
ным элементом службы NLB является предназначен для кластеров, в кото- осведомлены о нарушении безопас-
Windows Load Balancing, приложение, рых один или несколько узлов имеют ности на уровне приложений.
отвечающее за распределение нагруз- один сетевой адаптер. Соответствен- Во-вторых, неплохо бы позаботить-
ки между узлами кластера. но, между узлами в кластере
NLB образует кластер максимум можно устанавливать обыч-
из 32 компьютеров. Нагрузка на каж- ные соединения. Это свойс-
дое серверное приложение может быть тво позволяет обойти одно
распределена по узлам всего клас- из наиболее неудобных огра-
тера или управляться в основном ка- ничений работы с одним се-
ким-либо одним узлом, когда другой тевым адаптером в одноад-
узел в кластере обеспечивает избы- ресном режиме. К недостат-
точность для управляемого перехо- кам этой модели можно от-
да по отключению в случае отказа ос- нести: снижение общей про-
новного узла. изводительности сети, воз-
Для полностью распределенных можны проблемы с комму-
приложений отказ любого узла вызы- таторами, которые не подде-
вает перераспределение нагрузки, ко- рживают групповые MAC-ад-
торую нес этот узел, на все остальные реса. Также в таком класте-
машины кластера. При возвращении ре нет поддержки NetBIOS.
в строй узла нагрузка снова перерас- Н е с ко л ь ко с е т е в ы х
пределяется. адаптеров в одноадрес- Рисунок 1. Создание NLB-кластера
34
администрирование
правил для портов можно управлять на момент запуска Windows. Указыва- ная именно серверам терминалов.
поведением различных типов трафи- ем состояние Started. Затем нажима- Что делать с разъединенными сеанса-
ка TCP/IP. ем «Finish». ми пользователей, ведь в случае вы-
В частности, можно оптимизиро- При необходимос ти добавить хода из строя одного из узлов класте-
вать работу сети и увеличить быстро- еще один узел в уже существующий ра часть пользовательских сессий мо-
действие кластера в целом, запретив NLB‑кластер необходимо выполнить гут «повиснуть».
пересылку ненужных пакетов. следующее. В консоли «Network Load Если сервер терминалов выделяет
В следующем окне «Connect» вве- Balancing Manager» выбираем уже су- для пользовательских сессий локаль-
дите имя или IP-адрес первой хост- ществующий кластер и нажимаем пра- ные ресурсы, то сбой может привести
машины, которая будет включена вую кнопку мыши, затем «Add Host To к серьезным последствиям. К тому же
в этот кластер. Щелкните по кноп- Cluster». В окне Connect указываем имя сессия отключившегося пользовате-
ке «Connect», чтобы подсоединиться или IP-адрес узла, добавляемого в наш ля через некоторое время (указанное
к данному узлу и получить на экране кластер (см. рис. 2). в настройках терминального сервера)
список доступных сетевых интерфей- Подключившись к новому узлу, закрывается, лишив пользователя пос-
сов. Выделите интерфейс, через ко- можно выбрать из появившегося спис- ледней возможности сохранить дан-
торый будет проходить открытый тра- ка доступных интерфейсов тот, через ные и корректно завершить работу.
фик этого кластера (в отличие от час- который будет проходить открытый Однако даже в том случае, если
тного, межузлового трафика, который трафик этого кластера. пользователь после сбоя снова под-
используется узлами для обмена ин- Далее аналогично уже описанным ключится к серверу терминалов, нет
формацией). ранее действиям указываем парамет- никакой уверенности в том, что он по-
В окне «Host Parameters» вы мо- ры для данного узла, приоритет, состо- падет в свою, уже открытую сессию,
жете задать приоритет (в поле Priority) яние на момент запуска. После нажа- а не в новую, созданную другим сер-
для данного узла кластера (для реше- тия «Finish» получаем следующую кар- вером терминалов, входящим в этот
ния нашей задачи повышения отказо- тину (см. рис. 3). кластер.
устойчивости указываем приоритет, В случае, если по каким-либо при- Однако в случае кластера с распре-
равный единице) и выделенный IP‑ад- чинам вам необходимо вывести узел делением нагрузки Session Manager,
рес, который будет использоваться из кластера, достаточно выбрать дан- служба, отвечающая за распреде-
для подсоединения к этому конкрет- ный хост и, нажав правую кнопку мы- ление терминальных сессий, ничего
ному серверу (в отличие от кластера ши, указать Delete Host. не знает о сеансах на других серве-
в целом). Это должен быть фиксиро- рах. Поэтому Microsoft ввела понятие
ванный IP‑адрес, а не адрес, выдан- Настраиваем каталога сеансов (Session Directory).
ный DHCP. каталог сеансов Каталог сеансов поддерживает дина-
По поводу приоритетов необхо- Итак, NLB-кластер успешно создан. мическую базу данных, которая хра-
димо сделать небольшое поясне- Вообще его уже можно использовать нит соответствия имен пользовате-
ние. Приоритет является нормирую- для решения своих задач, указывая лей и открытых сеансов на всех терми-
щим коэффициентом балансировки, в качестве IP‑адреса адрес самого нальных серверах кластера. Это поз-
пропорциональный производитель- кластера. Например, для решения на- воляет пользователям подключаться
ности узла. Так как в нашем случае шей задачи с терминальным сервером к своим сеансам на любом сервере
мы не оптимизируем производитель- вы уже можете подсоединиться к клас- в кластере независимо от того, на ка-
ность, то приоритеты определены, рав- теру по его IP‑адресу и использовать кой сервер его изначально направила
ные единице. службу терминалов в режиме распре- служба NLB.
Последним этапом вам необходи- деленной нагрузки. Но тут возника- Настроим данную службу на нашем
мо задать начальное состояние узла ет небольшая проблема, свойствен- кластере. Session Directory может ис-
36
bugtraq
VS
Андрей Шетухин
Современный блогохостинг – какой он? Какую СУБД выбрать, как спроектировать
схему данных и где узкие места при использовании той или иной СУБД? Протестируем
производительность СУБД MySQL и PostgreSQL на примере блогохостинга.
О
сравнении производительности Однако, все тесты, которые доступ- Мы же тестируем пригодность
MySQL и PostgreSQL написана ны в Интернете, – это работа СУБД СУБД для реализации конкретно-
не одна статья, и всезнающий на синтетических запросах, имею- го проекта, а именно – блогохостин-
Google выдает больше миллиона доку- щих малое отношение к конкретным га с большим количеством активных
ментов, посвященных этой теме. проектам. пользователей, которые не только ве-
38
администрирование
дут свои дневники, пишут и читают комментарии, но и чи- 8VHUV )ULHQGV
тают записи своих друзей. 3. XVHUBLG ). 3.). XVHUBLG
XVHUBQDPH ). 3.). IULHQGBLG
40
администрирование
Для максимально оптимальной выборки Результаты тестирования СУБД MySQL и PostgreSQL в зависимости
от количества подключений
необходимо на внутренний запрос подключить
индекс по первичному ключу таблицы friends, Количество коннектов MySQL InnoDB MySQL MyISAM PostgreSQL
в пуле (read/write per sec) (read/write per sec) (read/write per sec)
а для внешнего запроса – первичный ключ по
1 600/60 500/20 4000/1500
таблице posts.
Однако, поскольку MySQL всех версий 5 1100/110 600/50 12000/3000
OpenWRT –
Linux для встраиваемых систем
Дмитрий Столяров
42
администрирование
O
penWRT – это дистрибутив
для встраиваемых устройств, Предупреждение ную для адресации большего объема ОП.
основанный на GNU/Linux. Обратите внимание, что вы несете всю от- Таким образом, становится возможной за-
Изначально OpenWRT был создан ветственность за любые потери, вызван- мена модулей памяти меньшего размера
для Linksys WRT54G и подобных мо- ные применением на практике материа- (например, 8 Мб) на большие (например,
делей, но со временем он включил ла этой статьи. 16 или 32 Мб). Историю успеха такой ап-
поддержку многих других архитектур паратной модернизации вы можете под-
от различных производителей. К са- Аппаратные доработки робнее изучить на русскоязычном форуме,
мым популярным моделям маршру- Многие маршрутизаторы обладают не- посвященном прошивкам для ASUS [9]. За-
тизаторов, на которых он использует- большим объемом памяти, при этом их ад- мечу, что такие эксперименты наиболее ин-
ся, относятся Linksys WRT54G и ASUS ресная шина имеет разрядность, достаточ- тересны любителям «олова и паяльника».
WL-500g (см. «Поддерживаемые мо-
дели маршрутизаторов»). Оборудо- Те к у щ а я с т а б и л ь н а я в е р с и я Если вы используете OpenWRT,
вание, на котором устанавливается OpenWRT – White Russian 0.9. Все у вас появится возможность настро-
OpenWRT, следует концепции SOC примеры будут приводиться именно ить VPN-сервер. Более того, вы смо-
(System-on-a‑chip), при которой все для этой версии. жете выбрать, какую именно VPN-ре-
компоненты компьютера интегриру- ализацию использовать: OpenVPN,
ются в один чип. То есть фактичес- Мотивация PPTP или L2TP. Такой VPN-сервер бу-
ки описываемые модели маршрути- к использованию дет на приемлемом уровне обслужи-
заторов являются небольшими ком- Прежде всего надо понять, что, собс- вать 1‑2 клиентов, что является до-
пьютерами. Далее везде под поняти- твенно, нужно. Если требуется марш- статочным для малых сетей (см. «На-
ями «маршрутизатор» и «роутер» бу- рутизатор, подключающийся к провай- стройка VPN-сервера с использова-
дут пониматься устройства именно та- деру и предоставляющий доступ не- нием PPTPD»).
кого класса. скольким компьютерам посредством
Появление OpenWRT стало воз- NAT, и он вполне стабильно работает, Случай третий: загрузка
можным благодаря тому, что многие OpenWRT – это не ваш случай. файлов
производители роутеров в качест- OpenWRT будет интересен, если вы Вы загружаете много больших фай-
ве базового программного обеспе- хотите добиться необычных результа- лов или часто пользуетесь пиринго-
чения использовали свободное ПО, тов или если вам нужен специфичный выми сетями, но вам неудобно дер-
что обязывало их опубликовывать функционал. жать ваш компьютер включенным во
собственные наработки на аналогич- время закачки. Такая задача разре-
ных правах. Случай первый: несколько шима, если роутер имеет USB-порт.
Первое время единственным ин- VPN‑подключений К нему потребуется подключить flash-
терфейсом управления OpenWRT бы- Допустим, из домашней сети необ- накопитель, а затем с помощью таких
ла командная строка (SSH/telnet), поз- ходимо часто подключаться к рабо- утилит, как wget или ctorrent (консоль-
же появился веб-интерфейс (webif). чей, и вам не нравится постоянно ный BitTorrent-клиент), загружать фай-
Сейчас на замену webif пришел webif^2, включать/отключать VPN-соединение лы на накопитель.
отдельно разрабатываемый в рамках на вашем компьютере. Или же вы хо- После этого, подключив flash-нако-
проекта X-Wrt (см. «Установка веб-ин- тите, чтобы ваш роутер был подклю- питель к вашему компьютеру или со-
терфейса»). Веб-интерфейс, как это чен к нескольким местам одновре- единившись с предварительно уста-
часто бывает, не дает доступа к уп- менно, например, к провайдеру (пос- новленным на маршрутизаторе FTP-
равлению всем имеющимся функцио- редством PPPoE), а также в вашу ра- сервером (см. «Настройка FTP-сер-
налом, но зато более удобен для мно- бочую сеть (по протоколу PPTP) и к ва- вера»), вы получите доступ к загру-
гих конечных пользователей. шему коллеге, с которым вы играете женным файлам. Кроме flash-нако-
Одна из ключевых особенностей в компьютерные игры (с использова- пителя может быть использован жес-
OpenWRT – использование файловой нием OpenVPN). Причем так, чтобы ткий диск, подключаемый также пос-
системы, поддерживающей запись все это работало прозрачно, не тре- редством USB (однако для USB HDD,
и специально созданной для flash-на- бовало сложной настройки при каж- скорее всего, понадобится внешнее
копителей – JFFS2. Эта ФС учитывает дом подключении. Такая конфигура- питание).
специфику перезаписи flash-памяти, ция реализуема на роутерах под уп-
относясь к ней гораздо бережнее. равлением OpenWRT (см. «Настрой- Случай четвертый: небольшой
Ее наличие дало возможность ис- ка PPTP-клиента»). веб-сервер
пользования системы управления Вы хотите разместить в сети веб-сайт,
пакетами – ipkg (см. «Общие сведе- Случай второй: VPN-доступ который не предназначен для большо-
ния о работе в OpenWRT»). ipkg – это в вашу локальную сеть го числа посетителей. Вы не хотите
версия пакетного менеджера Debian Вы часто сталкиваетесь с необходи- для него приобретать хостинг или де-
(dpkg), адаптированная для исполь- мостью подключаться удаленно к се- ржать постоянно включенным шумя-
зования во встраиваемых системах ти, в которой роль главного маршрути- щий компьютер. На маршрутизатор
и КПК. затора выполняет SOC-роутер. под управлением OpenWRT можно ус-
44
администрирование
Выглядит это следующим образом: Далее необходимо подключиться к маршрутизатору
по telnet, изменить пароль пользователя root, отключить за-
# mount пуск telnetd и установить имя маршрутизатора:
/dev/root on /mnt/rom type squashfs (ro)
/dev/mtdblock/4 on /mnt/jffs type jffs2 (rw) # telnet 192.168.1.1
/jffs on / type mini_fo (rw) root@OpenWrt # passwd
root@OpenWrt # nvram set telnet_enable=0
root@OpenWrt # nvram set wan_hostname=router
Процесс прошивки OpenWRT root@OpenWrt # nvram commit
root@OpenWrt # reboot
в маршрутизатор
Общепринятым и наиболее универсальным способом на- В этом примере используется утилита nvram. Она поз-
чальной установки является инсталляция посредством tftp воляет управлять практически всеми конфигурационны-
(легковесный FTP, работающий поверх UDP, а не TCP). За- ми параметрами. Последние сохраняются в специальную
грузчик рассматриваемого устройства создан таким обра- область постоянной памяти. Рассмотрим ее основные воз-
зом, что может принять образ прошивки по tftp и записать можности:
его на встроенную flash-память. Для проведения этой опе- n nvram set <имя_параметра>=<значение_парамет-
рации потребуется клиент tftp. ра> – установить значение параметра;
Для установки выберем минимальный образ системы, ко- n nvram get <имя_параметра> – получить значение па-
торый можно скачать по адресу: http://downloads.openwrt.org/ раметра;
whiterussian/0.9/micro. n nvram unset <имя_параметра> – удалить параметр;
Названия файлов в этой директории формируют- n nvram show – вывести полный список параметров
ся следующим образом: openwrt-<модель|архитектура>- и их значений;
<версия_ядра>-squashfs.<bin|trx>. Для используемой мо- n nvram commit – записать параметры в постоянную па-
дели маршрутизатора нужен образ openwrt-brcm-2.4- мять (количество циклов перезаписи ограничено, не де-
squashfs.trx. Информация об особенностях выбора и ин- лайте это слишком часто).
сталляции версии OpenWRT именно для различных ро-
утеров опубликована на странице документации сайта Теперь, для того чтобы подключиться к маршрутизато-
разработчиков [5]. ру, необходимо использовать SSH:
Настройк у локального адреса маршру тизатора
на 192.168.1.1 можно осуществить через стандартный веб- $ ssh 192.168.1.1 -l root
интерфейс. Password:
Для того чтобы перевести ASUS WL-500g в режим ин- root@router:~#
$ tftp 192.168.1.1
tftp> rexmt 1
tftp> ntrace
tftp> binary
tftp> put openwrt.bin
tftp> quit
46
администрирование
OHCI USB 1.1: Их инсталляция через ipkg осуществляется так:
Также понадобится модуль ядра, отвечающий за подде- После перезагрузки маршрутизатора можно проверять
ржку USB-накопителей: состояние swap:
48
администрирование
nvram get) и согласно им запускает pppd. Без перезагрузки n wl0_infra <0|1> – инфраструктурный режим сети. Зна-
(вручную) запускать и останавливать PPPoE можно с помо- чение 0 – специальный (одноранговый) режим (Ad Hoc
щью следующих команд: mode), 1 – обычный режим.
n wl0_closed <0|1> – вещание ESSID. При установлен-
# ifup.pppoe wan ном значении 1 идентификатор сети не распространя-
# ifdown wan
ется.
Если вы столкнулись с какой-то проблемой или нестан- n wl0_channel <канал> – номер канала передачи (чис-
дартной ситуацией, можете с легкостью исправить эти ло от 1 до 11 и более, в зависимости от беспроводного
скрипты. Написаны они очень кратко, и при этом, к сожа- адаптера, установленного в маршрутизаторе).
лению, их качество оставляет желать лучшего. n wl0_macmode <disabled|allow|deny> – управление
фильтрацией по MAC-адресу. При значении ключа
Настройка PPTP-клиента disabled фильтрация отключена, при allow – перечис-
Первым делом необходимо установить модули ядра и PPTP- ленным в списке адресам предоставляется доступ,
клиент. при deny – запрещается.
n wl0_maclist [MAC [MAC]] – список MAC-адресов. Ад-
# ipkg install kmod-gre реса пишутся через пробел в следующем формате:
# ipkg install kmod-mppe
# ipkg install pptp 01:23:45:67:78:9A.
Для конфигурации конкретного соединения можно ли- Рассмотрим пример конфигурации, настроив Wi-Fi сле-
бо воспользоваться веб-интерфейсом, либо произвести дующим образом:
следующие действия:
nvram set wl0_mode=ap
# echo 'somepear vpn.foo.bar someuser' >> ↵ nvram set wl0_ssid=some_essid
/etc/ppp/pears.pptp nvram set wl0_infra=1
# echo 'someuser pptp:somepear somepass *' >> ↵ nvram set wl0_channel=4
/etc/ppp/chap-secrets nvram set wl0_macmode=disabled
# /etc/init.d/S90pptp start somepear nvram commit
# /etc/init.d/S90pptp stop somepear
При такой настройке маршрутизатор будет выпол-
В этом примере: нять роль точки доступа Wi-Fi, идентификатор сети бу-
n somepear – название точки доступа; дет some_essid, работать беспроводная сеть будет на чет-
n vpn.foo.bar – адрес PPTP-сервера; вертом канале, а подключиться сможет любой совмести-
n someuser – имя пользователя; мый клиент.
n somepass – пароль пользователя. Более подробно об этих и многих других опциях вы смо-
жете узнать на сайте дистрибутива OpenWRT [6].
Для того чтобы установить дополнительные правила
маршрутизации или брандмауэра, можно воспользовать- Настройка DHCP-сервера
ся скриптами pppd ip-up и ip-down. Рассмотрим следую- В роли DHCP-сервера в OpenWRT в основном использу-
щий пример: ется Dnsmasq – легковесный DHCP-север и DNS-прокси.
По умолчанию в OpenWRT все настройки DHCP располо-
# cat > /etc/ppp/ip-up.d/somepear жены в nvram, а скрипт запуска получает их оттуда и пе-
#!/bin/sh
interface_name=$1 редает как аргументы dnsmasq. Такой способ управления
remote_ip=$4 не очень удобен, да и сложившиеся тенденции (в первом
ipparam=$5
if [ "${ipparam}" = "pptp:somepear" ]; then выпуске Kamikaze, новой версии OpenWRT, отказались
/sbin/route add -net 10.0.0.0 netmask 255.255.248.0 ↵ от nvram) ведут к отказу от использования nvram. Именно
gw $remote_ip dev $interface_name
fi поэтому рассмотрим вариант конфигурации с использова-
нием обычных файлов.
В этом примере добавляется маршрут к сети 10.0.0.0/21 Первое, что необходимо сделать – заменить скрипт ини-
через IP-адрес удаленной стороны туннеля. циализации /etc/init.d/S60dnsmasq на следующий (связано
это с отказом от nvram):
Настройка беспроводного интерфейса
Большинство маршрутизаторов, на которых может быть #!/bin/sh
[ ! -f /tmp/dhcp.lease ] && {
установлен OpenWRT, относятся к классу беспроводных, touch /tmp/dhcp.lease
то есть имеют адаптер Wi-Fi. Рассмотрим несколько подроб- }
dnsmasq -C /etc/dnsmasq.conf
ней основные параметры беспроводного интерфейса:
n wl0_mode <ap|sta|wet> – режим работы точки Wi-Fi. Зна- Рассмотрим наиболее важные опции конфигурации
чение ap означает режим «точка доступа», sta – режим dnsmasq (/etc/dnsmasq.conf):
«клиента беспроводной маршрутизации», wet – режим n bogus-priv – на запросы обратного преобразования,
«беспроводного моста». не разрешенные локально (средствами lease файла
n wl0_ssid <essid> – идентификатор беспроводной сети или /etc/hosts), отвечать сообщением об отсутствии та-
(ESSID). кого имени.
50
администрирование
гое другое. Здесь необходимо указать адрес VPN-серве- iptables -A output_rule -p 47 ↵
ра таким же, что и его основной локальный IP (по умолча-
iptables
-j ACCEPT
-A input_rule -p 47 ↵
нию – 192.168.1.1). Шифрование можно отключить, заме- -j ACCEPT
нив строку:
Для того чтобы работала передача трафика между ло-
mppe required,no40,no56,stateless кальной сетью и виртуальными клиентами ($WAN – имя ва-
шего внешнего интерфейса, например: eth1 или ppp0) до-
на следующую: бавим правила:
Таким образом, после перезагрузки на маршрутиза- Настройка cron для ежечасной синхронизации, выполня-
торе будет функционировать полностью настроенный емой от имени пользователя root, будет выглядеть так:
FTP‑сервер.
echo "0 * * * * /usr/sbin/ntpclient ↵
Настройка отправки почты -h europe.pool.ntp.org -s" >> /etc/crontabs/root
Для отправки почты с маршрутизатора удобнее всего ис- Второй способ управления crontab – вызов программы
пользовать SSMTP. Для его установки необходимо выпол- /usr/bin/crontab (BusyBox) с параметром -e.
нить следующее:
Другие возможные применения
# ipkg install ssmtp Стоит учитывать, что в статье описаны далеко не все воз-
можности применения OpenWRT. Так например, сущес-
После установки необходимо исправить конфигура- твуют возможности скачивания файлов с помощью ути-
ционный файл /etc/ssmtp/ssmtp.conf и указать в нем поч- лит Wget и cTorrent, создания почтового сервера на базе
товый сервер (на нем должна быть разрешена пересыл- XMail, организация сервера печати (в случае наличия USB-
ка почты, полученной неавторизованным SMTP для ва- или LPT‑порта), установки Samba и множества других па-
шего IP, или вы сможете отправлять письма только в рам- кетов. Полный список пакетов можно найти в уже упомя-
ках одного сервера): нутой поисковой системе [8].
Удачи!
mailhub=mail.foo.bar.ru
1. http://wiki.openwrt.org/TableOfHardware.
Теперь, чтобы отправить письмо с маршрутизатора, до- 2. http://www.ipkg.be/repositories.
статочно набрать команду: 3. http://wiki.openwrt.org/UsbStorageHowto.
4. http://matt.ucc.asn.au/dropbear/dropbear.html.
# ssmtp someuser@foo.bar.ru 5. http://wiki.openwrt.org/CategoryModel.
To: someuser@foo.bar.ru 6. http://wiki.openwrt.org/OpenWrtDocs/Configuration.
From: someuser@foo.bar.ru 7. http://www.thekelleys.org.uk/dnsmasq/doc.html.
Subject: Some notification message
Hello world! 8. http://ipkg.be.
9. http://wl500g.info/showthread.php?t=7048.
52
администрирование
Дмитрий Шурупов
Системные администраторы и пользователи UNIX/Linux-систем, несомненно, привыкли
к работе со своей любимой командной оболочкой и к стандартным программным средствам.
Но их повсеместное использование не всегда возможно. И тогда на помощь приходит
BusyBox – упрощенный shell с набором компактных системных средств.
BusyBox: что это такое ры деятельности, в которых компакт- нируется как «швейцарский нож для
и зачем вообще нужно? ность любых приложений по очевид- встраиваемых Linux-систем» и в пер-
Несмотря на безудержный рост гра- ным причинам очень важна, например, вую очередь ориентирован на исполь-
фических оболочек и «дружелюбных» во встраиваемых устройствах. Вместе зование в небольших дистрибутивах
интерфейсов, представить себе UNIX с тем во многих случаях не требуется GNU/Linux. Распространяется под вто-
без командной строки и основных ути- значительная часть той функциональ- рой версией лицензии GNU GPL.
лит в наши дни невозможно. Много- ности, которая присуща базовым ути- BusyBox представляет собой единст-
численные интерпретаторы и базовые литам «общего назначения». венный исполняемый файл, при запус-
системные утилиты не стоят на мес- Для решения этих проблем еще ке которого загружается полноценный
те, растут и развиваются, что неиз- в с е р ед и н е 9 0 -х Бр ю с о м Пе р е н - командный интерфейс. Как гласит
бежно ведет и к увеличению их объ- сом (Bruce Perens) был создан пакет официальная документация BusyBox,
ема. В то же время существуют сфе- BusyBox [1]. Сейчас проект позицио- для формирования минимальной
54
администрирование
версии GNU/Linux к этому достаточ-
но добавить лишь ядро ОС и катало- Где используется BusyBox и MoviX (популярный компактный дистри-
ги /etc, /dev. Примеры практического использования бутив с набором мультимедийных Open
BusyBox при создании дистрибутива вы Source-решений), в установщиках Debian,
Установка BusyBox можете найти в статье Всеволода Стахова Gentoo, Red Hat, Mandriva и других проек-
Бинарные пакеты с BusyBox для попу- «Создание загрузочных дискет и CD-дис- тов, а также во многих Linux-основанных ус-
лярных дистрибутивов GNU/Linux до- ков Linux» в №6 за 2003 г. или классических тройствах (Sharp Zaurus, роутеры, AP...).
ступны в соответствующих репозито- публикациях Брюса Перенса (Bruce Perens) В OpenWRT, (смотрите стр.42-52 жур-
риях, а архив с исходниками – на сай- «Building Tiny Linux Systems with Busybox», нала), в качестве командной оболочки
те проекта [2]. В статье рассматривает- доступных в Интернете (часть 1: http:// и базовых системных средств использу-
ся релиз BusyBox v1.5.0. Одна из глав- www.linuxjournal.com/article/4335, часть 2: ется именно BusyBox. Более подробный
ных целей, которую преследуют раз- http://www.linuxjournal.com/article/4395). список продуктов, использующих BusyBox,
работчики BusyBox, – оптимизирован- BusyBox нашел применение в таких доступен на сайте http://www.busybox.net/
ность и компактность кода – расчет на системах, как Familiar Linux (для КПК) products.html.
ограниченность памяти. Это не только
вновь говорит о плюсах его использо- Аргумент «menuconfig» вызывает ключить ненужные возможности. Пре-
вания во встраиваемых устройствах, более удобную конфигурацию в виде дусмотрен и обратный вариант: запуск
но и хорошо сочетается с другим под- меню с интерфейсом на базе curses make с «allnoconfig» отключает все оп-
ходом в духе UNIX way: высокий уро- (см. рис. 1). ции, чтобы после этого можно было вы-
вень настраиваемости (в бинарный Аргумент «defconfig» автоматичес- брать только то, что нужно.
файл BusyBox можно включить толь- ки включает все доступные опции, под- Далее все традиционно:
ко необходимые компоненты). готавливая к сборке BusyBox «общего
Еще на стадии компиляции (а точ- назначения». $ make
$ sudo make install
нее, до самого процесса сборки) мож- Так же, как и в случае с ядром Linux,
но выбрать только те базовые утилиты, после настройки создается конфи-
которые нужны. Реализовано это в сти- гурационный файл .config, к которо- Работа с BusyBox
ле настройки ядра Linux. Вместо более му можно затем всегда возвращать- Запуск оболочки BusyBox можно осу-
распространенного среди собираемых ся командой: ществить командой:
с automake приложений способа в виде
скрипта «configure» для предваритель- $ make oldconfig $ bb
ной конфигурации BusyBox нужно вы-
полнить одну из следующих команд: Это актуально при переходе на бо- Для разового вызова какой-либо
лее новую версию BusyBox со старой функции (как правило, одна функция
$ make config конфигурацией (чтобы при настройке BusyBox ограниченно реализует воз-
$ make menuconfig
$ make defconfig работать только с появившимися в оче- можности одной из утилит из состава
редном релизе опциями). GNU coreutils, util-linux и других стан-
Аргумент «config» инициирует за- По умолчанию, если до вызо - дартных пакетов) можно воспользо-
пуск «вопросника» со списком доступ- ва «make menuconfig» не существо- ваться командой:
ных опций и базовых утилит, пред- вал файл .config, make автоматичес-
лагающего проставлять «Y» или «N» ки предварительно запускается с ар- $ busybox <функция> [аргументы]
на месте нужных и ненужных возмож- гументом «defconfig». Таким образом,
ностей соответственно. пользователю останется только от- То есть, например:
Рисунок 1. Установка BusyBox: «make menuconfig» на манер Linux-ядра Рисунок 2. BusyBox в работе: ls
56
bugtraq
Централизованная настройка
UNIX-систем с помощью Puppet
Сергей Яремчук
Управление большим количеством UNIX-систем нельзя назвать удобным. Для изменения
одного параметра администратору приходится обращаться к каждой машине, скрипты лишь
частично могут помочь, да и не во всех ситуациях.
С
ледует признать, что админис- волить их приобрести могут только ет процесс написания команд, с ходу
траторы Windows-сетей нахо- крупные организации. Есть, конечно, создать правильную конфигурацию
дятся все-таки в более выгод- и проекты, предлагающие свободные очень сложно, а созданные конфигу-
ном положении. Достаточно изменить решения, но за все время своего су- рации прочитать через некоторое вре-
настройки групповых политик, и через ществования они так и не смогли со- мя практически не реально. Несмот-
некоторое время все компьютеры се- здать большого сообщества. Напри- ря на GPL-лицензию Cfengine, факти-
ти, в том числе и с недавно установ- мер, Cfengine [3] не очень пользуется чески проект одного человека, кото-
ленной операционной системой, «уз- популярностью у администраторов, хо- рый контролирует все изменения и не
нают» о нововведении, если они их, ко- тя, кроме Linux, может использовать- очень заинтересован в построении от-
нечно, касаются. Оглянувшись на дол- ся в *BSD, Windows и Mac OS X. Воз- крытого общества. В результате воз-
гий период развития UNIX, можно за- можно, это связано с относительной можности Cfengine вполне удовлет-
метить, что ничего подобного так и сложностью в создании конфигура- воряют разработчика, а для осталь-
не прижилось. Есть решения вроде ций. При описании заданий приходит- ных администраторов это скорее лиш-
kickstart, которые помогают при пер- ся учитывать особенности каждой кон- няя головная боль. Чтобы улучшить
вичной установке операционной сис- кретной системы и вручную контроли- Cfengine, сторонними разработчика-
темы, но дальнейшая доводка потре- ровать последовательность действий ми были созданы различные дополне-
бует значительных усилий. Коммер- при выполнении команд. То есть ад- ния, что часто только ухудшало ситуа-
ческие решения, вроде BladeLogic [1] министратор должен помнить, что для цию. Автор нескольких таких модулей
и OpsWare [2], проблему автоматиза- одних систем следует писать adduser к Cfengine Люке Каниес (Luke Kanies)
ции настроек решают лишь отчасти, для других – useradd, учитывать рас- в итоге решил разработать подобный
основное их достоинство – наличие положение файлов в разных системах инструмент, но лишенный многих не-
графического интерфейса, да и поз- и так далее. Это на порядок усложня- достатков Cfengine.
58
администрирование
Возможности Puppet вом случае используется ссылка на внешний NFS-сервер,
Puppet [4], как и Cfengine, является клиент-серверной сис- во втором варианте на сервере Puppet запускается NFS‑по-
темой, использующей декларативный, то есть обязатель- добный сервис, который и экспортирует ресурсы. В послед-
ный для выполнения язык для описания задач и библиоте- нем случае по умолчанию путь указывается относитель-
ки для их реализации. Клиенты периодически (по умолча- но корневого каталога puppet – /etc/puppet. То есть ссылка
нию каждые 30 минут) соединяются с центральным серве- puppet://server.domain.com/config/sshd_config будет соответс-
ром и получают последнюю конфигурацию. Если получен- твовать файлу /etc/puppet/config/sshd_config. Переопреде-
ные настройки не совпадают с системным состоянием, они лить этот каталог можно с помощью директивы filebucket,
будут выполнены, при необходимости серверу отсылается хотя более правильно использовать одноименную секцию
отчет о произведенных операциях. Сервер сообщения мо- в файле /etc/puppet/fileserver.conf. В этом случае можно ог-
жет сохранить в syslog или файл, создать RRD-график, отос- раничить доступ к сервису только с определенных адресов.
лать на указанный e‑mail. Дополнительные уровни абстрак- Например, опишем секцию config:
ции Transactional и Resource обеспечивают максимальную
совместимость с существующими настройками и приложе- [config]
path /var/puppet/config
ниями, позволяя сфокусироваться на системных объектах, allow *.domain.com
не заботясь о различиях в реализации и описании подроб- allow 127.0.0.1
allow 192.168.0.*
ных команд и форматах файлов. Администратор опериру- allow 192.168.1.0/24
ет лишь с типом объекта, остальное Puppet берет на себя. deny *.wireless.domain.com
Так, тип packages знает о 17 пакетных системах, нужная ав-
томатически будет распознана на основании информации А затем обращаемся к этой секции при описании ре-
о версии дистрибутива или системы, хотя при необходимос- сурса:
ти пакетный менеджер можно задать принудительно.
В отличие от скриптов, которые часто невозможно ис- source => "puppet://server.domain.com/config/sshd_config"
пользовать в других системах, конфигурации Puppet, напи-
санные сторонними администраторами, будут в большинс- Перед двоеточием располагается название ресурса.
тве без проблем работать в любой другой сети. В Puppet В самых простых случаях в качестве имени можно просто
CookBook [5] уже имеется три десятка готовых рецептов. указать полный путь к файлу. В более сложных конфигу-
В настоящее время Puppet официально поддерживает сле- рациях лучше использовать псевдоним или переменные.
дующие операционные системы и сервисы: Debian, RedHat/ Псевдоним устанавливается с помощью директивы alias:
Fedora, Solaris, SUSE, CentOS, Mac OS X, OpenBSD, Gentoo
и MySQL, LDAP. file { "/etc/passwd":
alias => passwd
}
Язык Puppet
Чтобы идти дальше, вначале следует разобраться с основ- Другой вариант создания псевдонима хорошо подходит
ными элементами и возможностями языка. Язык – это од- в том случае, когда приходится иметь дело с разными опе-
на из сильных сторон Puppet. С его помощью описывают- рационными системами. Например, создадим ресурс, опи-
ся ресурсы, которыми администратор планирует управлять, сывающий файл sshd_config:
и действия. В отличие от большинства подобных решений,
в Puppet язык позволяет упростить обращение ко всем file { sshdconfig:
name => $operatingsystem ? {
схожим ресурсам на любой системе в гетерогенной среде. solaris => "/usr/local/etc/ssh/sshd_config",
Описание ресурса, как правило, состоит из названия, типа default => "/etc/ssh/sshd_config"
}
и атрибутов. Например, укажем на файл /etc/passwd и ус-
тановим его атрибуты: В этом примере мы столкнулись с возможностью выбо-
ра. Отдельно указан файл для Solaris, для всех остальных
file { "/etc/passwd": будет выбран файл /etc/ssh/sshd_config. Теперь к этому ре-
owner => root,
group => root, сурсу можно обращаться как к sshdconfig, в зависимости от
mode => 644, операционной системы будет выбран нужный путь. Напри-
}
мер, укажем, что в случае, если демон sshd запущен и по-
Теперь клиенты, подключившись к серверу, скопируют лучен новый файл, следует перезапустить сервис:
файл /etc/passwd и установят указанные атрибуты. В од-
ном правиле можно определять сразу несколько ресурсов, service { sshd:
ensure => true,
разделяя их с помощью точки с запятой. А что делать, ес- subscribe => File[sshdconfig]
ли конфигурационный файл, используемый на сервере, от- }
личается от клиентских или вообще не используется? На-
пример, такая ситуация может возникнуть при настройках Переменные часто используются при работе с пользо-
VPN-соединений. В этом случае следует указать на файл вательскими данными. Например описываем местораспо-
директивой source. Здесь два варианта, можно, как обыч- ложение домашних каталогов пользователей:
но указать путь к другому файлу, а также с помощью под-
держивающихся двух URI протоколов: file и puppet. В пер- $homeroot = "/home"
В параметр $name будет подставлено учетное имя поль- Теперь, чтобы создать новую учетную запись, достаточ-
зователя. В некоторых случаях удобно определить значе- но обратиться к user_homedir:
ние по умолчанию для некоторого типа. Например, для ти-
па exec очень часто указывают каталоги, в которых он дол- user_homedir { "sergej":
group => "sergej",
жен искать исполняемый файл: fullname => "Sergej Jaremchuk",
ingroups => ["media", " admin]
}
Exec { path => "/usr/bin:/bin:/usr/sbin:/sbin" }
Отдельно стоят описания узлов (node), которые подде-
В том случае, если нужно указать на несколько вло- рживают наследование, как и классы. При подключении
женных файлов и каталогов, можно использовать пара- клиента к серверу Puppet будет произведен поиск соот-
метр recurse: ветствующей секции node и выданы специфические толь-
ко для этого компьютера настройки. Для описания всех ос-
file { "/etc/apache2/conf.d": тальных систем можно использовать node default. Описа-
source => "puppet:// ↵
puppet://server.domain.com/config/apache/conf.d", ние всех типов приведено в документе «Type Reference»,
recurse => "true" с которым необходимо ознакомиться в любом случае, хо-
}
тя бы для того, чтобы понять все возможности языка Puppet.
Несколько ресурсов могут быть объединены в классы Различные типы позволяют выполнять указанные коман-
или определения. Классы являются законченным описани- ды, в том числе и при выполнении определенных условий
ем системы или сервиса и используются обособленно: (например, изменение конфигурационного файла), рабо-
тать с cron, учетными данными и группами пользователей,
class linux { компьютерами, монтированием ресурсов, запуском и ос-
file {
"/etc/passwd": owner => root, group => root, ↵ тановкой сервисов, установкой, обновлением и удалени-
mode => 644; ем пакетов, работой с SSH-ключами, зонами Solaris и так
"/etc/shadow": owner => root, group => root, ↵
mode => 440 далее. Вот так просто можно заставить обновлять список
} пакетов в дистрибутивах, использующих apt, ежедневно
}
между 2 и 4 часами:
Как и в объектно-ориентированных языках, классы мо-
гут переопределяться. Например, в FreeBSD группой-вла- schedule { daily:
period => daily,
дельцем этих файлов является wheel. Поэтому, чтобы не range => [2, 4]
переписывать ресурс полностью, создадим новый класс }
exec { "/usr/bin/apt-get update":
freebsd, который будет наследовать класс linux: schedule => daily
}
class freebsd inherits linux {
File["/etc/passwd"] { group => wheel };
File["/etc/shadow"] { group => wheel } Обновление за тот период каждой системой будет вы-
} полнено только один раз, после чего задание считается
выполненным и будет удалено с клиентского компьютера.
Для удобства все классы можно вынести в отдельный Язык Puppet поддерживает другие привычные структуры:
файл, который нужно подключать директивой include. Оп- условия, функции, массивы, комментарии и подобные.
ределения могут принимать многочисленные параметры
в качестве аргументов, но не поддерживают наследования Установка Puppet
и используются в том случае, если нужно описать много- Для работы Puppet потребуются Ruby (начиная с версии 1.8.1
кратно используемые объекты. Например, определим до- и выше) с поддержкой OpenSSL и библиотеками XMLRPC,
машний каталог пользователей и команды, необходимые а также библиотека Faster [6]. В репозитарии Ubuntu 7.04,
для создания новой учетной записи: который использовался при тестовой установке, уже вклю-
чен пакет puppy:
define user_homedir ($group, $fullname, $ingroups) {
user { "$name": $ sudo apt-cache search puppet
ensure => present,
comment => "$fullname", puppet - centralised configuration management for networks
gid => "$group",
puppetmaster - centralised configuration manangement control daemon
groups => $ingroups,
membership => minimum,
shell => "/bin/bash",
home => "/home/$name", При инсталляции будут установлены все необходимые
require => Group[$group], пакеты: facter libopenssl-ruby libxmlrpc-ruby.
}
60
администрирование
Проверить наличие библиотек Ruby можно командой: $ puppetd --genconfig > /etc/puppet/puppetd.conf
Особенности
инсталляции Solaris
Владимир Василькин
Как подружиться с «динозавром»? Бывает, так ласково называют одну из старейших
операционных систем семейства UNIX – Solaris. С чего же можно начать знакомство?
Как вариант – с первоначальной установки – инсталляции. Посмотрим, в чем заключаются
особенности первой встречи с нестрашным «динозавром» – Solaris 10.
Н
ачнем с определений. Что такое случаях используется промежуточный По терминологии мира PC-совмес-
операционная система? Следуя слой – программа-загрузчик. Принци- тимых компьютеров встроенным про-
википедии [6] – это программа пиально процесс загрузки ОС выгля- граммно-аппаратным средством слу-
(комплекс программ), которая управ- дит одинаково на всех системах. жит BIOS. При работе с другими сис-
ляет аппаратными средствами ком- Получается, что инсталляция опе- темами обычно используется слово
пьютера и служит средой для выполне- рационной системы – это копирова- firmware.
ния других программ. При включении ние файлов на постоянный носитель На SPARC-совместимых серве-
питания встроенные программно-ап- (с возможным изменением некоторых – рах производства SUN и FUJITSU-
паратные средства по определенным здесь уже используются процессы пер- SIEMENS в качестве firmware в ос-
правилам ищут операционную систе- воначальной конфигурации) и настрой- новном выступает OpenBoot (Open
му, загружают ее в память и передают ка аппаратно-программного комплекса Firmware) [7]. Более подробно работу
дальнейшее управление. В некоторых на загрузку с этого носителя. с OpenBoot можно рассмотреть в со-
62
администрирование
ответствующей литературе. Настрой- ет практически в любом UNIX-подоб- На базе кода Solaris 10 основан
ки BIOS зависят от производителя ма- ном дистрибутиве. Используя эту ко- проект OpenSolaris, целью которого
теринской платы. манду, мы можем просто продублиро- является дальнейшее развитие этой
Далее в статье выражение «инстал- вать носитель, например, копируя жес- операционной системы, в том чис-
ляция ОС» будет использоваться для ткий диск на второй такой же. ле и силами независимых разработ-
обозначения процесса копирования Также подобным способом можно чиков [4]. На официальном сайте до-
файлов, если не указано иное. Промыш- восстанавливать систему из резерв- ступны ссылки для скачивания шес-
ленные способы копирования (штам- ной копии. Загрузка временной ОС мо- ти дистрибутивов на базе OpenSolaris.
повка) в статье рассматриваться не бу- жет происходить из любого источни- Часть из этих проектов поддержива-
дут. Для запуска процессов копирова- ка. Конфигурация новой ОС также мо- ется непосредственно фирмой Sun
ния и управления ими нужна среда вы- жет быть осуществлена как из времен- Microsystems, остальные – другими
полнения. Другими словами – процессы ной системы, так и после загрузки но- разработчиками. Периодичность об-
инсталляции ОС происходят под управ- вой. Восстановление из резервной ко- новлений зависит, конечно, от созда-
лением другой ОС. В дальнейшем бу- пии редко рассматривается как вари- телей дистрибутива.
дем называть такую ОС «временной», ант установки операционной системы. Так же дост упна документация
а инсталлируемую – «новой». Мы тоже не будем на нем останавли- по созданию своей системы на базе
В таком случае процесс инсталля- ваться подробно. Тем более что в офи- OpenSolaris.
ции происходит по следующей схеме: циальной документации по инсталля- Последнюю версию Solaris 10,
1. Настройка firmware на загрузку вре- ции Solaris 10 этот способ не описан. OpenSolaris, можно скачать с офици-
менной ОС. Полностью копируя носитель, мож- альных сайтов [2, 4] или других ис-
2. Загрузка временной ОС. но восстановить различные данные, точников [5] совершенно бесплатно.
3. Выполнение процессов копирова- в том числе файлы ОС, не принципи- При желании диски с системой мож-
ния (инсталляции). ально какой. Не будем заострять вни- но купить.
4. Настройка firmware на загрузку но- мание на различных вариантах резер- Обычно, если четких требований
вой ОС и загрузка новой ОС. вного копирования и восстановления. к версии ОС не существует, ставится
Далее поговорим о вариантах уста- новейший релиз из доступных. Пос-
Пункт 4 состоит из двух действий новки ОС Solaris стандартными инс- ле чего на систему устанавливает-
по причине того, что настройка firmware трументами. ся рекомендованный набор патчей –
может происходить как средствами са- «Recommended Solaris Patch Clusters»,
мой firmware, так и инструментами вре- Планирование установки скачать который можно с сайта [2].
менной ОС. Инсталляцию ОС, как и любую другую До 10 версии в Solaris был предус-
Здесь хотел бы подчеркнуть, что работу, неплохо начинать с планиро- мотрен также набор дополнительных
все сказанное выше относится абсо- вания. Процесс планирования можно патчей для повышения версии систе-
лютно к любым сочетаниям операци- разбить на несколько этапов (подроб- мы – Maintenance Update. Тогда процесс
онных систем, как временной, так и но- но рассмотрены в официальной доку- установки происходил в три этапа:
вой. Например, в качестве временной ментации). 1. Установка базового дистрибутива.
ОС может служить какой-нибудь дис- 2. Установка последнего Maintenance
трибутив Linux, а новой – MS Windows Версии системы Update.
или Solaris. Перепрошивка сотового Последняя версия Solaris на момент 3. Ус т а н о в к а п о с л е д н е й в е р -
телефона, например, может выглядеть написания статьи – 10, а если быть точ- сии Recommended Solaris Patch
как сочетание MS Windows – Symbian. ным – 10 11/06. Наименование версии Clusters.
Способы инсталляции различают- включает в себя месяц и год выпус-
ся по типу загрузки временной ОС, ти- ка обновления, разделенные прямым Процесс можно было автоматизи-
пу источника, способам первоначаль- слешем. По планам обновления сис- ровать. Судя по всему, в версии 10 от-
ной конфигурации. темы должны выпускаться раз в квар- казались от использования этой тех-
Временная ОС может быть загру- тал. По историческим причинам ко- нологии, оставив только Recommended
жена локально, а также может быть манда uname в ОС Solaris выдает на- (начиная с 10 версии MU недоступен,
запущена по сети. Источник файлов звание SunOS. Версии системы счи- но официальные высказывания по это-
для инсталляции также может быть ло- таются после символов «5.». Напри- му поводу не встречались).
кальным (CD, DVD, жесткий диск и т. п.) мер, у Solaris 10 вывод команды будет С точки зрения инсталляции систе-
или доступным по сети (используя раз- следующий: мы в Solaris 10 мало что изменилось,
личные сетевые протоколы). Способы так что большая часть сказанного бу-
первоначальной настройки системы # uname -s -r дет применима к предыдущим верси-
могут быть автоматизированы в раз- SunOS 5.10 ям: Solaris 8 и 9. Различия есть, но они
личной степени. в основном незначительные; некото-
Самый простой способ инсталля- Более подробно информацию рые особенности будут указаны. При-
ции – это побитное копирование всего о версии установленной системы мож- меры в статье будут применимы для
носителя. Очень хорошо для этого под- но посмотреть в файле /etc/release или версии Solaris 10 11/06, если не ука-
ходит команда dd, которая присутству- командой showrev. зано иное.
64
администрирование
не согласиться с этим советом – по-моему, проще сразу под- Также разработчики предоставляют возможноть ус-
готовить файлы с ответами, запустить инсталляцию и ждать тановить систему через сети общего пользования, в том
ее завершения, не отвлекаясь время от времени для отве- числе через Интернет. В таком случае установку можно
та на новый вопрос. произвести только на SPARC-совместимые системы. Ис-
Если инсталляция происходит с CD – все равно при- пользуются протоколы HTTP или HTTPS. Если интересно –
дется уделять свое внимание процессу установки для сме- процесс подробно описан на сайте [1]. Например, в книге
ны дисков. No: 817‑5504‑12 «Solaris 10 Installation Guide: Network-Based
Подробнее с эти видом установки можно ознакомиться Installations».
в книге No: 817-5506-12 «Solaris 10 Installation Guide: Custom
JumpStart and Advanced Installations». На практике чаще всего настраивают инсталл-сер-
вер и системы прогружают по сети, используя техноло-
Solaris Live Upgrade гию JumpStart.
В среде Solaris давно существует два способа установ-
ки программного обеспечения: стандартный метод и Live Выбор набора устанавливаемых программ
Upgrade. Одна из особенностей операционной системы Solaris то,
Стандартный способ – когда установка и обновле- что она состоит из пакетов.
ние происходит с остановкой работы сервисов на рабо- Может показаться, что многие современные системы
чей системе. также состоят из пакетов. Это не так. Действительно, у
Альтернативный вариант – Live Upgrade. В данном слу- большинства дистрибутивов существует возможность ис-
чае слово Upgrade не нужно понимать буквально как «об- пользовать какой-нибудь менеджер пакетов или даже не-
новление». Это всего лишь название способа установки ПО, сколько. Но подобные инструменты обычно используют-
слово не несет привычной смысловой нагрузки. ся для установки дополнительного ПО (которое, впрочем,
В случае использования альтернативной технологии может перекрывать функционал системного). Сама систе-
системное программное обеспечение может быть уста- ма в таком случае ставится как одна монолитная, недели-
новлено на работающей системе, но на неактивную пар- мая большая программа, состоящая, может быть, из мно-
тицию (часть диска) или неактивный DiskSet – «набор дис- жества файлов.
ков» – если используется много дисков. То есть делается Например, после установки FreeBSD команда pkg_info
копия рабочей конфигурации, на копию накатываются пат- не покажет ни одного пакета. В момент инсталляции мы мо-
чи; или же система прогружается полностью «с нуля». По- жем выбрать лишь комбинацию из крупных наборов фай-
том происходит переключение путем перезагрузки на но- лов: исполняемые файлы, документация, исходные тексты
вую партицию (или DiskSet). В случае возникновения проб- и т. п. При установке MS Windows можем наблюдать подоб-
лем возможно переключение на старую, рабочую конфигу- ную ситуацию (точно не будет исходных текстов). В обоих
рацию. Время простоя системы при обновлении подобным случаях программа-установщик распаковывает файлы ОС
способом минимально. из архивов и копирует их на диск. В одном случае исполь-
Более подробно ознакомиться с этим видом уста- зуются CAB-файлы, в другом – TGZ.
новки Solaris 10 можно на сайте [1]. Например, в книге В отличие от них установка всей системы Solaris про-
No: 817‑5505‑12 «Solaris 10 Installation Guide: Solaris Live исходит командой pkgadd. Например, при установке набо-
Upgrade and Upgrade Planning». ра пакетов «Entire Solaris Software Group Plus OEM Support»
Существует еще один (довольно популярный) способ ставится 984 системных пакета в Solaris 10, 1055 пакетов
обновления ПО, похожий на Solaris Live Upgrade, но приме- в Solaris 9.
нимый также к другим системам. Устройства хранения об- Системные пакеты обычно имеют префикс SUNW.Поэ-
новляемой системы должны быть объединены в «зеркало» тому их количество проверить легко:
(RAID-1 и т. п.). В таком случае перед обновлением систе-
мы диски разбиваются на две части: активную часть и ре- $ pkginfo | grep SUNW | wc -l
зервную копию.
Вся работа по обновлению системы происходит над од- Установленное в систему ПО можно посмотреть в фай-
ной «половинкой» зеркала – активной частью. После ус- ле /var/sadm/install/contents. Способ используется чаще,
пешного завершения работ диски опять объединяют в зер- чем стандартный whereis из UNIX. Например, где находит-
кало. Происходит синхронизация дисков с активной части ся файл bash, в какой пакет входит, можно посмотреть ко-
на резервную копию. мандой grep:
В случае неудач в процессе обновления ПО возможна
загрузка с резервной копии. В таком случае синхрониза- # uname -a; echo ; grep '/bash ' /var/sadm/install/contents
ция дисков происходит в обратную сторону. SunOS mncomp 5.10 Generic_118833-33 sun4u sparc SUNW,Sun-Blade-100
66
администрирование
изводить, используя утилиты sys- Kerberos Например, информация об уста-
unconfig(1M) и sysidtool(1M). Файлы с настройками Kerberos хранят- новленных пакетах хранится в файле
ся в папке /etc/krb5/. /var/sadm/install/contents.
Является ли система Файлы журнала о прошедшем про-
частью сети? Сервисы имен цессе инсталляции системы хранятся
Ответ на этот вопрос никаких конк- Solaris может использовать информа- в каталоге /var/sadm/system/logs/ и /var/
ретных изменений в системе не дела- цию о системных настройках из раз- sadm/install/logs/.
ет. Только влияет на последователь- личных источников. Информация об
ность следующих вопросов – раздел использовании всех служб берет- Выводы
«настройки сети». ся в первую очередь из файла /etc/ По каждому виду инсталляции сущест-
nsswitch.conf. Настройки конкретных вует отдельная книга, также встреча-
Настройки сети служб можно посмотреть в соотвест- ются статьи с конкретными примерами.
Для каждого сетевого интерфейса, вующих разделах документации. Вообще процесс установки современ-
в том числе использующего DHCP ных ОС выглядит примерно одинако-
для своей настройки, необходим файл Маршруты по умолчанию во, по крайней мере в простейших слу-
/etc/hostname.hme0, где hme0 – имя ин- Информация о маршрутах по умолча- чаях. Отличия проявляются в тонкос-
терфейса. нию хранится в файле /etc/defaultrouter, тях настройки и используемой терми-
Для протокола IPv6 используются по одной строчке на маршрут. Про- нологии. Как видно, легендарная опе-
файлы вида: /etc/hostname6.hme0. грамма-инсталлятор предлагает ука- рационная система предоставляет ад-
В этих файлах лежат настройки ин- зать только один маршрут. Файл чи- министратору большую свободу в вы-
терфейсов, используемые командой тается только при загрузке системы. боре действий уже в процессе инстал-
ifconfig. Можно ограничиться одним Текущие настройки маршрутизации ляции. Именно гибкостью настройки
файлом для настройки, но обычно до- на работающей системе можно пос- Solaris всегда отличался от других сис-
полнительно используется информа- мотреть командой: тем. Возможно, во многих случаях она
ция из других источников. В основном не пригодится – тогда будут использо-
это файлы /etc/hosts и /etc/netmasks. netstat -rn ваться стандартные варианты настро-
Могут использоваться не только ек. Работать с «динозавром» совсем
файлы, но и другие информационные Управлять настройками маршрути- не страшно.
службы: DNS, LDAP, NIS, NIS+ и т. п. зации можно командой route.
Откуда конкретно берется информа- Осмелюсь напомнить, что для кор- 1. http://docs.sun.com – официальная до-
ция, можно посмотреть в файле /etc/ ректной работы шлюз должен нахо- кументация. У многих почему-то воз-
nsswitch.conf. диться в той же подсети, что и один никают проблемы с использовани-
Подробную информацию по ис- из работающих интерфейсов. ем этого ресурса. Документации мно-
пользуемым файлам можно посмот- Также во время инсталляции сис- го, и она очень хорошо структуриро-
реть в соответствующих разделах до- тема может попытаться определить вана. Вместо стандартного «поиска
кументации. настройки маршрутизации самостоя- по словам» мне, например, удобно ис-
тельно, используя протокол ICMP, если пользовать вкладку «Browse Product
Настройки DHCP конфигурация сети позволяет. Documentation». По крайней мере, ког-
Если сетевой интерфейс использует да знаешь, что ищешь.
протокол DHCP для своей настройки, TimeZone, locales 2. http://sunsolve.sun.com – документация,
то в системе создается файл /etc/dhcp. Информация о временной зоне, гео- патчи, обновления, полезные ссылки.
hme0, где hme0 – имя интерфейса. графическом регионе и другая хра- Для использования некоторых ресур-
нится в файле /etc/TIMEZONE, кото- сов потребуется регистрация или плат-
Имя системы рый является символической ссылкой ный уровень поддержки.
Часто hostname путают с именами ин- на /etc/default/init. 3. http://www.sun.com/bigadmin/home/
терфейсов, хранящимися в файлах index.html – ресурс для системных ад-
/etc/hosts, /etc/hostname*. Интерфейсов Остальные вопросы министраторов и сообщества. На этом
может быть несколько, а имя у систе- Остальные вопросы касаются раз- сайте можно встретить множество по-
мы – одно. В системном руководстве бивки дисков, набора устанавливае- лезных советов или примеров настрой-
(man) говорится, что если сетевых ин- мых пакетов и т. п. Конкретные воп- ки – «How To».
терфейсов несколько, то именем сис- росы и ответы на них зависят от типа 4. http://www.opensolaris.org.
темы служит имя Primary Interface. На инсталляции. 5. http://www.opennet.ru/mp/solaris – раз-
практике дело обстоит несколько ина- Настройки файловой системы хра- дел opennet.ru, посвященный Solaris.
че. Начиная с версии 10, информация нятся в файле /etc/vfstab, синтаксис Где, кроме всего прочего, можно най-
об имени системы хранится в следую- которого походит на подобные файлы ти подборку полезных ссылок на рус-
щих файлах: из других систем. Информацию об уста- ском языке.
n /etc/nodename; новленной системе можно посмотреть 6. http://ru.wikipedia.org.
n /etc/inet/hosts; командой showrev с различными ключа- 7. http://playground.sun.com/1275 – домаш-
n /etc/inet/ipnodes. ми, а также в каталоге /var/sadm. няя страница OpenBoot.
Сергей Косько
68
администрирование
О
дин из вариантов такой реплика- передаётся с помощью данных, запи-
ции можно реализовать с помо- сываемых процессом LGWR. В режи-
щью специальной базы данных ме максимальной производительнос-
Oracle Standby. Её можно применять ти возможна передача изменений как
совместно с обычным резервным ко- LGWR, так и ARCn.
пированием. Режим Standby DB обес- В случае необходимости такая база
печивает опция Data Guard базы дан- может быть в короткий срок активиро-
ных Oracle. Конфигурация Data Guard вана в качестве производственной.
состоит из одной производственной Поскольку БД Logical Standby не яв-
и одной или более резервных баз дан- ляется точной копией основной ба-
ных standby, которые находятся в осо- зы и не поддерживает некоторые ти-
бом режиме, предусматривающем не- пы данных, SQL-команды, имеет тре-
прерывный приём и применение потока бования по обеспечению уникальнос-
изменений от производственной базы. ти строк в таблицах [4], рассмотрим Структура Oracle Data Guard
Изменения передаются по универсаль- реализацию именно Physical Standby
ной сети между разнесёнными геогра- DB. Мне кажется, что использовать БД n Режим базы данных должен быть
фически серверами средствами Oracle Logical Standby лучше не как резерв- ARCHIVELOG.
Net [1]. Упрощённую схему взаимодейс- ную копию, а в качестве базы для от- n Необходимо использовать про-
твия смотрите на рисунке. чётов. Выберем для работы основ- граммное обеспечение Oracle
В зависимости от конкретных тре- ной и резервной баз следующие на- Server версии Enterprize Edition.
бований по времени восстановления стройки: производственная база ра- В тестах будем использовать вер-
и допустимой потери данных при ава- ботает в режиме maximum availability, сию Oracle10.2 EE for Solaris.
рии (recovery time objective, recovery переданные изменения применяются
point objective [2]). Возможны различ- резервной базой в режиме Real-Time Подготовка рабочей
ные сценарии реализации: Apply Redo. Для такого режима рабо- конфигурации
n Physical standby DB – резервная ты инициатором передачи информа- Итак, у нас имеется работающая про-
база данных является точной фи- ции об изменениях выступает как раз изводственная (primary) база данных
зической копией основной, нахо- процесс LGWR. Разница между режи- Oracle, расположенная на сервере
дится в монтированном состоянии мами защиты заключается в том, что в Poltava, и нам необходимо создать ре-
и при этом переносится поток redo- режиме maximum protection транзакция зервную базу standby на сервере Fastiv.
информации. фиксируется только тогда, когда за- Необходимо подготовить конфигура-
n Logical standby DB – резервная ба- пись произведена и в локальные жур- ционные файлы и сделать дополни-
за данных не является точной копи- налы, и удалённо, в случае невозмож- тельные настройки.
ей основной, открыта в режиме чте- ности удалённой записи база данных Пусть имя базы будет «TST», при-
ния–записи и при этом переносит- останавливается, а в режиме maximum своим для производственной primary-
ся поток SQL-команд. performance для продолжения работы базы значение ORACLE_SID=ORCL,
достаточно только локальной записи, для standby – DB ORACLE_SID=ORCL1.
Конфигурация Oracle Data Guard и основная БД продолжает свою рабо- Файлы primary DB находятся в катало-
может находиться в трёх режимах за- ту, даже если связь с резервной базой ге /tstb/ORCL, файлы standby DB – в ка-
щиты: максимальной производитель- отсутствует. талоге /tstb/ORCL1.
ности (maximum performance), мак- Режим maximum availability пред- Для работы БД standby присваи-
симальной доступности (maximum ставляет компромиссный вариант, пе- вать различные значения перемен-
availability) или максимальной защи- реключаясь между двумя режимами ной ORACLE_SID для окружения ос-
ты (maximum protection) [3]. Измене- автоматически. Если связь работа- новной и резервной баз данных необ-
ния передаются копированием журна- ет без ошибок, передача происходит ходимости нет, но это позволяет сде-
лов базы данных, текущих или архив- синхронно, если произошел сбой, ав- лать так, чтобы файлы двух баз не на-
ных. Их запись осуществляется двумя томатически осуществляется переход кладывались друг на друга. Это поз-
процессами LGWR или ARCn. Процесс в менее строгий режим. После устра- воляет перемещать базы между сер-
LGWR ведёт запись активных журна- нения сбоев режим максимальной за- верами, временно или в тестовых це-
лов, дополнительные настройки вы- щиты восстанавливается [5]. лях совмещать их на одном и том же
нуждают его передавать изменения на Что необходимо для создания тес- сервере, имеющем два сетевых адрес-
резервный сервер с помощью так на- товой среды: са (poltava и fastiv).
зываемых standby redo log-файлов. n Два сервера одинаковой архитек- Необходимо выполнить следую-
Процесс ARCn переносит обычные ар- туры, они могут отличаться по коли- щие действия:
хивные журналы, дополнительные на- честву процессоров, памяти, дис- Вк лючим режим force logging
стройки вынуждают его передавать их ков, релизом операционной систе- на производственной системе для при-
ещё и на удалённый сервер. Если вы- мы и т. п. Пусть сервер primary DB нудительной записи в журналы БД ин-
браны режимы максимальных доступ- будет называться Poltava, а сервер формации, даже для так называемых
ности или защиты, поток изменений standby – Fastiv. операций Nologging:
70
администрирование
Переключим основную базу данных в режим maximum Как можно видеть в скрипте, для переключения ролей не-
availability следующей командой: обходимо иметь доступ к каждой из баз данных, участву-
ющих в операции.
SQL>STARTUP MOUNT;
SQL> ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE ↵ Листинг 6. Обмена ролями между базами Poltava и Fastiv
AVAILABILITY;
#!/bin/sh
Базы данных готовы к работе. Теперь обе базы данных #
sqlplus "/ as sysdba" <<EOF
можно запускать. spool switchover.log
REM connect primary
connect sys/manager@poltava as sysdba
Операции с БД во время работы column SWITCHOVER_STATUS format A20 heading ↵
Во время работы необходимо выполнять определённые 'Switchover status|primary'
SELECT SWITCHOVER_STATUS FROM V\$DATABASE;
действия – пуск, остановка, открытие для чтения, регис- column DATABASE_ROLE format A20 heading ↵
трация пропущенных логов, активация резервной базы 'Role before|switchover'
select DATABASE_ROLE from V\$DATABASE;
(failover), обмен статусом (switchover). Рассмотрим эти опе- ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY;
рации: SHUTDOWN IMMEDIATE;
Скрипт stbstart отвечает за старт БД standby в режиме STARTUP MOUNT;
real-time apply. Остановку БД standby обеспечивает скрипт column DATABASE_ROLE format A20 heading ↵
'Role after|switchover'
stbshut (см. листинг 4). select DATABASE_ROLE from V\$DATABASE;
REM connect standby db on redo apply mode
Листинг 4. Пуск и остановка БД Physical Standby connect sys/manager@fastiv as sysdba
column SWITCHOVER_STATUS format A20 heading ↵
#!/bin/sh 'Switchover status|standby'
SELECT SWITCHOVER_STATUS FROM V\$DATABASE;
column DATABASE_ROLE format A20 heading ↵
#
sqlplus "/ as sysdba" << EOF
startup nomount; 'Role before|switchover'
alter database mount standby database ; select DATABASE_ROLE from V\$DATABASE;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING ↵ ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;
CURRENT LOGFILE ALTER DATABASE OPEN;
DISCONNECT FROM SESSION; REM if in read only, do not open - restart
exit REM SHUTDOWN IMMEDIATE;
EOF REM STARTUP;
column DATABASE_ROLE format A20 heading ↵
'Role after|switchover'
#!/bin/sh select DATABASE_ROLE from V\$DATABASE;
exit
EOF
#
sqlplus "/ as sysdba" << EOF
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
SHUTDOWN IMMEDIATE; Failover – cкрипт, активирующий резервную базу в слу-
exit
EOF чае аварии на базе primary. Поскольку резервной базы боль-
ше нет, перед активацией резервной базы её следует пере-
Проверим механизм передачи изменений переключе- вести в режим maximum performance (см. листинг 7).
нием журналов. На primary:
SQL>ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE ↵
PERFORMANCE;
SQL>ALTER SYSTEM SWITCH LOGFILE;
Регистрация пропущенных логов наглядно показана
на standby: в листинге 8.
SQL> SELECT GROUP#,THREAD#,SEQUENCE#,ARCHIVED,STATUS ↵ Листинг 7. Активация резервной базы данных в случае аварии
FROM V$STANDBY_LOG;
#!/bin/sh
Скрипт stbreadonly отвечает за запуск БД standby в ре- #
sqlplus "/ as sysdba" <<EOF
жиме read-only (см. листинг 5). Доставка Redo в этом случае spool failover.log
продолжается, однако изменения будут отложены до выхо- column DATABASE_ROLE format A15 heading ↵
'Role before|switchover'
да из этого режима. select DATABASE_ROLE from V\$DATABASE;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE ↵
FINISH FORCE;
Листинг 5. Запуск БД standby в режиме read-only ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;
ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE ↵
#!/bin/sh PERFORMANCE;
# ALTER DATABASE OPEN;
sqlplus "/ as sysdba" << EOF column DATABASE_ROLE format A15 heading ↵
spool readonly.log 'Role after|switchover'
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; select DATABASE_ROLE from V\$DATABASE;
alter database open read only; exit
exit EOF
EOF
72
bugtraq
Капитан корабля
П
омните, какие красивые доку- имени М.В. Ломоносова, проучив- КПК… Он успевает быть везде, и вре-
ментальные фильмы об уче- шись в аспирантуре и проработав не- мя отступает перед ним.
ных делали в советские вре- сколько лет в системе РАН, зарабо- Но я бы все-таки рискнула снять
мена? После демонстрации такого тав, между прочим, степень канди- об Игоре Боровикове кино в старых
шедевра хотелось немедленно ид- дата физико-математических наук, традициях. И вот вам наброски к это-
ти в науку, делать открытия, ночами Игорь Павлович стал генеральным му «опусу».
просиживая над химическими ретор- директором компании Softline. И все
тами или за письменным столом, вы- говорит о том, что человек на своем Следующая станция –
водя сложнейшую математическую месте, что снимать о нем нужно сов- «Академическая»
теорему… Родись Игорь Боровиков сем другой фильм, в другом стиле… Недавно в воспоминаниях Натальи
в другую эпоху, фильм бы сложили Так делают видеоклипы поп-групп: Кончаловской я прочитала рассказ
и о нем. Потому что наверняка бы он мчится по городу красивая машина, о том, как она переводила на русский
стал ученым с мировым именем, ака- в ней человек не расстается с сото- язык поэму «Мирей» французского
демиком. Но, получив диплом на ле- вым и одновременно что-то набира- поэта: «Пять лет ушло у меня на пере-
гендарном факультете ВМиК МГУ ет на клавиатуре суперсовременного вод Мистраля, из них два полных го-
74
человек номера
да – на переделку первого варианта». Это сейчас понятно, что рынок сущест- чет брать студента с тройками. Боль-
Так вдумчиво и неспешно и работают вует и он достаточно большой… Ес- шое внимание компании обращают
обычно писатели, исследователи, но- ли бы мы, как большинство в то вре- на наличие того или иного сертифика-
белевские лауреаты. мя, начали продавать, перепродавать та производителя. Еще 4-5 лет назад
Сменив профессию ученого на про- компьютеры, то проиграли бы. Сейчас молодой специалист чувствовал себя
фессию, связанную с бизнесом, Игорь почти никого из бизнесменов, которые брошенным, сейчас на него большой
Боровиков немного ностальгирует «гремели» в начале 90-х, не осталось спрос. Есть случаи, когда четверокурс-
по своему академическому прошлому. на рынке. Кто помнит фирму «Микро- ник выбирает между вакансиями с зар-
Это проявляется в том, что Softline рас- дин», которая была крупнейшим пос- платой тысяча и две тысячи долларов.
полагается на улице Губкина, что близ тавщиком всего «железа» в России? Выпускник технического вуза попадает
столичной станции метро «Академи- Оказывается, заниматься понятным под плотную опеку компаний. Если мо-
ческая», в окружении научно-иссле- бизнесом не всегда выгодно, а риск- лодой специалист себя правильно по-
довательских институтов, и в том, нув вложиться в «непонятный», мож- зиционировал, выбрал востребован-
что компания сразу после рождения но получить дивиденды. ную профессию, перспективы у него
занялась программным обеспечением, И все-таки ностальгия по прошло- очень хорошие.
связанным с научными исследования- му есть, не пропадает… Вот и про-
ми (сайт для профессиональных поль- грамма Softline IT Graduate возникла Куда приводят мечты
зователей Matlab (www.matlab.ru) и ма- не просто так. Компания Игоря Борови- Руководить успешной IT-компани-
тематический портал для студентов кова взялась быть посредником меж- ей можно по-разному: тихонечко, шаг
(www.exponenta.ru)). ду студентами и выпускниками техни- за шагом, отстаивая каждый санти-
Но о чем Боровиков точно не жале- ческих специальностей и крупнейши- метр рынка у конкурентов, или наво-
ет – о смене жизненного ритма. И вот ми русскими, зарубежными компания- дя страх на коллег по цеху громкими
почему: ми. Студенты получают место в штате акциями.
– Ученый тратит сто процентов вре- престижной IT-фирмы – вре-
мени на решение одной задачи, дума- менное или даже постоян-
ет об одном. В бизнесе, наоборот, все ное, а компании решают кад- Надо хотеть, надо быть активным человеком.
время тратится на решение ста раз- ровую проблему. Фактически Что-то пытаться делать, не сидеть на месте.
ных задач, и часто возникает необхо- Softline заменяет собой госу- Ходить по улице, открывать новые «двери»,
димость переключаться. дарство, которое давно отка- заглядывать в новые отрасли. Быть внутрен-
– Вам этот ритм по душе? залось от принципа распре-
– Мне этот ритм подходит, пото- деления после окончания ву-
не подвижным человеком, не статичным.
му что я внутренне активный человек, за. Игорь объясняет:
мне нравится подвижность в жизни, – Хотелось бы делать полезные ве- Стратегия Игоря Боровикова тако-
нравится, когда драйв присутствует. щи для страны в целом. Мы хотим, что- ва: «Развиваться и постоянно делать
Кстати, активность Игорь Павло- бы студент, который выходит из вуза, что-то новое. Создать компанию, ко-
вич считает главным качеством, не- обладал не только фундаментальны- торая работает в Москве и просто за-
обходимым руководителю успешной ми знаниями, но имел и практический рабатывает деньги, – это не очень ин-
компании: опыт работы с тем или иным програм- тересно. Если я что-то делаю – стара-
– Надо хотеть, надо быть активным мным обеспечением. юсь делать это лучше всех, занимать
человеком. Что-то пытаться делать, – Компании соглашаются их брать? лидирующие позиции». Характер Бо-
не сидеть на месте. Ходить по улице, – Соглашаются. Заинтересован- ровикова-человека оказался востре-
открывать новые «двери», заглядывать ность есть. бованным у Боровикова-директора.
в новые отрасли. Быть внутренне под- – Что их привлекает? А что это за характер? 50% прагматиз-
вижным человеком, не статичным. – Гораздо лучше взять студента, ма, 50% романтизма, щепотка авантю-
Сама компания возникла потому который хорошо учился, имеет серти- ризма, жгучая приправа – стремление
что Игорь Боровиков достойно отве- фикат Microsoft или другой компании, к успеху, здоровый патриотизм и боль-
тил на вызов времени. но не имеет опыта, чем взять «опытно- шая ложка здравого смысла. Может
– Государство заявило фактичес- го» человека, но без сертификата. быть, рецепт не полон, но так мне ви-
ки: «Мы не очень интересуемся, как бу- – Кто интереснее компаниям – вы- дится… Вас удивляет, почему я счи-
дут существовать научные работни- пускник или студент? таю Игоря Боровикова романтиком?
ки, на какую зарплату». Часть ученых – Студент последнего или предпос- Он сам признается:
пошла торговать на рынок, другая ста- леднего курса. В свободное от учебы – Нельзя быть хорошим прагмати-
ла продавать «железо». Мне, так как я время он уже может работать в ком- ком без доли романтизма. Планы, ко-
до этого занимался абстрактной на- пании, там же молодые люди прохо- торые человек ставит перед собой,
укой, захотелось заниматься програм- дят практику. на первых порах – просто мечты…
мным обеспечением, потому что в этом – На что обращает внимание руко- Куда приводят мечты? В случае
тоже была абстракция. Шел 1993 год, водство крупной компании? с Игорем Боровиковым к солидно-
мало кто верил, что можно прода- – Наиболее объективные показа- му факту – 24 офиса компании в Рос-
вать лицензионное ПО в этой стране. тели – успехи в учебе. Никто не хо- сии и странах ближнего зарубежья,
76
человек номера
тей… И неудивительно, ведь Боро-
виков – отец троих детей. Дочка еще
малышка, ей 4 года, среднему сы-
ну 11 лет, а вот старший уже совсем
взрослый парень – 22 года, закон-
чил институт и занимается консал-
тингом. Вот такое воспитание… Толь-
ко не подумайте, что Боровиков стре-
мился, чтобы старший наследник не-
пременно отправился по его стопам.
Как ему после школы родители не
навязывали свой выбор, отпустили,
что называется, в свободное плава-
ние, так и он своим детям не указы-
вает, как жить:
– Я пытаюсь их научить своему
стилю жизни, который не передает-
ся словами, а впитывается, когда че-
ловек находится рядом. Скорее вос-
питывает общая атмосфера в семье,
чем какие-то конкретные задачи, ко-
торые я ставлю перед детьми. Жиз-
ненный опыт нельзя передать в фор-
ме нравоучений. Невозможно прочи-
тать лекцию и научить ребенка лю- – Умею быстро говорить, – шутит Владимир Мирзоев. Очень нравятся
бить, ненавидеть… Только собствен- в ответ Боровиков. – Читаю с обычной выпускные спектакли, которые про-
ным примером. скоростью. И память обычная. Не хотел ходят в театральных вузах – Щепкин-
Сила примера – классическое по- бы забивать свою память IT-технологи- ском, Щукинском училищах. Советую
нятие, но не устаревшее. И неудиви- ями, версиями Windows, ценами. вам, сходите на выпускные спектакли,
тельно такое признание Игоря Пав- – Тогда у вас наверняка аналити- это интересно. Там вы увидите насто-
ловича: ческие способности. ящий театр. Даже если актер играет
– Если бы была возможность де- – Да, умею просеивать, анализиро- самую незаметную роль, он настоль-
тей учить в провинции, с удовольстви- вать информацию. 90% информации, ко выкладывается! Они меня заража-
ем отправил бы их туда. Обучение тре- которая на нас сваливается, на самом ют этой энергией. А от старого театра
бует сосредоточенности на чем-то од- деле не нужна. Основная задача – вы- пахнет нафталином...
ном, а в Москве это сложно сделать. брать 10%. – У меня еще один, совсем стран-
Вокруг тебя проносятся, как метеори- С интересом я узнала, что самая ный вопрос. У вас есть мечта?
ты, новые идеи, цели. Суета жизни за- сложная аналитика для Игоря Борови- Долгая пауза. Но интервью не пре-
хватывает. кова – это познание самого себя, само- рывается. Игорь Боровиков честен
Конечно, будничным, ежеднев- совершенствование. Как хотите, не по- и на этот раз:
ным воспитанием занимается супруга хож он на бизнесмена. И между тем – – Не хотел бы на него отвечать. Ес-
Игоря, бизнес съедает львиную часть успешный деловой человек… Чудеса. ли кому-то говоришь о своей мечте,
времени. – Что вам помогает совершенство- она перестает ею быть. Человек живет
Зато на отдых Боровиковы тради- ваться? внутренней жизнью. Могу сказать точ-
ционно ездят всей семьей. Зимой – – Человек меняется во время об- но, у меня нет мечты заработать еще
в горы, летом – к морю. Только на от- щения с другими людьми. Я стара- миллион, еще двадцать миллионов.
дыхе Игорь Павлович и успевает чи- юсь общаться с людьми, которые на- Это все равно, что мечтать купить се-
тать, заниматься спортом – сноубор- ходятся в разных социальных груп- бе новые ботинки.
дом, виндсерфингом. пах, на разных уровнях творческого И хотя журналисту хочется полу-
– Что вы читаете? развития. Мне хотелось бы менять ве- чить ответы на все-все свои вопро-
– Авторов, которые не очень извес- щи не только вокруг, но и внутри себя. сы, не могу не согласиться с дирек-
тны широкой публике. Шведа Августа Человек закостеневает, приобретает тором Softline. Капитан корабля дол-
Стриндберга, современного российс- имидж, вырабатывает для себя опре- жен держать мечты в секрете, до по-
кого автора Юрия Мамлеева. Это на- деленные правила игры. Это сложно ры до времени. Ну а когда задуман-
блюдения за жизнью, поведением лю- преодолеть. ное сбудется, появится повод опять
дей, зарисовки. Реальность, возведен- – С какими творческими людьми вы поговорить…
ная до уровня искусства. общаетесь, если не секрет?
– Владеете скорочтением? – пыта- – Хожу в театры. Есть режиссе- Текст: Оксана Родионова,
юсь пошутить я. ры, которые мне нравятся. Например, фото: Владимир Лукин
Библиотека Prototype –
ваш путь в Web 2.0
Кирилл Сухов
78
веб-программирование
WEB 2.0 – маркетинг на марше? конструкции document.getElementById(), но имеет несколь-
Если говорить откровенно, когда в мире веб-разработчи- ко больший функционал. Она может принимать в качестве
ков случился некий «AJAX-бум», я был настроен довольно аргумента как id элемента, так и сам элемент. Аргументов
скептически. В чём, собственно, революция? В возможнос- может быть более одного, и в этом случае функция возвра-
ти направлять запрос к серверу и получать ответ без пере- щает массив элементов.
загрузки страницы? Но это и так уже было. Выучить четы-
ре метода объекта XMLHttpRequest и стать разработчиком allNodes = $("firstDiv", "secondDiv");
for(i = 0; i < allNodes.length; i++) {
WEB 2.0? Звучит несерьёзно. alert(allNodes[i].innerHTML);
Со временем мне пришлось поменять свою точку зре- }
ния. Я понял, что WEB 2.0 – это не только маркетинговый
термин, это новый подход к веб-программированию, поз- Функция $F(id) возвращает значение полей ввода, при-
воляющий рассматривать результат труда не как html-стра- нимая аргументом идентификатор поля. Возможно, эта мис-
ницы, а как полноценные приложения. сия покажется не очень принципиальной, но применение
Впрочем, не будем на этом останавливаться, на эту те- $() и $F() по крайней мере освобождают время для более
му уже сломано немало копий. Я просто хочу рассказать глобальных задач. Кроме того, эта конструкция также мо-
об инструменте, помогающем перейти к WEB 2.0 вполне жет принимать в качестве аргумента не только идентифи-
безболезненно. катор, но и сам DOM-элемент.
Новый подход диктует новые требования, в частности, Следующая функция из этой компании – document.get
язык программирования JavaScript, который многие раз- ElementsByClassName. Вообще использовать имя клас-
работчики считали чем-то вторичным и не заслуживаю- са для получения DOM (HTML) элемента, приём неновый,
щим внимания, вышел на первый план. Библиотеки, об- но требующий некоторых телодвижений, вроде перебора
легчающие работу с ним, начали создаваться со време- всех подобных элементов, поиска нужного класса в слож-
ни его возникновения, но именно сейчас они как никогда ной структуре документа. Теперь мы избавлены от этой
актуальны. нудной работы.
Я хочу рассказать о библиотеке, основное предназна- Ниже представлен пример использования этой функ-
чении которой – обеспечить комфортную жизнь веб-разра- ции:
ботчику, снабдить его новыми возможностями.
<head>
Знакомьтесь – Prototype <script>
document.getElementsByClassName('foo');
Что собой представляет Prototype? Это свободно рас- // -> [HTMLElement, HTMLElement] (div#one, div#two)
document.getElementsByClassName('thud');
пространяемая JavaScript-библиотека, значительно об- // -> [HTMLElement, HTMLElement, HTMLElement] ↵
легчающая жизнь разработчика. Она написана Сэмом (div#two, li#item_one, li#item_two);
document.getElementsByClassName('thud', $('list'));
Стефенсоном (Sam Stephenson) и доступна по адресу // -> [HTMLElement, HTMLElement] (li#item_one, ↵
http://prototype.conio.net. Последняя версия (на момент на- li#item_two)
</script>
писания статьи) пронумерована как 1.5.1. </head>
Сама библиотека занимает всего 72 Кб и распространя- <body>
<div id="one" class="foo">Single class name</div>
ется по свободной лицензии (MIT-style license). <div id="two" class="foo bar thud">Multiple ↵
Её установка не вызывает проблем, просто поместите class names</div>
<ul id="list">
на вашу страничку тег: <li id="item_one" class="thud">List item 1</li>
<li>List item 2</li>
<li id="item_two" class="thud">List item 3</li>
<script src=prototype.js></script> </ul>
</body>
и вся мощь библиотеки к вашим услугам.
Что мы получим в результате? Совсем не набор ком- Функция $A() представляет собой удобный конструктор
понентов или каких-либо «виджетов», а коллекцию объ- массивов, преобразуя к этому типу данных любую коллек-
ектов и их методов, из которых можно конструировать цию объектов, принимаемую в качестве аргумента.
свои библиотеки и расширения. Prototype – это библиоте- Функция $W() выполняет вполне банальную, но час-
ка для построения собственных библиотек, именно поэто- то встречающуюся задачу – приведение строки к масси-
му она используется, например, в Ruby On Rails, Rico и дру- ву. Тут всё просто:
гих framework-средах.
w('apples bananas kiwis')
// возвращает массив ['apples', 'bananas', 'kiwis']
Приятные мелочи
С них обычно начинают описание библиотеки. Пусть они Функция $H() предназначена для работы с хэш-масси-
принципиально не важны, но очень удобны. Должен заме- вами. Она возвращает объект класса Hash и предоставля-
тить, что к этому удобству, как и вообще ко всему хороше- ет методы для работы с ним.
му, быстро привыкаешь. Прежде всего это Hash.merge() – добавляющий новые
Прежде всего это упрощение синтаксиса обращения ключ/значение, each() – перебирающий все ключи/значе-
к DOM-элементам и их свойствам посредством функций ния массива, а также методы toJSON и toQueryString, на-
$() и $F(). Первая из них является заменой привычной значения которых вполне ясно по названиям.
80
веб-программирование
роне сервера. Это escapeHTML()/unescapeHTML(), отвеча- name: 'Podcasting Hacks',
first: 'Jack',
ющие за экранирование и восстановление HTML-разметки, last: 'Herrington',
и stripTags(), просто убирающим любые HTML- и XML-теги. publisher: 'O\'Reilly'
}
];
Обработка форм
Для облегчения этой часто встречающейся задачи в биб- Для работы с этим форматом Prototype даёт нам не толь-
лиотеке предусмотрен объект Form с рядом полезных ме- ко функции приведения к данной нотации хэш-массива (объ-
тодов: ект Hash) или получение/передачу в JSON обычной стро-
Form.getElements(form) возвращает массив значений ки (объект String). В библиотеке присутствует очень полез-
элементов формы вне зависимости от их типа: ная функция evalJSON (разумеется, объекта String), об-
легчающая работу с ответом сервера, сгенерированным
llNodes = Form.getElements("myform"); в этой нотации.
for(i = 0; i < allNodes.length; i++) {
//операции над каждым элементом Пример:
}
var person = '{ "name": "Violet", "occupation": ↵
"character" }'.evalJSON();
getInputs(form [, typeName [, name]]) возвращает массив person.name;
значений элементов Input, причём с помощью необязатель-
person = 'grabUserPassword()'.evalJSON(true);
ных элементов можно уточнить тип и имя элемента.
Функционал методов findFirstElement(form), focusFirst- person = '/*-secure-\n{"name": "Violet", "occupation": ↵
"character"}\n*/'.evalJSON()
Element(form), а также disable(form) и reset(form) вполне ясен person.name;
из их названий.
Замечательный метод Form.serialize() помогает переда- Соответственно существует и обратное преобразова-
вать данные на сервер, возвращая элементы формы в ви- ние. Это метод unfilterJSON. Пример его работы:
де строки, параметров HTTP-запроса:
'/*-secure-\n{"name": "Violet", "occupation": ↵
"character", "age": 25}\n*/'.unfilterJSON()
'field1=value1&field2=value2&field3=value3' // получаем на выходе:
// '{"name": "Violet", "occupation": "character", "age": 25}'
что очень удобно как при отправке сложных форм, так и
для работы с AJAX. С помощью расширения стандартного класса Object
Расширения класса Form, такие как класс Form.Element, можно легко автоматизировать приведение к данной но-
Form.Observer, предоставляют дополнительные возможнос- тации:
ти для работы, но о них особый разговор.
var Person = Class.create();
Person.prototype = {
Работа с JSON initialize: function(name, age) {
JSON (JavaScript Object Notation), формат, который в насто- this.name = name;
this.age = age;
ящее время стал одним из стандартов обмена информаци- },
ей между объектами javascript и в осо-
бенности в клиент-серверном взаи-
модействии. В некоторых случаях он
удобней XML и гораздо экономичней,
а следовательно – быстрее в работе.
В этом формате данные определя-
ются коллекцией пар ключ/значение,
которые можно представить, как хэш
или ассоциативный массив.
Ниже приведён пример представ-
ления данных в нотации JSON. По-мо-
ему, довольно удобно и читаемо:
var g_books = [
{
id: 1,
name: 'Code Generation in Action',
first: 'Jack',
last: 'Herrington',
publisher: 'Manning'
}, {
id: 2,
name: 'PHP Hacks',
first: 'Jack',
last: 'Herrington',
publisher: 'O\'Reilly'
}, { Рисунок 2. Компонент Rico.Color. Цвет бара меняется в зависимости от введённых
id: 3, цифр
82
веб-программирование
ше. В вызове его конструктора ис-
пользуется аргумент container, явля-
ющийся идентификатором, или са-
мим DOM-элементом, принимающим
текст ответа на запрос. Кроме того,
такие его методы, как start(), stop(),
updateComplete(), и другие позволя-
ют контролировать выполнение пери-
одических задач в процессе исполне-
ния запроса.
Для «низкоуровневой» работы
с XMLHttpRequest в базовом классе
Ajax предусмотрен метод getTransport(),
который просто возвращает объект
XMLHttpRequest. Разумеется, учиты-
вая особенности используемого бра-
узера.
Позиционирование
Размещать или перемещать в неко-
тором заданном пространстве DOM Рисунок 4. Окошки, созданные с помощью библиотеки Prototype window
(в частности HTML) элементы, уже дав-
но вполне решаемая задача. Проблемы, правда, присутс- Effect.Pulsate(), заставляющих видимый объект вибриро-
твуют – это опять пресловутое различие между браузе- вать, или Effect.Puff(), представляющий собой красивый
рами и дикое количество кода (зачастую немотивирован- способ растворить объект в воздухе. Полезна также функ-
но повторяющегося), используемого в целях реализации ция Parallel(), позволяющая одновременную работу несколь-
сложного позиционирования. Для решения этих проблем ких визуальных эффектов. Жалко, что страница журнала
библиотека предлагает объект Position. Его методы позво- не поддерживает DOM-модель и не даёт возможности про-
ляют определить смещение любого DOM-элемента с учё- иллюстрировать вышесказанное, поэтому рекомендую по-
том прокрутки и смещения родительских элементов. С по- сетить сайт этого проекта.
зиционированием тесно связан класс Insertion, управляю- Можно упомянуть ещё небольшую библиотеку Prototype
щий вставкой текста или DOM-элемента, в HTML-страни- window. Это дополнительный класс, позволяющий созда-
цу. Названия его методов – After(), Before(), Bottom(), Top() вать симпатичные окошки, которые вы видите на рис. 4
уже говорят об их назначении. и некоторые другие объекты (модальные диалоги, дина-
мические визуальные эффекты). При разработке прило-
Библиотеки на основе Prototype жения для получения подобных окон нужно написать все-
Как уже говорилось, Prototype – это скорее не продукт го две-три строки кода:
для конечного пользователя, а framework для построе-
ния JavaScript-библиотек. Перечислю лишь некоторые var win = new Window({className: "spread", title: ↵
"Ruby on Rails", top:70, left:100, width:300, ↵
из них. Библиотека Rico (http://openrico.org) предназначе- height:200, url: "http://www.rubyonrails.org/", ↵
на для построения сложных визуальных и анимационных showEffectOptions: {duration:1.5}}) win.show();
эффектов. На демо-странице проекта можно познакомить-
ся и «поиграться» с её основными объектами. На рис. 1 Наконец, Prototype используют такие мощные framework,
показан компонент Rico.Accordion. Каждая горизонталь- как Ruby On The Rails и Symfony (популярный web application
ная панель раскрывает или закрывает свою вкладку с не- framework, для PHP5 http://www.symfony-project.com).
зависимым содержимым. Фактически он помещает на-
бор DOM-элементов в заданную разработчиками область Что дальше?
с возможностью независимого доступа. На рис. 2 – ком- Честно говоря, описав возможности библиотеки (или
понент Rico.Color. Его работа, мне кажется, в пояснени- framework) Prototype, я совсем «забыл» сказать о самом
ях не нуждается. главном – возможности создания собственных полноцен-
Библиотека script.aculo.us (http://script.aculo.us) также ре- ных объектов и гибкого управления ими. Об этом – в сле-
ализует многочисленные визуальные эффекты. Это пере- дующий раз.
таскивание (drag-and-drop) объектов по странице, динами-
ческая сортировка, автозаполнение форм и т. д. Сайт биб- В статье была использована документация библиотеки Prototype
лиотеки (см. рис. 3) – прекрасный образец её возможностей. (http://www.prototypejs.org/api), а также неофициальное ру-
В её составе три основных объекта: Sortable, обеспечива- ководство разработчика, составленное Sergio Pereira (http://
ющий динамическое перемещение объектов, Controls, ре- www.sergiopereira.com/articles/prototype.js.html) и доступное теперь
ализующий интерактивные элементы управления и Effect – на русском языке в переводе, выполненным Виктором Кроллом
набор самых различных визуальных эффектов, таких как (http://kropp.spb.ru/docs/prototype).
Джим Тейлор
Дмитрий Мороз
Уже полвека корпорация IBM считается лидером по производству мейнфреймов
и суперкомпьютеров. За компанией Apple прочно укрепился статус де-факто поставщика
техники для вёрстки и дизайна. Подобный список можно продолжить. Что же касается систем
автоматизированного проектирования, здесь на протяжении нескольких десятилетий лидирует
компания Intergraph, истории которой и посвящена эта статья.
84
ретроспектива
Пионеры своего дела казу правительства для проектирова- ного планирования. Они же пригоди-
В 1969 году Джеймс Мидлок (James ния печатных плат в 1970 году. лись и для архитектурного проекти-
Meadlock) покинул пост инженера Состоял он из обычных комплекту- рования, только начинавшего наби-
в корпорации IBM и основал собствен- ющих, доступных на тот момент, элек- рать обороты.
ную компанию, M&S Computing, вложив тронно-лучевой трубки, исполнявшей В то время как большинство пос-
в неё 39 тысяч долларов из собствен- роль дисплея, клавиатуры, а также тавщиков САПР ориентировали свои
ных сбережений. специального планшета, предостав- продукты лишь на авиакосмическую
Он решил остаться в Хантсвил- лявшего оператору ряд команд для промышленность и автомобилестро-
ле (штат Алабама) не только из-за то- рисования. ение, компания Мидлока в роли пер-
го, что сам был родом с юга, но глав- Позднее инженерами компании вопроходца осваивала новые рынки,
ным образом из‑за располагавшего- была разработана специальная плата, что позволило ей в будущем прочно
ся здесь центра управления полётами ускорявшая прорисовку изображения закрепиться на них до прихода кон-
NASA, в котором Мидлок ранее раз- на терминале в три раза. курентов.
рабатывал программное обеспечение В 1972 году в строй вступила интер- Кроме системы планирования,
для навигации ракетоносителей Са- активная графическая система, соз- M&S Computing первой представила
турн (Saturn), запускавших космичес- данная для нужд командования про- дополнение к IGDS, предназначенное
кие аппараты Аполлон (Apollo) к Лу- тиворакетной обороны США. для проектирования трубопроводов.
не. Основатель M&S Computing считал, В отличие от других компаний, про- Что касается аппаратных разрабо-
что в таком месте программисты будут изводивших компьютеры для собс- ток, компания выпустила в 1978 году
очень востребованны. твенных нужд, Мидлок со товарищи многомониторный графический тер-
Кроме самого Мидлока, его ново- использовали серийно производи- минал, состоявший из двух размещён-
испечённая компания состояла из че- мые мейнфреймы PDP производства ных рядом дисплеев.
тырёх инженеров-программистов, Digital Equipment Corporation (DEC), Кроме того, благодаря исполь-
а также секретаря. экономя, таким образом, средства зованию процессора LSI‑11/2 от DEC
В течение первых нескольких лет и время. M&S Computing первой в отрасли ре-
своего существования M&S Computing Спустя ещё два года компания вы- ализовала локальную вычислитель-
занималась консультированием пра- полнила заказ на производство сис- ную сеть.
вительственных организаций относи- темы планирования для города Нэш-
тельно использования цифровых тех- виль (штат Теннесси). Работала она Выход в лидеры
нологий, а также создавала програм- под управлением ПО IGDS (Interactive Поскольку деятельность компании
мное обеспечение для ракетной на- Graphics Design Software – програм- M&S Computing была так или иначе
вигации. мное обеспечение для интерактивно- связана с графическими технологи-
Кроме того, она приступила к раз- го графического дизайна), первой ком- ями, в 1980 году руководство приня-
работке интерфейсов пользователя, мерчески доступной интерактивной ло решение об изменении её назва-
а также систем интерактивной ком- системой автоматического проекти- ния. Отныне компания была известна
пьютерной графики. рования (САПР). как Intergraph (от Interactive Graphics –
Приблизительно до 1968 года спо- Благодаря IGDS оператор мог интерактивная графика).
соб общения инженеров и учёных с лёгкостью получить необходимую ин- Обзаведясь новым названием,
с компьютерами был невероятно не- формацию о любой интересующей его компания была готова к конкурентной
удобен: им приходилось превращать части города, просто указав на тот или борьбе. А соревноваться было с кем
всю графическую информацию в пер- иной блок на карте. и за что. Мидлок считал своим глав-
фораторные карты, ждать, пока будет Система для Нэшвиля сыграла ным конкурентом бывшее место ра-
обработана группа данных, умещаю- с компанией злую шутку. «Согласно боты – IBM. По количеству продавае-
щихся на одной карте, а затем сни- подписанному с городскими властями мого оборудования для САПР «Голу-
мать результаты с отдельных автоном- контракту мы обязались предоставить бой гигант» опережал Intergraph в не-
ных плоттеров. Как следствие, выпол- им готовый проект за 32 тысячи дол- сколько раз. К счастью для компании,
нение приложений в режиме реально- ларов», – вспоминает Мидлок. «Одна- ей удалось заключить несколько очень
го времени всегда влекло за собой ко в результате система обошлась нам крупных контрактов, например, с Xerox
возникновение задержки, уходившей в 200 тысяч долларов. Ситуация была Corporation и Porshe.
на операции с перфокартами и печа- очень плачевна, поскольку из-за этого Ещё одна проблема, с которой при-
тающими устройствами. Система, ис- финансового просчёта компания чуть шлось бороться Intergraph, – трудно-
пользующая интерактивную компью- не прекратила своё существование. сти стремительного роста. Поскольку
терную графику, наделяла пользова- Но я верю, что подобный случай укре- количество новых сотрудников неук-
теля графическим устройством отоб- пил мнение о нас как о компании, лю- лонно росло, компании пришлось пе-
ражения, которое фиксировало в ре- быми средствами выполняющей свои ресмотреть собственную программу
жиме реального времени все резуль- обязательства». обучения новичков для увеличения её
таты расчётов. К концу 1960-х M&S Computing вы- эффективности.
Первый графический терминал шла на рынок нефте- и газодобычи, на- Воспользовавшись моментом,
был разработан M&S Computing по за- чав предоставлять системы трёхмер- Intergraph также организовала но-
86
ретроспектива
соперников, сосредоточивавших свои ций), которую поддержало сразу не- ный линейный буфер, использовав-
усилия лишь на определённой катего- сколько производителей процессоров: шийся для быстрой пересылки дан-
рии пользователей, Intergraph не огра- Sun (SPARC), MIPS Technologies (MIPS), ных в кэше, а также транслирующий
ничивалась одними лишь узкоспециа- Motorola (88000) и Intel (i960). Даже са- буфер, хранивший до 128 часто ис-
лизированными решениями. ма DEC вела разработки новых микро- пользующихся трансляций виртуаль-
Компании удалось избежать этого, процессоров на основе архитектуры ных адресов.
используя готовые технологии и про- RISC с 1982 года, итогом которых стал В поисках процессора для своих
двигая их на новые рынки. Таким об- выпуск десятилетие спустя процессо- рабочих станций Intergraph останови-
разом, Intergraph «диктовала моду» са- ра Alpha. До этого она, кстати, успела лась как раз на чипе Clipper.
мостоятельно, тогда как большинство выпустить ряд рабочих станций на ба-
её конкурентов попросту шло на по- зе процессора MIPS, работавших под Сам себе режиссёр
воду у своих клиентов, ограничиваясь ОС Ultrix (1989 год). Первоначально Fairchild Semiconductor
тем, что имеет. Ещё одной компанией, разра- планировала начать поставки процес-
1986 год ознаменовался для ком- батывавшей RISC-процессор, была сора в 1985 году, однако трудности
пании ещё одним приобретением. На Fairchild Semiconductor, «перу» кото- с производством передвинули этот
этот раз в её руки попала Optronics – рой принадлежит выпуск первых ин- срок на два года вперёд.
разработчик периферии, а также обо- тегральных микросхем. Intergraph, на деявшейся полу-
рудования для сканирования. Получивший название Clipper, дан- чить крупные партии чипов хотя бы
Финансовые показатели были ный чип обладал некоторыми особен- в 1986 году, пришлось выпустить её
как всегда велики: за неполный год ностями, выгодно отличавшими его новую рабочую станцию класса High-
доходы Intergraph возросли на 33%. от других процессоров. Его архитек- End, InterPro 32C лишь «на бумаге»,
Количество сотрудников в середине тура имела упрощённую систему ко- поскольку для массового производс-
года достигло 5289 человек, тогда как манд по сравнению с CISC (Complex тва компании остро не хватало про-
в 1984 году работало 3483 человека. Instruction Set Computer – компью- цессоров.
Intergraph ещё раз реорганизова- тер со сложным набором инструк- Тем не менее новый компьютер пер-
ла собственный отдел продаж, раз- ций), однако включала в себя больше вым на рынке обеспечивал произво-
делив его на несколько частей, от- сложных инструкций, нежели в других дительность 5 MIPS (Million Instructions
вечавших за картографию и энерге- RISC‑процессорах. per Second – миллионов инструкций
тические исследования, САПР, про- Эти команды были реализованы за секунду).
изводство электроники и электрон- в специальном ПЗУ под названием Во время разработки компьюте-
ную вёрстку. Macro Instruction ROM, который рас- ра инженеры Intergraph воспользова-
Некоторые биржевые брокеры ожи- полагался внутри процессора. Бла- лись «философией расширяемости»
дали от компании большего, чем прос- годаря этому Clipper имел несколь- набиравшей популярность архитекту-
то обновления отдела продаж. По их ко большую плотность кода по срав- ры IBM РС.
мнению, Intergraph необходима бы- нению с другими чипами на основе InterPro 32C включала в себя три
ла корпоративная реструктуризация. RISC‑архитектуры. независимые подсистемы: процессор/
Критика в основном касалась Мидло- Строго говоря, Clipper не являл- память, графика и сетевая подсисте-
ка, вернее, его единоличного управле- ся микропроцессором в прямом по- ма. Пользователь мог самостоятель-
ния компанией. нимании этого слова. Это был чипсет, но улучшать компоненты своей рабо-
Для компании с годовым доходом в состав которого входило три мик- чей станции без необходимости покуп-
около 500 млн. долларов, по их мне- росхемы. ки новой системы.
нию, необходим был новый уровень Одна из них (называемая CPU‑FPU) К апрелю 1987 года стало яс-
управления, включавший в себя со- содержала микропроцессорное ядро, но, что Fairchild не может предоста-
вет директоров, а также внештатных а также сопроцессор для обработ- вить требуемое количество процессо-
консультантов. ки чисел с плавающей запятой, а две ров для рабочей станции. В результа-
Что же касается аппаратных раз- другие (CAMMU) – кэш-память, а так- те Intergraph потеряла 25 млн. долла-
работок, здесь придраться к компании же устройство управления памятью ров, а также лишилась статуса компа-
было невозможно, ибо 1986 год озна- (MMU – Memory Management Unit). нии с «непрерывно увеличивающим-
меновался появлением… Первая микросхема CAMMU отве- ся доходом».
чала за инструкции, тогда как вторая – Следующие два года компания пос-
А вместо сердца – за данные. вятила «покупкам».
пламенный мотор Чип CPU-FPU содержал тридцать В июне 1987 года Intergraph объ-
В 19 8 6 г о д у а р х и т е к т у р ы VA X два 32-разрядных регистра для цело- явила о намерении инвестировать
и M i c r oVA X , и с п о л ь з о в а в ш и е с я численных чисел, восемь 64-разряд- в Fairchild 50 млн. долларов, тем са-
Intergraph в своих системах, были ных регистров для чисел с плавающей мым обзаведясь правами на треть
уже морально устаревшими. Балом запятой, а также счётчик команд. компании.
правила архитектура RISC (Reduced Каждая из микросхем CAMMU не- Однако в октябре ситуация сло-
Instruction Set Computer – компью- сла «на борту» 4 Кб двусторонней жилась несколько иначе: Intergraph
тер с сокращённым набором инструк- ассоциативной кэш-памяти, 16-бит- попросту выкупила всю интеллекту-
88
ретроспектива
кольку знают, во сколько им обойдёт-
ся поддержка большего их количест-
ва. Мы в этом уже убедились».
Ещё один уникальный для ком-
пании аспект заключался в том, что,
в то время как рынок закрытых ком-
плексных систем фактически был
уже «мёртв», подобная продукция
от Intergraph продолжала продавать-
ся на удивление резво.
Подтверждению этого факта слу-
жит заключенный в апреле 1991 года
контракт с Агентством военной кар-
тографии (Defense Mapping Agency)
на сумму 362 млн. долларов. Компания
обязалась создать систему для пла-
нирования военных действий во вре-
мя операции «Буря в пустыне» (Desert
Storm).
В 1991 году в недрах APD стар-
товала работа по разработке ново-
го процессора Clipper C400 (его пред-
шественник, C300, был выпущен
в 1989 году).
Проект завода по переработке газа, построенный благодаря аппаратно-программным
Для достижения нового уровня про- средствам Intergraph
изводительности в С400 были объеди-
нены две технологии: первая (супер- и поддержке, в конечном итоге станут Тандем SPARC-Windows NT – вот
скалярная обработка) позволяла ядру «бутылочным горлышком» для даль- новая цель Intergraph, которая, одна-
выполнять несколько инструкций од- нейшего развития компании. ко, просуществовала недолго.
новременно, а вторая (суперконвейер- В результате в 1992 году Intergraph Вышедшая внезапно на сцену кор-
ная обработка) – обеспечивала высо- объявила о подписании соглашения порация Intel предложила Intergraph
кое быстродействие путём увеличения с Microsoft, согласно которому послед- сделку, от которой последняя не смог-
частоты работы чипа. няя перенесёт свою новую операцион- ла отказаться.
RISC-процессоры второго поколе- ную систему Windows NT, ориентиро- Согласно подписанному соглаше-
ния использовали одну из этих техно- ванную на рабочие станции и серве- нию, разработчик процессоров ли-
логий, однако на момент своего вы- ра, на платформу Clipper. цензировал патентную базу Intergraph
хода только С400 использовал сра- Год спустя, в июле 1993 года, по С5, а взамен предоставлял ей свои
зу обе. Intergraph объявила о концентрации процессоры раньше начала их офици-
Ещё одно отличие С400 от своих на стратегии «стандартной платфор- альных поставок, да к тому же по це-
предшественников – использование мы», намерении прекратить разработ- нам ниже рыночных.
в составе чипсета четырёх микросхем: ку собственных процессоров, и пере- Отныне компания вплоть до пре-
микропроцессорного ядра, сопроцес- ходе на чипы SPARC. кращения выпуска собственных рабо-
сора, MMU, а также кэш-памяти. Выбор на эту архитектуру пал не чих станций в 1999 году первой на рын-
Ирония судьбы – С400, являвший- спроста. Ещё после покупки Daisy/ ке представляла системы с чипами
ся наиболее совершенным RISC-про- Cadnetix Intergraph пришлось продол- Pentium, Pentium Pro, Pentium II и III,
цессором, оказался не только послед- жить поддержку рабочих станций Sun, а также их Xeon-вариантами.
ним чипом семейства Clipper, разра- для которых Dazix разрабатывала своё Что же касается не нужного бо-
ботанным компанией, но и наименее программное обеспечение. К тому же, лее процессорного подразделения
«живучим». «Пламенный мотор» отра- в начале 90-х именно Sun являлась Advanced Processor Division, оно вмес-
ботал своё уже через год после выхо- «номером один» в мире на рынке ра- те со своими 70 сотрудниками переко-
да в свет. бочих станций, что также сыграло не- чевало в руки Sun.
маловажную роль. Новая стратегия больно ударила
Ветер перемен Новейший процессор С5, разра- по финансовому состоянию компании.
Несмотря на успехи компании по про- батываемый APD в то время, канул Всего за 1993 год компания потеряла
даже комплексных систем, Мидлок в Лету. почти 165 млн. долларов, а за 1994‑й –
прекрасно осознавал, что в перспек- Отныне приоритетной задачей 72,6 млн. долларов.
тиве собственная аппаратно-програм- подразделения являлась помощь Sun Положительный момент заключал-
мная архитектура, необходимость в разработке следующего поколения ся в том, что рынок рабочих станций
в её постоянном усовершенствовании 64-разрядных чипов. на базе архитектуры х86 рос с неве-
90
книжная полка
92
книжная полка
Редакционная подписка
для физических лиц
n Вы можете оформить подписку n Вы можете оформить подписку n Журнал высылается почтой прос-
на любой российский адрес. с любого месяца на любой срок. той бандеролью только после пос-
n При заполнении квитанции обя‑ n В графе «Сумма» проставьте сумму тупления денег на расчетный счет
зательно РАЗБОРЧИВО укажи‑ за выбранное количество номеров. и копии заполненного и оплачен‑
те фамилию, имя, отчество пол‑ Стоимость одного номера журна- ного бланка, отправленной в ре‑
ностью, почтовый индекс и ад‑ ла 150 руб. За 10 месяцев (с марта дакцию по факсу: (495) 628‑82‑53
рес получателя (область, город, по декабрь) – 1500 руб. НДС и поч- или на элек тронный а д рес:
улица, номер дома, номер квар‑ товые расходы включены в стои- info@samag.ru.
тиры), контактный телефон. мость.
94
подписка на 2007 год
Российская Федерация печати «Гасид» (370102, г. Баку, ул. Джавадхана, 21)
n
Подписной индекс: годовой – 20780, полугодовой – 81655 n
Казахстан – по каталогу «Российская Пресса» через
Каталог агентства «Роспечать» ОАО «Казпочта» и ЗАО «Евразия пресс»
n Подписной индекс: 87836 n
Беларусь – по каталогу изданий стран СНГ через РГО
Объединенный каталог «Пресса России» «Белпочта» (220050, г. Минск, пр-т Ф. Скорины, 10)
Адресный каталог «Подписка за рабочим столом» n
Узбекистан – по каталогу «Davriy nashrlar» российс-
Адресный каталог «Библиотечный каталог» кие издания через агентство по распространению пе-
n Альтернативные подписные агентства: чати «Davriy nashrlar» (7000029, г. Ташкент, пл. Муста-
Агентство «Интер-Почта» (495) 500-00-60, курьерская киллик, 5/3, офис 33)
доставка по Москве n Армения – по списку номенклатуры «АРЗИ» через
Агентство «Вся Пресса» (495) 787-34-47 ГЗАО «Армпечать» (375005, г. Ереван, пл. Сасунци Да-
Агентство «Курьер-Прессервис» вида, д. 2) и ЗАО «Контакт-Мамул» (375002, г. Ереван,
Агентство «ООО Урал-Пресс» (343) 375-62-74 ул. Сарьяна, 22)
ЛинуксЦентр www.linuxcenter.ru n Грузия – по списку номенклатуры «АРЗИ» через АО
n Подписка On-line «Сакпресса» ( 380019, г. Тбилиси, ул. Хошараульская, 29)
http://www.arzi.ru и АО «Мацне» (380060, г. Тбилиси, пр-т Гамсахурдия, 42)
http://www.gazety.ru n Молдавия – по каталогу через ГП «Пошта Молдовей»
http://www.presscafe.ru (МД-2012, г. Кишинев, бул. Штефан чел Маре, 134)
по списку через ГУП «Почта Приднестровья» (МD-3300,
СНГ г. Тирасполь, ул. Ленина, 17)
В странах СНГ подписка принимается в почтовых отделе- по прайс-листу через ООО Агентство «Editil Periodice»
ниях по национальным каталогам или по списку номенк- (МД-2012, г. Кишинев, бул. Штефан чел Маре, 134)
латуры «АРЗИ»: n Подписка для Украины:
n Азербайджан – по объединенному каталогу россий- Киевский главпочтамт
ских изданий через предприятие по распространению Подписное агентство «KSS», тел./факс (044)464-0220
Подписные
индексы:
20780*
81655**
по каталогу
агентства
«Роспечать»
87836
по каталогу
агентства
«Пресса
России»
*
годовой
**
полугодовой
номере:
РУКОВОДИТЕЛЬ ПРОЕКТА
Петр Положевец
РЕДАКЦИЯ
Исполнительный директор
Владимир Положевец
Ответственный секретарь Gmail как внешний фильтр можные задачи. Решить задачу помо-
Наталья Хвостова для корпоративной почты жет инструмент System Control Panel
sekretar@samag.ru Уже многие оценили качество филь- (SysCP), о котором пойдет речь в сле-
Технический редактор трации спама и вирусов такого серви- дующем номере журнала.
Владимир Лукин са, как Gmail. Он позволяет размещать
Главный редактор почтовую службу для целого домена на Axigen Mail Server:
электронного приложения своих серверах, после чего почта ста- почтовый сервер
«Open Source»
Дмитрий Шурупов
новится доступна как через web, так и для малого офиса
по протоколу pop3. Такая комбинация Сегодня почтовый сервер на базе
Внештатные редакторы
Алексей Барабанов возможностей и дает нам способ ис- UNIX-подобной ОС ассоциируется
Иван Максимов пользовать Gmail как внешний фильтр с непонятной новичку комбинацией
Дмитрий Горяинов для почты. Подробности – в августов- вроде Postfix + Doveco + Squirrelmail +
Кирилл Сухов ском выпуске журнала. Clam AV + S pam As s as sin + Б Д +
PostfixAdmin. Далеко не каждый ре-
РЕКЛАМНАЯ СЛУЖБА mod_python и mod_perl шится строить такую систему. Румын-
тел./факс: (495) 628-8253 Модули сервера Apache mod_python ская компания GeCAD Technologies
Евгения Тарабрина и mod_perl позволяют встроить ин- LTD, предлагает свое решение вопро-
reсlama@samag.ru терпретаторы языков Python и Perl са – быстрый, защищенный почтовый
непосредственно в сервер и значи- сервер AXIGEN Mail Server с открытой
Верстка и оформление
тельно увеличить производительность архитектурой. О нём мы расскажем
maker_up@samag.ru
Дизайн обложки веб-приложений. Perl – старый и хо- в августовском номере «Системного
Дмитрий Репин рошо зарекомендовавший себя иг- администратора».
Николай Петрочук рок на этом рынке. Но в последние го-
ды Python занял уверенные позиции Создание COM‑компонентов
По вопросам распространения в области веб-разработок и привле- с помощью VBScript
обращайтесь по телефону: кает всё большее внимание. Читайте Вы создаете много скриптов, и вам на-
(495) 628-8253 (доб. 120) в следующем номере обзор возмож- доело переносить код из одного файла
ностей этих средств. в другой? Есть отличное решение – со-
107045, г. Москва, здайте COM-объекты на основе своих
Ананьевский переулок, дом 4/2, стр. 1
тел./факс: (495) 628-8253
Панель управления скриптов. В следующем номере жур-
Сайт журнала: www.samag.ru
хостингом SysCP нала в качестве примера создадим
Как упростить управление хостингом? COM‑объект Detect.Domain, который
ИЗДАТЕЛЬ Даже при тщательно спланированной содержит несколько методов. Исполь-
ЗАО «Издательский дом архитектуре и выборе компонентов бу- зуя их, можно определить длинное имя
«Учительская газета» дущей системы, без некоторой автома- домена (DC=Microsoft,DC=Com), корот-
тизации процесса потребуется очень кое имя домена (Microsoft) и DNS-имя
Отпечатано типографией много времени, чтобы решить все воз- домена (Microsoft.Com).
ГП «Московская Типография №13»
Тираж 15000 экз.
Уважаемые читатели!
Журнал зарегистрирован
в Министерстве РФ по делам печати,
Продолжается подписка на 2-ое полугодие 2007 года.
телерадиовещания и средств массо-
вых коммуникаций (свидетельство
ПИ № 77-12542 от 24 апреля 2002 г.). Приобрести новые и старые номера журнала
вы можете через интернет-магазин LinuxCenter.ru.
За содержание статьи ответственность
несет автор. За содержание реклам-
ных материалов ответственность не-
сет рекламодатель. Все права на опуб- Доставка почтой в любую точку России.
ликованные материалы защищены.
96