Из Windows в Магию

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

Вообще говоря, всё, что можно сделать в Microsoft Windows (R), можно не менее успешно сделать и в Магии. Но между этими системами всё же существуют некоторые существенные различия, которые стоит запомнить. Главное и них - Магия это не Microsoft Windows (R)

Открытость исходных текстов программ

Основное отличие Магии от Microsoft Windows (R) состоит в общедоступности исходных кодов всех программ, включая ядро системы. В то время как исходники Microsoft Windows (R) закрыты так, что никто, кроме самого Microsoft, не может ни редактировать, ни изучать, ни даже знать наверняка как работает программа. Условия открытого программного обеспечения в Магии позволяют не корпорациям, а самим пользователям контролировать свой инструмент. Это порождает существенное отличие "программной культуры" от той, что принята среди пользователей Microsoft Windows (R). Предполагается, что пользователи Магии хотят изучать систему и по возможности участвовать тем или иным образом в поддержке и совершенствовании экосистемы открытого программного обеспечения.

Общее и частнособственническое программное обеспечение

По условиям лицензии GPL программные коды Магии свободны, поэтому их совершенствуют группы независимых программистов со всего света. Такие группы называют сообществами. Бо́льшая часть Магии состоит из программного кода таких свободных разработчиков. Сообщество Магии координирует и оптимизирует эту деятельность для обеспечения безопасности, стабильности и вычислительной мощности программ; обеспечивает обновление, исправление дефектов, устранение уязвимостей и так далее. Кроме того, сообщество Магии само разрабатывает большое количество программ, содействуя тем самым экспансии линукса. Например, Магия 2 оснащена собственным устройством конфигурирования системы - Центром управления Магии, клиентом техподдержки - Mageia Sphere и другими приложениями, упрощающими управление системой. Такое постоянное инновационное сотрудничество независимых разработчиков со всего света называется моделью разработки открытого программного обеспечения. Она обеспечивает быструю и стабильную технологию для Магии и всего сообщества Линукс.
Кроме того, концепция сообщества предполагает постоянный рост количества пользователей вносящих свой вклад в совершенствование системы. Этот вклад может быть самым разнообразным: от мнения о системе в целом до пожеланий и сообщений о неполадках. Магическая свобода - залог сотрудничества разработчиков с пользователями в эволюции системы, а модель разработки открытого программного обеспечения - залог общей выгоды от такого сотрудничества. Короче, активное участие в Магии выгодно всем.

Установка

Сегодня не многие магазины продают компьютеры с уже установленной операционной системой Линукс, поэтому заинтересованные в Магии должны первым делом сделать установку. Нормальным покупателям, ожидающим запуска операционной системы сразу после включения компьютера, установка может показаться невероятно сложной. К счастью, благодаря удивительной совместимости Линукса с оборудованием и благодаря стремительному и удобному установщику Магии, этот процесс настолько прост, что почти безболезнен. Полную информацию об установке см. Installation Portal.
Полезно знать, что ни производитель, ни продавец обычно не предоставляют технической поддержки неоригинальным операционным системам, поэтому уровень программной интеграции Магии будет ниже, чем "прямо из коробки". Кроме того, сообщество не может предоставить техническую поддержку конкретной конфигурации оборудования как это делает производитель оригинальной операционной системы. А хорошая новость в том, что это касается только очень нового или очень редкого оборудования, бо́льшая же часть "нормальных" компьютеров будет работать "прямо из коробки". Если же не будет работать, то мы предупредили.

Дерево операционной системы

UNIX-подход к программированию радикально отличен от программирования в Windows. Вместо создания единой программы с огромным функционалом и не меньшими ресурсами, UNIX-приложение создаётся как большой набор небольших целенаправленных программ, объединённых внутренними потоками данных под управлением операционной системы. (B. W. Kernighan and Rob Pike, The UNIX Programming Environment, Prentice-Hall. 1984). Верная своим UNIX-корням Магия тоже не является "программой" в смысле единого громадного приложения, которое "делает всё". Скорее она похожа на дерево, составленное из ветвей - узкоспециализированных программных инструментов, оптимизированных сообществом разработчиков для интеграции без зазора. По сути, операционная система Магия это очень сложное сплетение программ с тоннами постоянно добавляемой, удаляемой и обновляемой функциональности. Рассмотрим некоторые важные концепты такого подхода.

Зависимости

Зависимости представляют собой вторичные программы, вызываемые для выполнения специализированных задач внутри другого приложения. UNIX основан на концепции обмена этими зависимостями. То есть, зависимости различных программ объединяются в "общий резервуар", к которому могут линковаться все приложения. Например, в линуксовом медиа плейере декодирующие программы (кодеки) отделены от основного медиа плейера и загружены в базу зависимостей операционной системы. Недостатком этого будет необходимость отделения кодеков от проигрывателя, а преимуществом - возможность любого другого проигрывателя воспроизводить файлы, используя те же кодеки без расхода ресурсов на создание лишних копий. Таким образом, объединение зависимостей оптимизирует распределение ресурсов и позволяет не "изобретать велосипед" для каждого приложения.

Версии

Объединение зависимостей не статично. Поскольку программы совершенствуются, постольку и зависимости, на которые эти программы опираются, также могут изменяться, добавлять функциональность, исправлять ошибки или даже полностью переписываться. Концепция объединения зависимостей делает UNIX-приложения сильно чувствительными к версиям программ - приложение, построенное на определённой зависимости, может не работать с ранней или поздней версией той же программы1. Такая динамическая конструкция имеет как преимущества, так и недостатки. Преимущество заключается в том, что гарантируется работоспособность всех приложений, опирающихся на данную зависимость, чем обеспечивается высокая стабильность и современное качество сопровождения программного обеспечения. Недостаток заключается в том, что установка пакетов из старых версий Магии или Мандривы практически невозможно. Важной внутренней задачей сообщества разработчиков Магии является контроль версий; но и на пользователе лежит ответственность за установку только официально поддерживаемых Магией пакетов. УСТАНОВКА ДРУГИХ ПАКЕТОВ - СОБСТВЕННЫЙ РИСК ПОЛЬЗОВАТЕЛЯ.

