Сайт о телевидении

Сайт о телевидении

» » Диск дистрибутива операционной системы. Дистрибутив - это что? Как использовать дистрибутив Windows и других ОС

Диск дистрибутива операционной системы. Дистрибутив - это что? Как использовать дистрибутив Windows и других ОС

В любой операционной системе можно выделить 4 основных части: ядро, файловую структуру, интерпретатор команд пользователя и утилиты. Ядро - это основная, определяющая часть ОС, которая управляет аппаратными средствами и выполнением программ. Файловая структура - это система хранения файлов на запоминающих устройствах. Интерпретатор команд или оболочка - это программа, организующая взаимодействие пользователя с компьютером. И, наконец, утилиты - это просто отдельные программы, которые, вообще говоря, ничем принципиально не отличаются от других программ, запускаемых пользователем, разве только своим основным назначением - они выполняют служебные функции.

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

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

История возникновения дистрибутивов

Linux - ядро

В 1991 году Линус Торвальдс, финский студент, чрезвычайно увлёкся идеей написать совместимое с UNIX ядро (см рис 1) операционной системы для своего персонального компьютера с процессором ставшей очень широко распространённой архитектуры Intel 80386. Прототипом для будущего ядра стала операционная система MINIX: совместимая с UNIX операционная система для персональных компьютеров которая загружалась с дискет и умещалась в очень ограниченной в те времена памяти персонального компьютера. MINIX был создан Эндрю Таненбаумом в качестве учебной операционной системы, демонстрирующей архитектуру и возможности UNIX, но непригодной для полноценной работы с точки зрения программиста. Именно полноценное ядро для своего ПК и хотел сделать Линус Торвальдс. Название своему ядру он дал freax, но позже оно было изменено хозяином ftp сервера на Linux - гибрид имени создателя и слова UNIX.

Совместимость с UNIX в этот момент означала, что операционная система должна поддерживать стандарт POSIX. POSIX - это функциональная модель совместимой с UNIX операционной системы, в которой описано, как должна вести себя система в той или иной ситуации, но не приводится никаких указаний, как это следует реализовать программными средствами. POSIX описывал те свойства UNIX-совместимых систем, которые были общими для разных реализаций UNIX на момент создания этого стандарта. В частности, в POSIX описаны системные вызовы, которые должна обрабатывать операционная система, совместимая с этим стандартом.

Важнейшую роль в развитии Linux сыграли глобальные компьютерные сети Usenet и Internet. На самых ранних стадиях Линус Торвальдс обсуждал свою работу и возникающие трудности с другими разработчиками в телеконференции comp.os.minix в сети Usenet, посвящённой операционной системе MINIX. Ключевым решением Линуса стала публикация исходных текстов ещё малоработоспособной первой версии ядра под свободной лицензией GNU GPL. Благодаря этому и получавшей всё большее распространение сети Internet очень многие получили возможность самостоятельно компилировать и тестировать это ядро, участвовать в обсуждении и исправлении ошибок, а также присылать исправления и дополнения к исходным текстам Линуса. Теперь над ядром работал уже не один человек, разработка пошла быстрее и эффективнее.

В 1992 году версия ядра Linux достигла 0.95, а в 1994 году вышла версия 1.0, что свидетельствовало о том, что разработчики, наконец, сочли, что ядро в целом закончено и все ошибки (теоретически) исправлены. В настоящее время разработка ядра Linux - дело уже гораздо большего сообщества, чем во времена до версии 1.0. Изменилась и роль самого Линуса Торвальдса: теперь он не главный разработчик, а наиболее авторитетный член сообщества, по традиции оценивающий качество исходных текстов, которые должны быть включены в ядро, и дающий своё добро на их включение. Тем не менее, общая модель свободной разработки сообществом сохраняется.

Однако как нельзя сделать операционную систему без ядра, так и ядро будет бесполезно без утилит, которые использовали бы его возможности. Благодаря проекту GNU Линус Торвальдс сразу получил возможность использовать с Linux свободные утилиты: bash, компилятор gcc, tar, gzip и многие другие уже известные и широко используемые приложения, которые могли работать с его UNIX-совместимым ядром. Так Linux сразу попал в хорошее окружение и в сочетании с утилитами GNU представлял собой очень интересную среду для разработчиков программного обеспечения даже на самой ранней стадии своего развития. Принципиальным шагом вперёд было именно то, что из ядра Linux и утилит и приложений GNU впервые стало возможно сделать полностью свободную операционную систему, то есть работать с компьютером и, более того, разрабатывать новое программное обеспечение, пользуясь только свободным программным обеспечением. Идеал полностью некоммерческой разработки, сформулированный Столлманом, теперь мог быть воплощён в жизнь. Вскоре появлялись теоретические возможности воплощения идеала, но это не означало его немедленной практической реализации. Совместимость Linux и утилит GNU была обусловлена тем, что и то, и другое писалось с ориентацией на одни и те же стандарты и практику. Однако в рамках этой практики (то есть при наличии множества различных UNIX-систем) оставался большой простор для несовместимости и различных решений. Поэтому на начальном этапе разработки ядра каждое заработавшее на Linux приложение GNU было для Линуса очередным достижением. Первыми стали bash и gcc. Таким образом, сочетание GNU и Linux давало возможность создать свободную операционную систему, но само по себе ещё не составляло такой системы, потому что Linux и различные утилиты GNU оставались разрозненными программными продуктами, написанными разными людьми, не всегда принимавшими в расчёт то, что делали другие. Основным же свойством любой системы является согласованность её компонентов.

