...
...
...

опыт внедрения Linux и свободного ПО на крупном предприятии в РБ

В настоящее время в мире сложились два основных способа производства, распространения и использования программного обеспечения (ПО) общего назначения (операционных систем, офисных пакетов, Интернет браузеров и т.д.).

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

Под вторым направлением рассматривают программные продукты, написанные свободными разработчиками и распространяемые под свободными лицензиями (например, под лицензией GPL).Это ПО тоже имеет ряд характерных недостатков. Во-первых, свободные программные продукты не так удобны в применении. Однако приходит время, когда они становятся дружелюбными не только по отношению к профессионалам, но и к простым пользователям. Ведь в этом направлении работают большие коллективы и крупные компании. Кроме того, полноценное использование этого ПО требует от людей изначально высокого уровня квалификации. Этот недостаток компенсируется свободой в распространении, модификации и использовании этого ПО. Что же касается приложений для конечного пользователя, то в настоящее время существует большое количество свободного ПО простого и доступного в установке. Надо отдать должное и ряду достоинств свободных программных продуктов. Вместе с программами распространяются и исходные тексты, которые можно изменять, приспосабливая к своим нуждам. Множество независимых программистов, имея полную информацию, находят и устраняют в процессе тестирования замеченные недостатки. Результатом является более высокая надежность свободного ПО и гарантия отсутствия так называемых закладок. В этой статье автор хотел бы рассказать об опыте перехода на Linux на крупном энергетическом предприятии в РБ.

предпосылки





В 2002 году в Украине и в России начались преследования за нелицензионное использование ПО. В РБ также готовились к выходу законы об авторских и смежных правах. На нашем предприятии, как и на подавляющем большинстве предприятий постсоветского пространства, при автоматизации рабочих мест никто не рассматривал вопрос легальности того или иного ПО. Частично ПО (операционная система и офисное ПО) поставлялось с персональными компьютерами (ПК). Остальные программные продукты (ПП) устанавливались отделом автоматизации без учета реальной стоимости и необходимости на конкретном рабочем месте. Легализация всех этих ПП потребовала бы совершенно неоправданных расходов. Ведь по оценкам западных аналитиков нормальной является ситуация, когда стоимость ПО составляет 2/3 стоимости ПК.

Руководство IT-отдела доложило о ситуации по состоянию лицензионной чистоты программного обеспечения предприятия. Это было выражено в служебной записке на имя руководителя предприятия. В качестве выхода из ситуации было предложено три варианта:
1. Купить лицензии на все ПО.
2. Занять выжидательную позицию, наблюдая за изменением ситуации.
3. Начать переход на использование свободного ПО (СПО) там, где это возможно.

Каждый вариант был описан с положительной и с отрицательной точки зрения. Покупка лицензий на ПО, используемое на предприятии, стоила примерно 220 тыс. американских долларов. При этом оставались вопросы с контролем лицензий на каждую единицу техники и трудности с обновлением версий. Второй вариант был отброшен сразу, так как при проверке предприятию грозили крупные санкции. Таким образом, в конце служебной записки была рекомендация нашего отдела использовать СПО там, где это возможно.

Теперь опишем ситуацию, в котором предприятие находилось в 2002 году. На нем было 24 подразделения, которые располагались от центрального офиса на расстоянии до 300 км. Количество компьютеров было порядка 300 единиц и на них использовалось разнообразное ПО. Однако из всего этого многообразия можно выделить ряд характерных типов:
1. ОС Novell Netware как файл-сервер.
2. ОС Windows 98 и офисный пакет Microsoft Office - общеофисное ПО;
3. АРМы - бухгалтерия, складской учет, работа с клиентами и поставщиками, учет автотранспорта и т.п. Они написаны программистами предприятия на языке clipper под DOS и на DELPHI под Windows. Таким образом, это ПО являлось собственностью предприятия и имелось в виде исходного кода. 4. ПО технологического назначения.

решение

Выше были перечислены типы ПО, используемого на предприятии. Теперь поговорим о его замене на СПО.
Выбор основного дистрибутива для использования был определен тем, какой из оных имелся в наличии, и был ли на месте человек, который в нем хорошо разбирался. Этим дистрибутивом оказался SuSE Linux. Последний оправдал наши надежды в качестве корпоративного стандарта - почти всегда устанавливался на серверы, рабочие станции и ноутбуки без проблем. Проблема русификации, часто поднимаемая в статьях по обзорам дистрибутивов Linux, решена. Имеется надежная система security-fix on-line обновлений (YAST-OnlineUpdate).