Стандарт иерархии файловой системы

Одной из доступных опытным пользователям возможностей Магии является жесткий стандарт файловой системы по хранению приложений. В Microsoft Windows (R) файловая система по большей части произвольна за исключением некоторых основных директорий; приложения почти всегда сами определяют места и способы хранения своих файлов. Магия наоборот требует от программ установку их файлов в зарание заданные директории в соответствии с типом файла. Это позволяет как разработчикам, так и пользователям находить нужные компоненты в заранее известных местах на любом компьютере и упрощает распределение зависимостей между приложениями. Неизменное местоположение позволяет безопасно линковать папки зависимостей без риска повреждения программы. Отдельная ветка "/opt" позволяет устанавливать самозависимые (как в Windows) приложения, то есть создавать приложения обоими способами. Больше информации о спецификации директорий вы найдёте в FHS Referenced

Важные мелочи

Хотя эта спецификация определяет основную структуру всех Linux-дистрибутивов, в каждом отдельном дистрибутиве могут быть некоторые отличия. По этой причине компоненты Магии могут находиться не обязательно на том же месте, где и у других дистрибутивов. Поэтому Магия как правило не рекомендует устанавливать пакеты из других дистрибутивов. Более подробно см. далее в статье Установка и удаление программ

Администрирование программ

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

Пакеты и программы

Большая часть программ с открытым кодом поставляются в исходниках - текстах программного кода без какой-либо трансляции на компьютерный язык. Естественно, что компьютеры не умеют исполнять исходный код, и он нуждается в переводе на язык компьютера (бинарный код). Пользователь должен задать условия установки каждой программы, скомпилировать (перевести) программу на своём компьютере, и только после этого установить. Этот нудный процесс ещё более усложняется необходимостью учёта концепции разделения зависимостей, которая требует скомпилировать и установить все зависимости прежде, чем начинать установку самой программы. На каждом шаге существует опасность ошибок, что потребует времени на их поиск и исправление. Всё это превращает управление приложениями обычной операционной системы UNIX в постоянную, очень сложную, изматывающую и напряжённую работу.
Система управления пакетами стала высокоэффективным решением данной проблемы, избавив пользователей и разработчиков от сложностей описанного процесса установки. Она его "проглотила", автоматизировав загрузку, установку и конфигурирование приложений с помощью небольшого набора программ. Наиболее заметные из них: программа загрузки приложений, программа проверки аутентичности загруженных приложений, программа установки и удаления приложений (urpmi) и дружественный интерфейс. Пользователю остаётся только выбрать приложение и кликнуть мышкой. Система управления пакетами регулирует зависимости, задаёт необходимый формат установки и автоматизирует множество ранее обременительных для разработчика задач.
Два важных шага процесса установки - компиляция и конфигурирование - были намеренно пропущены, потому что системе управления пакетами нет нужды в этой работе. Сообщество Магии взяло на себя компиляцию и конфигурирование и поставляет пакеты в готовом к установке (бинарном) виде через свои Установка и удаление программ. Поставляя пре-компилированные пакеты, Магия гарантирует, что а) пакеты полностью соответствуют обязательным требованиям к программному обеспечению и б) пакеты правильно сконфигурированы для большинства настольных систем. Кроме того, это значительно уменьшает рекламации пользователей и количество несовместимостей в зависимостях, а также повышает уровень безопасности в отношении вирусов и вредоносных программ.
Используемый Магией формат установочных пакетов унаследован от базового пакетного инструмента - rpm. Файлы с расширением .rpm аналогичны файлам с расширением .exe в Microsoft Windows (R) в том отношении, что они содержат исполняемый код для собственной установки.
Для выборочной установки определённых программ (только экспертами) может применяться метод самостоятельного компилирования исходников. Подробнее см. на Installing Software from Source Code.

Справка и техподдержка Магии

Полное описание получения справочной информации и технической поддержки см. далее в статье Как получить помощь В качестве коммерческой организации сообщество Магии обязано предоставлять поддержку на всех технических и коммерческих уровнях. Однако тип предоставляемой поддержки зависит от версии Магии. Так как бо́льшая часть Магии состоит из бесплатных программ, основная помощь доступна через форумы сообщества, IRC-каналы и почтовую рассылку, а не по звонку в техподдержку, как положено для платных программ. Эти важные и актуальные источники информации дополняют и заменяют экспертную помощь Магии. Все они легко доступны с официального сайта Магии. Поиск в интернете даст вам множество ценных Linux-ресурсов как, например, Ubuntu Community Forums.

Справка и техподдержка рабочего окружения

Рабочее окружение - это набор приложений графического интерфейса компьютера. Он состоит из рабочего стола, инструментов основной периферии, файлового инструмента и (в Linux) какого-либо инструмента управления пакетами. Каждое рабочее окружение имеет своё сообщество, в котором можно получить соответствующую этим программам помощь.
Если вы установили стандартный пакет Магии, то ваше рабочее окружение или KDE, или Gnome. И то и другое имеет Справку, где можно найти информацию об установленном приложении. В KDE можно выбрать команду Выполнить и в появившемся окне напечатать "help". В Gnome вы найдёте Справку в файл-менеджере или нажав комбинацию клавиш "Alt + F2", в появившемся окне напечатав "help".