Возникновение дистрибутивов

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

Когда задача получить компьютер с постоянно работающей на нём системой Linux стала востребованной и довольно распространённой, разработчики в хельсинкском и техасском университетах создают собственные наборы дискет, с которых скомпилированное ядро и основные утилиты можно записать на жёсткий диск, после чего загружать операционную систему прямо с него. Эти наборы дискет стали первыми прототипами современных дистрибутивов Linux -комплектов программного обеспечения, на основе которых можно получить работающую операционную систему на своём компьютере. Нужно отметить, что в дистрибутив Linux с самого начала входили программные продукты GNU. На самом деле, всякий раз, когда говорится «операционная система Linux», подразумевается «ядро Linux и утилиты GNU». Фонд свободного ПО рекомендует называть это операционной системой Linux.

Однако скопировать все нужные программы на жёсткий диск ещё недостаточно, чтобы получить подходящую для нужд пользователя операционную среду (пусть даже это очень профессиональный пользователь). Поэтому первые наборы дискет можно только условно назвать дистрибутивами. Чтобы получить работающую операционную систему, требуются какие-то специальные средства установки и настройки программного обеспечения. Именно наличие таких средств и отличает современные дистрибутивы Linux. Другая важнейшая задача дистрибутива - регулярное обновление. Программное обеспечение, особенно свободное, - одна из самых быстро развивающихся областей, поэтому мало один раз установить Linux, нужно ещё регулярно его обновлять. Первым дистрибутивом в современном понимании, получившим широкое распространение, стал Slackware, созданный П. Фолькердингом. Он был широко известен пользователям Linux уже к 1994 году.

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

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

Выгода операционной системы, целиком состоящей из свободного программного обеспечения, очевидна - собирающие эту систему не должны никому платить за входящие в неё программы. Более того, дальнейшая разработка и обновление имеющихся программ ведётся сообществом разработчиков также совершенно бесплатно, не нужно платить сотрудникам, которые занимались бы этим. В итоге затраты фирмы, собирающей дистрибутив Linux для пользователя, ограничиваются оплатой программистов, интегрирующих разрозненные приложения в систему и пишущих программы для стандартизации процедур установки и настройки системы, чтобы облегчить эти задачи неподготовленному пользователю, а также затратами на самоиздание получившегося дистрибутива. Для конечного покупателя это означает принципиальное снижение цены на операционную систему.

Первой успешной компанией, работающей по такой схеме, стала Red Hat, появившаяся в 1995 году. Red Hat адресовала свои разработки не только программистам профессионалам, но и обыкновенным пользователям и системным администраторам, для которых компьютер - в первую очередь офисное рабочее место или рабочий сервер. Ориентируясь на уже существующие, на рынке предложения для такого класса пользователей, Red Hat всегда уделял большое внимание разработке приложений с графическим интерфейсом для выполнения типичных задач по настройке и администрированию системы. Бизнес Red Hat развивался довольно успешно, в 1999 году эта компания акционировалась - сразу после выпуска акции росли в цене очень энергично, однако потом ажиотаж утих. В настоящее время доля Red Hat на рынке серверов и рабочих станций Linux очень велика. Благодаря Red Hat в сообществе пользователей Linux очень широкое распространение получил формат пакетов RPM.

Практически одновременно с Red Hat появился проект Debian. Его задача была примерно той же - сделать целостный дистрибутив Linux и свободного программного обеспечения GNU, однако этот проект был задуман как принципиально некоммерческий, проводимый в жизнь сообществом разработчиков, нормы взаимодействия в котором полностью соответствовали бы идеалам свободного ПО. Сообщество разработчиков Debian - международное, участники которого взаимодействуют через Internet, а нормы взаимодействия между ними определяются специальными документами - полиси (англ. policy ).