Также надо отметить, что все задачи на предприятии были сетевыми, и каждый АРМ был увязан в единое информационное поле. На момент перехода на СПО не были развернуты ни интранет-технологии (электронная почта, веб-ресурсы), ни клиент-серверные технологии (SQL-сервер). Таким образом, переход на Linux совпал с технологическим перевооружением в IT-области предприятия. Вот этому перевооружению очень сильно помог переход с Novell Netware на UNIX-системы на серверах.
На типичном сервере филиала в качестве MTA устанавливается postfix, в качестве MDA - cyrus-imap, samba - для использования файл-серверной технологии, MySQL в качестве основного SQL-сервера, а также всевозможные сетевые сервисы - DNS, DHCP, NTP и т.п. В некоторых задачах используется SQL-сервер firebird. Также устанавливается LTSP, о чем подробнее будет сказано ниже. Такой сервер нашим администратором сети устанавливается и подготавливается к использованию в течение двух часов.

В качестве замены Microsoft Office рассматривались kword и abiword, но благодаря Sun появился OpenOffice. Поэтому в качестве стандарта решено было внедрять связку Linux-OpenOffice. Основной проблемой для внедрения данной связки становились серьезные требования к железу персональных компьютеров, большинство из которых находилось на уровне Pentium-166. До сих пор это является главным ограничением по внедрению данного решения. Частично эту проблему решает LTSP. В качестве основного рабочего окружения на мощных машинах (ориентировочно CPU выше 1Ггц и памяти выше 256 Мб) выбрана оболочка KDE, на менее мощных и на рабочих станциях, использующих LTSP - Xfce.

Так как большинство программного обеспечения является собственностью нашего предприятия, то, соответственно, имеются и исходные коды этого ПО. Первоначально под DOSEMU были запущены все DOS-приложения. В дальнейшем, большую часть приложений, написанных на clipper, успешно портировали под clip. CLIP - это свободная реализация языка CA-Clipper, намного превзошедшая своего предшественника. С помощью этого продукта можно работать со всевозможными СУБД, начиная от DBASE и заканчивая Oracle, а также получать доступ к данным через ODBC-драйверы. На clip можно писать консольные приложения, графические под GTK2 и адаптированные под веб. Так как большинство приложений были написаны под файл-серверную технологию, то имелось узкое место в их производительности - пропускная способность локальной сети. Однако приложения были написаны достаточно хорошо и успешно эксплуатировались. Следует заметить, что переписывание их под технологии клиент-сервер было бы слишком дорогим. А вот использование терминального решения не потребовало никакой переделки ПО, а только некоторых усилий администратора сети. Скорость выполнения сложных расчетов возрастала до десятков раз и значительно увеличивалась безопасность сети. Мы портировали часть приложений, написанных на Delphi при помощи Kylix. Однако, при написании новых приложений было принято решение отказаться от продукции фирмы Borland в пользу среды Kdevelop по причине проблем с авторскими правами и поддержкой со стороны фирмы продавца. Внедрены и успешно эксплуатируются веб-ресурсы, включая мониторинг технологических данных.

Наибольшую проблему создали специализированные программные продукты, которые приходилось приобретать у сторонних организаций. DOS-приложения без проблем стартовали под DOSEMU, а вот с Windows-приложениями было сложнее. Некоторое время для их использования на одном из Linux-серверов под VmWare мы держали Windows Terminal NT. При помощи rdesktop пользователи подключались и работали в нем. Затем нам удалось запустить почти все массовые приложения под Wine (например, юридическую систему НЦПИ). Опыт показывает, что профессионально написанные windows-приложения надежно работают под эмуляторами. Однако встречаются «изделия» не слишком умелых специалистов, которые в свой непрофессиональный код добавляют разнообразные украшения и ненужную продукту защиту, использующую недокументированные функции Windows. К сожалению, такие программы часто пишутся для справочных систем в виде всевозможных оболочек к базам данных, необходимых для производственной деятельности предприятий. Созданием и обновлением этих баз, в силу их специфики, занимается одна организация (институт или центр), обладающая правом на их распространение. Поэтому она заказывает или разрабатывает ПО для продажи на рынке сама. Из-за узкой направленности в своей области, организация слабо представляет требования к этому ПО. В результате его пишут те, кто под рукой. Вполне возможно, что разработкой занимались вчерашние, а может и сегодняшние студенты. Такое ПО даже не всегда сопровождается после его написания. Изменить такой софт нет никаких шансов, так как ни автор, ни предприятие- монополист в этом не заинтересованы. Одну из таких разработок нам пришлось полностью переписать.

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

