Журнал LinuxFormat - перейти на главную

LXF105:Интервью

Материал из Linuxformat
Перейти к: навигация, поиск

Новое обличие Императора

Что значит «объединить лучшее от Linux и Solaris», в широком смысле этого слова? Ответ на такой вопрос может дать только человек, досконально изучивший два этих мира – Ян Мердок!

LXF105 60 1.jpg

Последний раз Linux Format встречался с Яном Мердоком [Ian Murdock] ровно год назад (см. LXF92). Тогда речь шла о Debian и демократии, об Ubuntu, стандартах в мире Linux и других вещах, который мог прояснить для нас создатель самого крупного дистрибутива Linux и высокопоставленный сотрудник Linux Foundation. С тех пор многое изменилось – на визитной карточке Яна теперь красуется строчка «Вице-президент по разработке и маркетингу в сообществе, Sun Microsystems», а его имя гораздо чаще упоминается в связи с OpenSolaris, чем по поводу Debian. Но... действительно ли изменилось? Валентин Синицын встретился с Яном Мердоком на Sun Tech Days в Санкт-Петербурге и выяснил, что его нынешняя деятельность – во многом «старая сказка на новый лад».

LXF: Итак, после пятнадцати лет работы над дистрибутивами Linux, вы теперь возглавляете один из проектов OpenSolaris — Indiana. В чем заключается ваша работа?

ЯМ: Как вы правильно отметили, я провел пятнадцать лет в мире Linux-дистрибуции: мы брали открытое ПО, увязывали его друг с другом и с ядром Linux, чтобы оно работало как надо, и составляло единую ОС. Сегодня мы пытаемся сделать то же самое для OpenSolaris – берем ядро Solaris, базовые технологии, разработанные в Sun Microsystems, добавляем свободные приложения, следим, чтобы все эти компоненты уживались друг с другом, и предлагаем рынку завершенную ОС.

Я пришел в Sun Microsystems около года назад, и основной вопрос, который мне все задают – «Что линуксоид делает в Sun?». Ответ, который я обычно даю, таков: «Когда люди говорят о Linux, они обычно подразумевают не само ядро, а более широкий диапазон открытых технологий, который объединяют в себе дистрибутивы». В этом смысле, задача проекта Indiana – взять лучшее от Linux, в широком смысле этого слова, и привнести в Solaris. Проект Indiana сам по себе, в какой-то мере, был начат как ответ на вопрос: «Что линуксоид делает в Sun?».

Над Indiana сейчас работают сотни людей, как внутри компании, так и в сообществе OpenSolaris. С точки зрения управления, у проекта OpenSolaris есть Совет [board], выборы в него проходили буквально несколько недель назад. Некоторые сотрудники Sun Microsystems являются активными лидерами сообщества. В общем, все это очень похоже на то, что было у нас в Debain.

LXF: А как конкретно происходит отбор компонентов для Indiana? Каким требованиям должен удовлетворять продукт, чтобы стать частью дистрибутива?

ЯМ: У меня есть два ответа на этот вопрос. Простой состоит в том, что мы хотим сделать дистрибутив OpenSolaris полностью повторно распространяемым, чтобы вы могли скачать CD-образ и поместить его в сеть BitTorrent или на зеркало. Как известно, OpenSolaris представляет собой открытую порцию исходных текстов Solaris; некоторые части не были опубликованы как Open Source, например, потому, что права на них принадлежат третьим фирмам и эти компании не желают открывать свой код. Поэтому, если вы хотите, чтобы ваша разработка стала частью OpenSolaris, одно из ключевых требований – это отсутствие каких-либо специальных ограничений на ее распространение. С технической точки зрения, требования у нас такие же, как и у любого дистрибутива Linux. Если вы посмотрите на какой-нибудь из них, скажем, Debian, то обнаружите, что из огромного количества пакетов (может быть, десятков тысяч), доступных для этих систем, активно используется лишь небольшое подмножество – скажем, сотни: Apache, MySQL, PHP и т.п. Мы посмотрели, какие именно ключевые технологии ожидают видеть у нас разработчики, администраторы, пользователи, пришедшие из мира Linux, и обеспечили интеграцию этих продуктов с дистрибутивом OpenSolaris.

LXF: Значит, дистрибутив Indiana должен быть свободно распространяемым? А как быть с поддержкой оборудования? Скажем, драйверы NVIDIA для Solaris существуют, но они проприетарны. Значит, они не войдут в Indiana?