Сообщество разработчиков не извлекает никакой прибыли от продажи Debian, его версии распространяются свободно, доступны в Интернет, могут распространяться и на твёрдых носителях (CD, DVD), но и в этом случае их цена редко сильно превышает стоимость носителя и наценку, окупающую затраты на издание. Первоначально разработка Debian спонсировалась Фондом свободного программного обеспечения. Адресатами дистрибутивов Debian всегда в первую очередь были профессиональные пользователи, так или иначе связанные с академической разработкой программного обеспечения, которые готовы читать документацию и собственными руками организовать нужный профиль системы, соответствующий именно их задачам. Ориентация на такую аудиторию предопределила некоторые тенденции развития Debian: в нём никогда не было обилия «простых» графических средств настройки среды, всевозможных «мастеров», однако всегда уделялось много внимания средствам последовательной и единообразной интеграции программного обеспечения в единую систему. Именно в Debian появился менеджер пакетов (APT). В настоящее время Debian - самый популярный дистрибутив Linux среди пользователей, являющихся профессионалами в области информационных технологий.

Всякий раз, когда свободное программное обеспечение оказывается востребованным, немедленно возникает множество альтернативных решений - так произошло и с дистрибутивами Linux. После 1995 года возникло (и продолжает возникать) огромное количество коммерческих компаний и свободных сообществ, которые ставят своей задачей подготовку и выпуск дистрибутивов Linux. У каждого из них - свои особенности, своя целевая аудитория, свои приоритеты. К настоящему времени на рынке дистрибутивов выделилось несколько лидеров, которые предлагают более или менее универсальные решения и наиболее широко известны и используются. Помимо уже названных Red Hat и Debian следует назвать в ряду дистрибутивов, ориентированных на рядового пользователя, немецкий SuSE и французский Mandriva (до 2005 года - Mandrake), среди адресованных специалистам - Gentoo. Но помимо «крупных» игроков на рынке дистрибутивов есть гораздо большее количество менее распространённых дистрибутивов. Теперь перед пользователем, желающим установить Linux, встаёт вопрос выбора дистрибутива. Критерии выбора - и задачи, которые предполагается решать с помощью Linux, и уровень подготовки пользователя, и технологии, и предстоящие контакты с тем сообществом, которое занимается разработкой дистрибутива.

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

Дистрибутив операционной системы - это форма распространения системного программного обеспечения. Наличие дистрибутивов вызвано тем, что форма программного обеспечения, используемая для его распространения, почти никогда не совпадает с формой программного обеспечения работающей системы.

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

Программа установки позволяет также произвести первичную настройку системы.

Характеристики дистрибутивов:

политика дистрибутива

документ, регламентирующий кем и как разрабатывается дистрибутив, на каких основаниях в него включается программное обеспечение, какие требования (по размещению в файловой системе, взаимодействию с другими компонентами дистрибутива и т. п.) предъявляются к пакетам

программа-загрузчик

инициализация аппаратной части, загрузка (обычно) урезанной версии системы, инициализация носителей

программа установки

выбор параметров установки и пакетов для установки

программа начальной конфигурации

начальное конфигурирование системы

программа управления пакетами

установка пакетов на работающую систему, обновление пакетов и т. д.

наборы пакетов

наличие программ, необходимых пользователю, специализированность дистрибутива (общего назначения, спасательные, «живые», микро и т. д., а также ориентированность на решение конкретных задач - кластерные дистрибутивы, дистрибутивы для специфических областей науки и т. д.)

разработчик

технические, административные, финансовые и другие решения, положенные в основу дистрибутива, наличие поддержки пользователей

сообщество

компетентность пользователей, взаимопомощь, обмен опытом среди пользователей

прочие характеристики

простота установки и безопасность, лёгкость настройки, длина жизни, стабильность развития дистрибутива, платность дистрибутива и т.д.

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

В этой статье мы попытаемся разобраться что такое дистрибутив Linux и главное, чем дистрибутивы отличаются друг от друга, что выделяет одних из серой массы, а также как были созданы самые интересные дистрибутивы.

Недавно операционная система GNU Linux отметила свой 25-тый день рождения. На сегодняшний день накопилось уже просто огромное количество дистрибутивов Linux и новичкам будет очень сложно определиться с какого именно дистрибутива начать свое путешествие в этот мир. Но сначала нужно разобраться что это такое и почему существует так много дистрибутивов, а не несколько версий как в Windows (Home, Pro, Enterprise) или MacOS.

Понять почему так много дистрибутивов Linux можно, если принять во внимание, что ядро Linux распространяется с открытым исходным кодом. Любой человек может использовать его бесплатно и вносить свои изменения в код. Поэтому многие люди создают собственные дистрибутивы взяв за основу нужное ядро и добавив программное обеспечение, которое они хотят.