оргвопросы


Надо сказать, что при внедрении решений на основе Linux, больших трудностей с пользователями не наблюдалось. Основные проблемы были связаны с медленной загрузкой OpenOffice и с тем, что он не совсем похож на офис от компании Microsoft. Но после непродолжительного периода адаптации эти нарекания исчезли. Также недостатком является отсутствие под Linux программ по распознаванию русского текста. В целом же, все наше адаптированное ПО имело такой же вид и не требовало переобучения пользователей.

Есть один отдел на предприятии, который мы пока не смогли перевести на Linux. У этого отдела разработана своя автоматизация бизнес-процесса, основанная на макросах Microsoft Office. Но этот отдел не находится в общем информационном поле и его перевод на СПО пока отложен.
После принятия решения о переходе на Linux мы стали требовать от поставщиков компьютерного оборудования, в том числе и в тендерных условиях, поставлять компьютеры с предустановленным SuSE-Linux. Таким образом, мы решили для себя вопросы поддержки оборудования операционной системой Linux.

Одним из важных аспектов является обмен информацией с внешним миром. Для работы с электронной почтой у обычных пользователей не появилось никаких проблем. Предприятие имеет ряд выделенных каналов связи для взаимодействия с нашими потребителями, поставщиками и внешними финансовыми структурами. Весь обмен построен на стандартных Internet-сервисах (веб, электронная почта), а также на FTN-технологии. В качестве форматов обмена данных используются всевозможные открытые стандарты, начиная от структурированных текстовых и DBF-файлов и заканчивая XML.

В первые годы было приложено много сил на переобучение специалистов IT-отдела. Был организован ряд курсов - от базовых до расширенных. Одной из трудностей при подготовке курсов явилось отсутствие грамотных преподавателей. Нам в этом плане повезло: человек, занимавшийся обучением наших специалистов, помимо обширных и глубоких знаний обладал талантом преподавания. Также было закуплено большое количество литературы по UNIX/Linux и смежным областям.

выводы

На наш взгляд успех перехода на свободное программное обеспечение зависит от нескольких факторов:
1. Четкое понимание руководством IT-подразделения намеченной цели.
2. Наличие твердой политики в области IT-технологий со стороны соответствующего отдела. То есть, никто, кроме специалистов IT-службы не должен принимать решений о том, какой компьютер должен стоять на рабочем месте и какие программы должны быть на нем установлены. Ведь переход на новую платформу зачастую встречает сопротивление конечных пользователей. Поэтому только наличие технологической дисциплины позволит успешно произвести смену ПО.
3. Наличие специалистов, способных успешно начать и закончить эту работу. Это могут сделать как свои, так и сторонние специалисты. Но в любом случае это ведет к затратам, выраженным в виде оплаты чужих специалистов или в отвлечении от поддержки и разработки ПО своих работников. 4. Обязательное обучение использованию новых технологий всех работников своего IT-отдела.

На текущий момент еще не все цели, поставленные в начале проекта по миграции всего предприятия на ОС Linux, достигнуты. Есть ряд объективных причин, не позволивших это сделать за три года.
Во-первых - это резкое сокращение финансирования закупок новой техники. Более 50% компьютеров находится на уровне Pentium-166. За последние два года было приобретено не более 40 единиц компьютерной техники. До сих пор не все филиалы имеют выделенные серверы.
Во-вторых - наличие неоправданно малого IT-отдела на предприятии. Вследствие этого большое количество времени уходит на поддержку существующих программных комплексов и сетей, а не на создание новых.

И в третьих - в Беларуси, в отличие от России и Украины, отсутствуют фирмы, готовые предложить решения по внедрению свободного программного обеспечения. К сожалению, мало коллективов, готовых написать кроссплатформенные или работающие только под ОС Linux программные продукты.



Влад Васильев
обсуждение статьи



© Сетевые решения