ЯМ: В ряде случаев, драйвер, конечно, может оказаться закрытым. Основная идея в следующем: если некоторая интеллектуальная собственность принадлежит нам, она будет открытой. Как я уже упоминал, некоторые используемые нами технологии лицензированы у других компаний. Мы ведем с ними переговоры на тему публикации исходных текстов, но иногда производитель просто не желает этого делать. В таких случаях мы копируем технологию или же обращаемся к сообществу с просьбой помочь нам сделать это. А что касается драйверов вообще, и NVIDIA – в частности, они не являются открытыми, но мы взаимодействовали с NVIDIA, чтобы убедиться, что они являются повторно распространяемыми. Вообще говоря, мы придерживаемся той же политики, что и Ubuntu: мы более заинтересованы в работе «прямо из коробки», чем в том, чтобы быть стопроцентно открытым ПО. Как и Ubuntu, мы предлагаем полностью открытую альтернативу, но, думаю, мы почувствуем то же, что и они: рынку нужны скорее «просто работающие», чем стопроцентно открытые решения.

LXF: А сколько, кстати, пакетов доступно в настоящий момент для Indiana?

ЯМ: Не знаю точное количество, но в последний раз, когда я смотрел, было около тысячи [к моменту подписания номера в печать насчитывалось уже 2000, – прим. ред.]. Это число кажется небольшим, если сравнить его с двадцатью пятью тысячами в Debian, но имейте в виду, что для создания такого массива пакетов потребовались годы. То, что мы сделали тогда – это набрали некоторую критическую массу: Apache, MySQL и прочее, чтобы Debian был привлекателен для пользователей. Потом, когда люди начинали использовать Debian и замечали, что их любимой открытой утилиты в нем нет, у них в руках были инструменты и руководства, позволяющие собрать нужные пакеты и через это принять участие в проекте. Пакетная база Debian выросла, в основном, как побочный продукт того, что пользователи находили пустоты и сами заполняли их. С OpenSolaris мы делаем практически то же самое. Внутри компании, мы вкладываемся в те ключевые технологии, которые ожидает видеть у нас каждый, и в то же время создаем сообщество maintainer’ов пакетов, чтобы пользователи OpenSolaris могли легко упаковывать любимые приложения и передавать их проекту. Мы собираемся использовать для OpenSolaris те же методики, которые привели Debian к его вершинам.

LXF: Все знают, откуда произошло название Debian. Но почему Indiana?

ЯМ: Ну, здесь все просто: я живу в Индиане [смеется].

LXF: А вы уже выбрали логотип для Indiana? У Linux есть Тукс, у FreeBSD – демоненок Beastie...

ЯМ: О, это очень горячая тема. Мы еще не решили окончательно, но разговоры в сообществе по этому поводу ведутся. Посмотрим, во что все это выльется...

LXF: А какие предлагаются варианты?

ЯМ: Это должно решить сообщество OpenSolaris. Честно говоря, я даже не знаю, на чем они там остановились.

LXF: Комбинируя лучшее от Linux и от Solaris, вы все же решили создать некоторые части дистрибутива, в первую очередь, менеджер пакетов, с нуля. Чем вам не угодил APT или RPM?

ЯМ: Разумеется, мы рассмотрели варианты, которые может предложить Linux. Мы взяли APT, Conary [распределенная система управления ПО, разработанная в rPath, – прим. ред.], а также ряд других. В конце концов мы решили создать свой собственный менеджер пакетов, и тому было несколько причин. Во-первых, в Solaris есть технологии, о внутренней механике которой стандартная система управления пакетами догадываться не может, а раз так, то она не может и делать некоторые вещи, которые в противном случае были бы ей доступны. Приведу пару примеров. У нас есть файловая система ZFS (см. LXF96), которая поддерживает снимки текущего состояния файловой системы и позволяет откатываться к предыдущему состоянию (снимку). Этот функционал можно использовать в менеджере пакетов, чтобы реализовать аналогичную возможность отката: если вы установили программу и что-то пошло не так, всегда можно восстановить гарантированно работоспособное состояние. У нас также есть технология виртуализации, известная как «зоны», по сути – одно ядро плюс изолированные рабочие окружения поверх него. Из соображений эффективности, вы можете разделять файлы между зонами, а стандартная система управления пакетами не знает, какие файлы являются совместно используемыми, а какие – нет. Так что, рассмотрев существующие решения и поняв, сколько изменений потребуется в них внести, чтобы реализовать желаемый функционал, мы решили, что создать свой собственный вариант будет наилучшим выбором. Кроме того, в Soalris существует понятие «патча», не получившее распространение в Linux [речь идет не о способе модификации исходных текстов; можно сказать, что патч – это родной подход к управлению ПО в Solaris, – прим. ред.]... Мы также интегрировали некоторые специальные возможности, вроде версионности. Иными словами, мы воспользовались шансом внести что-то новое – как известно, инновации в области управления пакетами в Linux, по большому счету, закончились где-то с появлением APT, т.е. в середине девяностых годов.