Нет ни одной организации, которая бы целенаправленно и самостоятельно разрабатывала Linux. Исходники доступны всем и в их разработке добровольно участвуют тысячи разработчиков со всего мира. За развитием ядра следит Фонд Свободного Программного Обеспечения, но здесь ситуация кардинально отличается от того, что мы можем наблюдать в Windows и Microsoft где за разработку всей системы отвечает одна компания.

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

Если проводить аналогию с Windows, то можно сравнить дистрибутив Linux со сборкой Windows. Каждый пользователь может взять все необходимые компоненты и собрать из них свой дистрибутив. Другое дело, что многие компании каким-либо образом улучшают эти компоненты, выпускают для них патчи, добавляют обновления, выпускают свое программное обеспечение и так далее.

А теперь давайте рассмотрим подробнее каждый из основополагающих компонентов каждого дистрибутива Linux:

Ядро Linux

Это главный компонент операционной системы. Ядро было разработано Линусом Торвальдсом еще в 1990 году. Для любой операционной системы ядро имеет жизненно важное значение. Множество программистов вносят свой вклад в разработку ядра, но все это находится под контролем Линуса Торвальдса. Он может контролировать все что касается добавления новых возможностей и изменения ядра.

Утилиты GNU

Возьмем для примера книжку для заметок. Чтобы что-то написать вам понадобиться карандаш, чтобы стереть написанный текст нужен ластик, также нелишними будут несколько маркеров, чтобы выделить нужные области текста. Все эти инструменты можно рассматривать как дополнительные инструменты, которые позволяют полноценно использовать блокнот для заметок.

Точно то же самое происходит в Linux. Вы не сможете использовать ядро само по себе. Для решения различных задач, например, работы с файлами, редактирования текста, управления системой вам нужны специальные утилиты. Эти утилиты разрабатываются проектом GNU и содержаться в пакете Coreutils.

Вернемся к аналогии с записной книжкой, вам нужно что-то с помощью чего вы смогли бы применять эти инструменты. Для этого вы используете руки. В Linux вам нужна оболочка. Это может быть командная оболочка, например, bash или графическая.

Дисплейный сервер

Дисплейный сервер или оконный менеджер выступает в роли посредника между пользователем и Linux. Его основная задача - управлять выводом на экран и принимать команды от пользователя через устройства ввода. Клиентские приложения, например, Firefox, Libreoffice используют дисплейный сервер, чтобы выводить содержимое своих окон на экран, а также чтобы получать команды от пользователя.

Чаще всего используется дисплейный сервер Xorg, на основе протокола отображения X Window System. Он разрабатывается X.Org Foundation. Также в последнее время появилось еще два новых дисплейных сервера, это Mir и Wayland. Последний будет использован по умолчанию в Fedora, а что из этого получится мы узнаем потом.

В X сервере существует отдельный компонент, под названием диспетчер окон, который позволяет управлять отображением окон на экране и их взаимодействием. Вы можете перемещать, изменять размеры и порядок оконных компонентов. В случае с Wayland эта функциональность отдается композитному менеджеру.

Графический интерфейс пользователя

Графический интерфейс или GUI, это компонент, который позволяет взаимодействовать с пользователем в графике и с помощью мыши, а не консольных команд. Консольный интерфейс используется в серверных редакциях Linux.

На протяжении многих лет были разработаны различные графические интерфейсы и окружения рабочего стола. Каждое из них выпускается отдельной и независимой командой разработчиков.

Чем отличаются дистрибутивы Linux?

Разработчики дистрибутивов Linux, как правило, берут за основу обычное ядро и добавляют к нему, по их мнению, нужное программное обеспечение. Довольно часто разработчики устанавливают собственное окружение рабочего стола, например, в Ubuntu используется Unity, в Linux Mint - Cinnamon. В разных дистрибутивах поставляется разное программное обеспечение по умолчанию, например, браузер Firefox или Chrome, музыкальный плеер, офисный пакет и т д.

Второе отличие - формат программного обеспечения, разные дистрибутивы могут использовать различные системы создания пакетов с программным обеспечением deb и rpm. Разработчики могут включать или наоборот, не включать программное обеспечение с закрытым исходным кодом, например, в Fedora поставляется только свободное ПО.

Каждый Linux дистрибутив имеет свои цели и философию, которая и характеризует цель его создания. Например, Debian построен для широкого распространения свободного программного обеспечения, Ubuntu - для начинающих пользователей, а ArchLinux - позволяет каждому пользователю создать свою систему именно для себя.

Заметьте, что открытое программное обеспечение не всегда бесплатно. Например, есть коммерческий дистрибутив Red Hat Enterprise Linux. Вы можете скачать сам дистрибутив бесплатно, но если захотите получать регулярные обновления, придется платить.

Наиболее приемлемым дистрибутивом для начинающих я считаю Ubuntu. Она достаточно проста в установке, разрабатывается Canonical и основана на Debian. Но есть и другие дистрибутивы, которые в последнее время набирают популярность среди новичков, например, Linux Mint.

Выводы

В этой статье мы рассмотрели что такое дистрибутив Linux и попытались разобраться чем отличаются дистрибутивы linux друг от друга. Конечно, всю информацию обо всех дистрибутивах Linux вместить в одну статью не получится, но я думаю уже стало намного понятнее что это и почему делается именно так. Если у вас остались вопросы, спрашивайте в комментариях!

На десерт, видео 5 лучших дистрибутивов Linux для начинающих. Я согласен не со всеми дистрибутивами, которые предлагает автор, но там есть интересные мысли:

Если Вы решили заняться распространением своих программ, то без установочного дистрибутива не обойтись. В настоящее время практически все программы имеют инсталлятор, обычно он называется Setup.exe. В этой статье мы рассмотрим на примере, как собрать инсталлятор для приложения Access и разберем некоторые особенности, которые необходимо при этом знать.

Как уже говорилось ранее, Access не позволяет сделать исполняемый файл, способный работать без Access. Но в то же время, Microsoft предлагает для решения проблемы воспользоваться пакетом Microsoft Office Developer , в состав которого входит и лицензия на распространение программы Microsoft Access runtime . Остановлюсь на этом подробнее.

Программа Microsoft Access runtime - это версия Access, которая позволяет пользователям выполнять, но не модифицировать приложение Access. Устанавливать Microsoft Access runtime вместо полной версии есть смысл только в том случае, когда нужна лицензионная чистота, а у клиента, у которого исполняется Ваша база, нет лицензии на Access. В этом случае придется покупать ODE (Оffice Developer Edition). Тогда вместе с его покупкой Вы получаете некоторые дополнительные инструменты и самое главное ПРАВО устанавливать клиентам вместе с разработанной вами базой еще и Run-time версии Аccess. В этом случае к клиенту не будет притензий по поводу незаконного использования Аccess. Иначе каждому клиенту необходимо купить лицензию MS AАccess.

В пакет ODE входит "создатель дистрибутивов" который включает в диистибутив Вашу MDB и Run-time версию. Все библиотеки необходимые для создания Run-time уже есть в полной версии Аccess (даже без ODE). Но тут есть одно НО (это для тех, кого беспокоит лицензионная "читота"):

Если Вы его не купите официально, то у клиентов все равно не будет права использовать даже Run-time версию.

Может возникнуть такая мысль: А что, если узнать какие файлы нужны Access для работы и включить их в установочный дистрибутив? Можно, но это не решает проблемы с лицензией. К тому же придется создавать достаточно сложную программу установки с проверкой имеющихся компонентов и установкой/регистрацией отсутсвующих. Причем в последнем случае можно при неумелых действиях даже разрушить систему.

Вообще, если рассматривать реальные ситуации с продажей приложений на Access, то лишь немногие разработчики (речь идет о России) действительно покупают лицензионные пакеты. Как правило это те, для кого "при определенном уровне развития бизнеса вопрос покупать - не покупать теряет свою актуальность" - или говоря проще, кто может себе позволить купить лицензионный пакет за 600$ - 1000$. Интересно потом выслушивать их чертыхания на форумах по поводу работы таких программ. Насколько я понял там те же самые "косяки", что и в пиратских версиях. Поэтому призывать Вас использовать только бесплатные или пиратские версии Office для Ваших программ я не буду, но и рекомендовать пользоваться лицензионным тоже не стал бы (см. выше).

Интересно, что полную версию Access можно запустить в runtime - режиме, задав в командной строке ключ /runtime. Например, создайте на рабочем столе ярлык, кликнете по нему правой кнопкой мыши, в появившемся диалоговом окне в поле объект напишите примерно так: (это для Office 2000 - XP, а для 2003 нужно будет исправить вместо Office10 - Office11)

"C:\Program Files\Microsoft Office\Office10\MSACCESS.EXE" "D: \Базы\Моя База.mdb"/runtime

а в поле «Рабочая папка»:

Теперь запустим приложение через этот ярлык. Откроется окно проекта Access, но ярлыка Access, а так же стандартных панелей инструментов уже там не будет. Это и есть runtime - режим.