LXF: А в чем еще, по-вашему, основные отличия между Solaris и Linux? Они оба Unix-подобные, теперь — оба открытые...

ЯМ: Преимущество Solaris в том, что мы инвестируем очень большие средства в базовые технологии операционной системы: ZFS, DTrace, зоны, SMF. У нас есть определенные гарантии обратной двоичной совместимости [двоичные файлы, скомпилированные для Solaris 2.6, должны выполняться без изменений и в Solaris 10, – прим. ред.], которые Linux, из-за своей распределенной природы, предоставить не может. Основной же недостаток Solaris до настоящего момента был в том, что он был другим – например, он не включал инструменты GNU, простой инсталлятор, менеджер пакетов: в общем, всего того, что рынок ожидает от операционной системы. Linux здесь впереди, и мы в проекте Indiana стремимся перенять его лучшие, в широком смысле слова, черты. Linux также имеет преимущество в количестве драйверов и числе поддерживаемых устройств. Так выглядит высокоуровневое сравнение – с моей точки зрения.

LXF: Свободное ПО – это в первую очередь, свобода выбора. Как бы вы отнеслись к тому, что кто-то создаст ответвление Indiana, по типу «Ubuntu – Debian»?

ЯМ: Это было бы прекрасно! Более того, мы поощряем такую деятельность. Частью проекта Indiana является разработка системы, которая позволила бы создавать специализированные версии дистрибутива, но делало бы это таким образом, чтобы сохранять совместимость между различными ответвлениями. Ее отсутствие в Linux, на мой взгляд – большой недостаток. Вопрос в том, как увязать гибкость, предоставляемую несколькими дистрибутивами, и совместимость, предлагаемую одной базовой платформой – с тем, чтобы независимым поставщикам не приходилось думать обо всей этой экосистеме производных дистрибутивов, как они сейчас думают о Red Hat, SUSE, Ubuntu...

LXF: Возможность собрать систему «под себя» наверняка придется по вкусу потребителям в самых разных областях рынка! А как вы лично оцениваете перспективы Solaris на серверах, рабочих столах и во встраиваемых устройствах?

ЯМ: Solaris и Sun Microsystems традиционно имеют сильные позиции в серверном сегменте, и то, чем мы занимаемся в Indiana – это попытка сделать Solaris понятным для разработчиков и администраторов, которые хорошо знакомы с тем, как работает Linux. На наш взгляд, у Solaris очень неплохие перспективы в данной области. Что же касается рабочих столов, то Solaris обычно не рассматривается в качестве настольной платформы, ну, кроме тонких клиентов. Конечно, с точки зрения удобства использования здесь есть на чем поработать, но мы пока не фокусируемся на данном вопросе. То, что нас интересует – это компьютер разработчика. Встраиваемые системы – еще одна возможность, которую мы принимаем во внимание в проекте Indiana. Теперь, когда OpenSolaris представляет собой большую коллекцию ПО, становится проще отобрать из этих компонентов нужные и создать облегченную, узкоспециализированную систему для конкретных задач. Мы поощряем такую деятельность, предоставляя инструменты разработчика и прочее. Так что вы можете ожидать усиления позиций в серверной области, добавочное продвижение в клиентской, и – увидим, что получится на рабочих столах.

LXF: А когда можно ожидать финального релиза Indiana?

ЯМ: В мае [OpenSolaris 2008.05 увидел свет 5 мая; вы найдете его на LXFDVD, – прим. ред.]. Прямо сейчас доступна для скачивания версия для разработчиков – Developer Preview 2. Финальный релиз будет поддерживаться Sun Microsystems и мы ожидаем, что его будут внедрять наши клиенты. LXF

Персональные инструменты
купить
подписаться
Яндекс.Метрика