Для начинающих разработчиков распространение приложений Access через пакет Microsoft Office Developer вряд ли приемлемо. Ведь он стоит денег, и не малых. Мы рассмотрим другой способ, при помощи бесплатного инсталлятора Inno Setup . Есть конечно и другие как платные, например InstallShield , так и бесплатные инсталляторы. Различаются они по удобству работы, размеру создаваемого дитсрибутива.

Inno Setup - свободно распространяемый инсталлятор для программ Windows. Английские версии появились ещё в 1997, теперь Inno Setup переводится на несколько языков, а инсталляторы может создавать более чем на 20 языках. Inno Setup превосходит многие коммерческие инсталляторы по возможностям, стабильности и размеру создаваемых файлов.

Основные характеристики:

  • программа может сравнивать информацию о версии файла
  • перемещать используемые файлы
  • регистрировать DLL/OCX/FNT/TLB и типовые библиотеки
  • инсталировать шрифты
  • проверяет, активны ли определенные программы
  • создание ярлыков быстрого доступа (например, через старт-меню или на рабочем столе)
  • осуществление записи в ini-файлы
  • встроенная машина для написания скриптов на языке Pascal
  • поддерживает многоязыковую инсталяцию
  • инсталяция и деинсталяция по умолчанию
  • весь код доступен (Borland Delphi 2.0-5.0)
  • защита пароля для setup
  • в случае отмены во время исполнения, все действия будут приведены в исходное состояние
  • поддерживает все 32-х битные версии Windows (95, 98, 2000, 2003, XP, Me, NT 4.0)
  • создает создание одного файла exe, что значительно облегчает процесс инсталяции Вашей программы
  • стандартный интерфейс Windows 2000/XP
  • ориентирован на пользователя (например, полный, минимальный, пользовательский вариант)
  • все инструменты для деинсталяции
  • инсталирование файлов: встроенная поддержка "deflate", bzip2, 7-zip LZMA файлы сжатия

Так же начиная с версии 2.0.6 Inno Setup включает в себя полную поддержку для MBCS. В более ранние версии последнее свойство не входит. А вот Web-инсталяцию не поддерживает.

Особенность создания инсталлятора в Inno Setup - это то, что инсталляторы создаются при помощи скриптов - простых текстовых файлов ASCII, напоминающих.INI файлы. Скрипты редактировать легче, чем, например, работать с интерфейсом Installshield. Скрипты имеют расширение ".iss" (inno setup script). В нём указываются все параметры инсталлятора, и при установке, программа ассоциирует себя с этими файлами. Скрипт разделен на секции, имена которых пишутся в квадратных скобках . Внутри секций существуют ключевые слова и указания, которые компилятор может читать и выполнять.

Комментарии начинаются с точки с запятой в начале строки и могут быть помещены в любое место скрипта. Коментарии блоком не возможны, как впрочем и вынесение коментария в середину строки. Последнее допускается компилятором, но впоследтвие, при выполнение, ведет к ошибке.

; -- Sample1.iss --
; Demonstrates copying 3 files and creating an icon.

Порядок секций не имеет значения. Все они (за исключением ) являются произвольными. Ключевому слову значение присваивается при помощи знака равенства (=).

Указания состоят из одного или нескольких параметров и их опций, а также флагов flags . Параметр же в свою очередь состоит из имени, за которым следует двоеточие : и значения. Параметры, опции и флаги отделяются друг от друга точкой с запятой ;

Рассмотрим в кратце основные секции:

Секция

Значение

сoдержит указания по поведению инсталяционной рутины, а также, как это должно выглядеть. Ключевые слова AppName, AppVerName и DefaultDirName являются обязательными. Все остальные - по необходимости
Здесь содержатся файлы для setup
ярлыки (иконки)
Соотношение компонентов к типу инсталяционной рутины
разрешает создать новые пустые папки
делает записи в INI- файлы
первое действое при инсталяции, cистаксис соответствует секции
разрешает специфические изменения в тексте
делает запись в регист
выполняет другие программы после того как данные успешно были исталированы, но еще до того как будет закрыто диалоговое окно
разрешает дополнитекльные действия в setup
устанавливает тип setup-а
последняя операция при деинсталяции. Таким образом папки и/или файлы будут удалены
первая операция при деинсталяции. Систаксис соответствует секции
содержит информацию о языке. как правило, не используется

Inno Setup работает внутри скрипта с различными предопределеными константами, которые, как правило, содержат пути (path). Способ написания: {имя} . Некоторые константы, такие как {app} и {group} могут/должны быть предопределены пользователем. Тот, кто сам желает определить константы, должен обратиться к припроцессеру Алекса Якимова (Alex Yackimoff).

Вот основные константы Inno Setup:

константа

пример

{win} путь в директорию/папку Windows C:\Windows
{sys} путь в системную папку Windows, в частности папку System32 C:\Windows\System или C:\Windows\System32
{app} путь к собственной аппликации (программе)
{pf} путь к программной папке C:\Programme
{cf} путь к общим данным C:\Programme\Gemeinsame Dateien
{dao} cоответствует{cf}\Microsoft Shared\DAO C:\Programme\Gemeinsame Dateien\Microsoft Shared\DAO
{src} путь к папке инсталявионной рутины, в момент выполнения setup R:\
{group} группа программ для стартового меню

Итак, рассмотрим задачи, которые нужно решить (определим только минимальные). Наш инсталлятор должен сделать следующее:

Распаковать файлы в нужные места
Создать папку в каталоге программы (папка «Коп» - для хранения резервных копий базы)
Создать меню запуска приложения в Пуск - Все программы, а так же иконку на рабочем столе

Это необходимый минимум. Но, разумеется, это далеко не все возможности Inno Setup. Ведь не зря его используют многие разработчики. Но в данной статье я ограничусь только этим, желающие глубже изучить возможности программы могут обратиться к справочной системе. В Интернет есть множество ссылок как на программу, так и на переводы справки. Например, Inno Setup 5.1.6. и справку к нему Вы можете скачать здесь… Английский сайт программы http://www.innosetup.com

Для начала попробуйте поэкспериментировать, создавая инсталлятор при помощи мастера, а затем изучая структуру полученного скрипта. В принципе, я думаю нет нужды подробно описывать, что где нажимать. Inno Setup настолько прост в освоении, что без проблем изучается, что называется «методом научного тыка». Вот например скрипт инсталятора, который делает определенные ранее задачи (все файлы дистрибутива находятся в каталоге D:\Setup.)


AppName=Моя программа
AppVerName=Моя программа. Версия 1.0.
AppPublisher=MyProgram, Inc.
AppPublisherURL=http://MyMySoft.ru/
AppSupportURL=http://MyMySoft.ru/
AppUpdatesURL=http://MyMySoft.ru/
DefaultDirName={pf}\MyProgram
DisableDirPage=no
DefaultGroupName=Моя программа
DisableProgramGroupPage=yes
LicenseFile=D:\Setup\license.txt
InfoAfterFile=D:\Setup\readme.txt
AlwaysCreateUninstallIcon=yes


Name: "desktopicon"; Description: "Создать ярлык на &Рабочем столе"; GroupDescription: "Дополнительные ярлыки:"


Source: "D:\Setup\Сервер.mdb"; DestDir: "{app}"; DestName: "Сервер.mdb";
Source: "D:\Setup\license.txt"; DestDir: "{app}";
Source: "D:\Setup\readme.txt"; DestDir: "{app}";
Source: "D:\Setup\Log.JPG"; DestDir: "{app}";
Source: "D:\Setup\Log.ico"; DestDir: "{app}";
Source: "D:\Setup\База.mdb"; DestDir: "{app}";


Filename: "{app}\MyProg.url"; Section: "InternetShortcut"; Key: "URL"; String: "http://MyMySoft.ru/"


Name: "{app}\Коп"


Name: "{group}\Моя программа"; Filename: "{app}\База.mdb" ;WorkingDir: "{app}";IconFilename:{app}\Log.ico
Name: "{group}\Сайт программы"; Filename: "{app}\MyProg.url"
Name: "{userdesktop}\Моя программа"; Filename: "{app}\База.mdb" ;WorkingDir: "{app}"; IconFilename:{app}\Log.ico;Tasks: desktopicon

Пример, как это все работает, Вы можете скачать ниже.

  • Обратиться в "Интерфейс" за дополнительной информацией/по вопросу приобретения продуктов

Файлы для загрузки

В тот момент, когда начинающий пользователь подходит к освоению процесса установки и удаления программ. Само слово «дистрибутив» происходит от английского «distribute», что в переводе звучит как «распространение», «распространять». Применительно к компьютеру, понятие дистрибутива означает распространение программы для ее установки (инсталляции) в виде упакованных файлов (или одного файла). Надо понимать, что сама программа и ее дистрибутив – это разные вещи.

Чем отличается дистрибутив от программы

Дистрибутив программы – это набор файлов (пакет) самой программы, определенным образом, файлы с инструкциями для операционной системы (куда и что устанавливать) и файл инсталлятор, который является своего рода инструкцией для пользователя, так называемый мастер установки, который пошагово поможет провести весь процесс установки программы.

При запуске инсталлятора проверяется соответствие вашего компьютера устанавливаемой программе (достаточно ли , места на , быстродействия , наличие необходимого дополнительного программного обеспечения, версия операционной системы и т.п.). При соблюдении всех условий начинается сам процесс , где мастер установки с помощью сообщений и подсказок проведет пользователя до самого окончания инсталляции. В процессе установки все настройки устанавливаемой программы записываются в специальную базу данных операционной системы, так называемый «реестр». Без записей в реестре, программа или не будет работать вообще или будет работать с ошибками.

Исходя из этого, папку с установленным приложением нельзя просто так взять и в другую папку или на другой компьютер – она просто не сможет нормально работать или не будет работать совсем. Хотя есть и исключения в виде так называемых portable программ, работающих без установки, но сложные и многофункциональные приложения требуют полноценной инсталляции из дистрибутива.

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

Если Вы, уважаемый читатель, имеете некоторое отношение к компьютерам и установленному на них разнообразнейшему программному обеспечению, то Вы наверняка слышали такое слово, как «дистрибутив ». Его часто употребляют в своих разговорах системные администраторы, программисты и прочие специалисты IT-сферы. Но что же такое – дистрибутив. Говоря простым языком, дистрибутивом является программа (или по-другому, пакет), которая устанавливает на компьютер то или иное программное обеспечение. Теперь немного углубимся в специфические компьютерные термины.

Дистрибутив (от английского distribute) – это одна из форм распространения программного обеспечения. Чаще всего дистрибутив состоит из программы для начальной загрузки системы; программы-установщика, которая служит для возможности выбора режима и параметров установки программного обеспечения; и набор программ-пакетов, которые содержат отдельные части программы. Для операционных же систем еще присутствует инициализация установленного в системе аппаратного обеспечения, которая следует непосредственно после первоначальной загрузки системы.

Появление и распространение дистрибутивов программ связано с тем, что те программы, которые уже установлены на компьютерах пользователей, различаются как между собой, так и от той исходной программы, с которой они устанавливались. Для унификации процесса установки программного обеспечения и использования в процессе его настройки и установки различных параметров и были придуманы дистрибутивы – единые установочные пакеты.

Установочные дистрибутивы для различных операционных систем распространяются по-разному. Так, для семейства операционок Microsoft Windows они идут в виде.EXE и.MSI инсталляторов, для Макинтошей – в виде образов формата DMG, для операционных систем Linux – в виде пакетов формата RPM или DEB, а помимо пакетов, может поставляться в виде исходных кодов, представленных архивами tar.gz или tar.bz2.

Чаще всего дистрибутивы через всемирную сеть Интернет перезают или в виде архивов или в виде образов дисков.

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

Теперь давайте немного поговорим о дистрибутивах операционной системы Linux. В настоящее время данные дистрибутивы существенно переросли мнение, что это – набор программ на диске и их установщик. В настоящее время ситуация значительно изменилась в лучшую сторону. Помимо существующего в системе пакетного менеджера, существуют целые репозитории самых разнообразных Linux-приложений. Пользователь имеет возможность всегда скачать самое свежее и нужное ему программное обеспечение из сети Интернет, и владельцы серверов, на которых и хранятся данные репозитории, гарантируют, что никакого вредоносного программного обеспечения вместе с данными пакетами пользователем скачано не будет. Помимо этого, скачанные версии программ гарантированно будут работать в системе.

И не всегда тот пакет, который Вы скачали из того или иного репозитория, будет тем же самым, что и пакет, который распространяет его автор. Так как в основу операционной системы Linux и всего ее программного обеспечения положен принцип открытости всего кода, то любой, кто заметил баг, дырку или уязвимость в том или ином программном продукте и сумевший найти достойное решение данной проблемы, может выложить исправленную версию установочного пакета.

Но иногда разработчики программных продуктов – дистрибутивов под Linux ведут себя довольно странно, непонятно и нелогично, выступая против различных нововведений и патчей, выпускаемых под их программные пакеты другими разработчиками. Таким примером может служить следующий: разработчик одного из оконных менеджеров – ion3, выступил против распространения патча для данной программы, которая позволяла сглаживать неровности экранных шрифтов, что увеличивало читабельность текстовой информации с экрана. Или когда создатели мега-популярного интернет-браузера FireFox выступили против того, чтобы в российском дистрибутиве AltLinux поисковой системой по умолчанию был Яндекс. Зачастую все заканчивается тем, что разработчик начинает выпускать свой продукт даже под другим названием.

Различные дистрибутив ы программ и операционных систем появляются довольно часто, и даже может подуматься, что в данном море можно утонуть. Но лишь некоторые из них становятся достойными внимания широкой общественности, так как помимо самой подборки программ существенным является и их поддержка, и стабильность работы, и многие другие факторы.

На этом мы заканчиваем данную статью. До встречи на других страницах!