09-08-2023
GNU и Linux | |
Рабочий стол KDE |
|
Разработчик |
Линус Торвальдс и многочисленные разработчики по всему миру |
---|---|
Семейство ОС | |
Тип ядра |
монолитное ядро с поддержкой подгружаемых модулей ядра |
Лицензия |
в основном GNU GPL |
Состояние |
актуальное |
GNU/Linux (возможно GNU+Linux) или просто Linux ([ˈlɪnəks][1][2] или [ˈlɪnʊks][3][4][5]), также Ли́нукс — Unix-подобная операционная система, созданная и распространяющаяся в соответствии с моделью разработки свободного и открытого программного обеспечения. В отличие от других ОС, Linux не имеет единой «официальной» комплектации, а распространяется (чаще всего бесплатно) в виде ряда различных готовых дистрибутивов, имеющих свой набор прикладных программ и уже настроенных под конкретные нужды пользователя.
Разработка свободной «целостной Unix-совместимой программной системы» была начата в 1983 году Ричардом Столлманом под названием Проект GNU, для которого им была создана свободная лицензия GNU GPL. К началу 1990-х многие библиотеки и системные программы были уже готовы, но важнейшие низкоуровневые элементы не были завершены. В 1991 году Линус Торвальдс создал определяющий компонент, ядро системы — Linux и выпустил его по созданной Столлманом лицензии GNU GPL. Таким образом из всех компонентов и другого программного обеспечения в 1991 году была создана полноценная работающая свободная операционная система GNU/Linux или просто Linux.
На начальном этапе Linux бесплатно разрабатывался только энтузиастами-добровольцами, но с успехом Linux и его массовым коммерческим использованием дорабатывать ОС и вносить свой вклад стали и компании, со временем став значительной силой. Всё ПО по-прежнему бесплатно доступно по свободным лицензиям. В 2008 году расчёты показывали, что для того чтобы «с нуля» разработать систему, аналогичную Fedora 9, потребовалось бы затратить 10,8 млрд долл.[6] Совокупная стоимость ядра Linux оценена в более чем 1 млрд евро (около 1,4 млрд долл.). Только за 2008 год ценность ядра Linux увеличилась на 225 млн евро. В системе Linux воплощён труд в эквиваленте 73 тыс. человеко-лет[7][8].
В настоящее время системы Linux лидируют на рынках смартфонов (Android занимает 64,1 % рынка[9]), интернет-серверов (60 %), самых мощных суперкомпьютеров (91 %), а также, согласно Linux Foundation, в дата-центрах и на предприятиях[10], имеют значительную долю рынка нетбуков (32 % на 2009 год[11]), а на рынке домашних компьютеров Linux прочно занимает 3 место с 1-2,5 % (самый популярный дистрибутив — Ubuntu с 20 миллионами пользователей). Многие производители ПО традиционно выпускают его только для трёх ОС — Windows, Mac OS и Linux. Система продолжает быстро совершенствоваться (например, новая версия ядра выпускается каждые 2-3 месяца[10], с 2005 года приняли участие более 7800 разработчиков из более чем 800 различных компаний[12]) и набирать популярность (за 9 месяцев с мая 2011 по январь 2012 доля Linux выросла на 64 %[13]).
С тех пор как Linux был создан как ОС для x86-ПК, он был портирован на множество платформ и процессоров, включая x86-64, PowerPC и ARM. Linux работает в роутерах, телевизорах и игровых приставках.
Согласно distrowatch, наиболее популярными дистрибутивами являются: deb-based (Debian, Mint, Ubuntu), RPM-based (RedHat, Fedora, Mageia, OpenSUSE), source-based (Slackware, Gentoo).
Собственные дистрибутивы Linux выпускаются различными компаниями и энтузиастами со всего мира, в том числе, например, из России и Украины.
Содержание |
Операционные системы на основе GNU и Linux называют «Linux» или «GNU/Linux»[14][15]. Первый вариант гораздо более популярен и чаще используется сторонниками термина открытого ПО[16], второй — сторонниками свободного ПО.
Хотя в английском второй вариант пишется и звучит как «GNU/Linux», это не всегда удобно в других языках. Поэтому, если можно показать равноправность GNU и Linux лучшим способом — например, GNU+Linux (гну плюс линукс), GNU-Linux (во французском), или GNU con Linux (в испанском), лучше использовать его, чем «GNU Linux» («гну ли́нукс»), подразумевающее, что ядро Linux было разработано или принадлежит проекту GNU[17]. Аналогичным образом построены названия TCP/IP и Ogg/Vorbis.
Linux произносится [ˈlɪnəks] (AmE), а также [ˈlaɪnəks] (BrE), [ˈlɪnʊks] и [ˈlɪnəks].
Операционная система Unix была задумана и реализована в 1969 году в Bell Laboratories компании AT&T в США Кеном Томпсоном, Деннисом Ритчи, Дугласом Макилроем и Джо Осанной.
Операционная система Unix была впервые выпущена в 1971 году и первоначально была написана целиком на ассемблере, что было обычной практикой того времени.
Позже, в 1973 году, Unix была переписана Деннисом Ритчи на языке программирования Cи (за исключением ядра и системы ввода/вывода).
То, что операционная система была написана на языке высокого уровня, позволило упростить её портирование на различные компьютерные платформы. Из-за особенностей лицензии AT&T была вынуждена открывать исходный код операционной системы всем обратившимся[18], что позволило Unix быстро развиться и стать популярной во многих научных учреждениях и предприятиях.
В 1984 году AT&T отделилась от Bell Labs.
Избавившись от необходимости бесплатного лицензирования системы, Bell Labs начала продажи Unix как проприетарного продукта.
Проект GNU был начат в 1983 году Ричардом Столлманом с целью создания «целостной Unix-совместимой программной системы», полностью состоящей из свободного программного обеспечения.
Работа началась в 1984[19]. Позднее, в 1985, Столлман основал Free Software Foundation, а в 1989 году составил GNU General Public License (GNU GPL).
В начале 1990-х многие из программ, необходимых в операционной системе (такие, как библиотеки, компиляторы, текстовые редакторы, командная оболочка UNIX, и оконная система), были завершены, в то время как разработка низкоуровневых элементов, таких как драйверы, демоны и ядра была приостановлена и они оставались незавершёнными[20]. Линус Торвальдс сказал, что если бы ядро GNU было доступно в то время (1991), он бы не решился написать своё собственное[21].
Несмотря на то, что из-за юридических проблем с лицензией 386BSD, из которой позже произошли NetBSD и FreeBSD, не была выпущена до 1992 года, её разработка предшествовала Linux. Линус Торвальдс сказал, что если бы 386BSD была доступна в то время, он, вероятно, не создал бы Linux[22].
MINIX является недорогой минимальной UNIX-подобной операционной системой, предназначенной для образовательных целей в области компьютерных наук, написанной Эндрю Таненбаумом.
Начиная с версии 3, MINIX стала свободной и была переработана для «серьезного» применения.
В 1991 году, во время обучения в Хельсинкском университете Торвальдс заинтересовался операционными системами[23] и был разочарован лицензией MINIX, которая ограничивала её использование только образовательными целями (что исключало любое коммерческое использование), вследствие чего начал работать над своей собственной операционной системой, которая в итоге стала Linux.
Торвальдс начал разработку ядра Linux на MINIX, и приложения, написанные для MINIX, были также использованы в Linux. Позже, когда Linux достиг определённой зрелости, появилась возможность продолжать разработку уже на базе самого Linux[24]. Приложения GNU также заменили приложения MINIX, так как код GNU, находящийся в свободном доступе, был более удобен для применения в молодой операционной системе. Исходный код под лицензией GNU GPL может быть использован в других проектах, если они также выпускаются под той же или совместимой лицензией. Для того чтобы сделать Linux доступным для коммерческого использования, Торвальдс начал переходить от своей первоначальной лицензии (которая запрещала коммерческое распространение) на GNU GPL.[25] Разработчики работали над полной интеграцией компонентов GNU с Linux с целью создания полнофункциональной и свободной операционной системы (Linux).
Дистрибутивы на основе Linux имеют широкое применение в различных областях: от встраиваемых систем до суперкомпьютеров[26][27][27], надёжно удерживают лидирующие позиции на рынке серверов, как правило, в составе комплекса серверного программного обеспечения LAMP[28].
Самая популярная ОС для смартфонов и планшетных компьютеров — Android, также основана на ядре Linux.
Также растёт использование Linux в качестве десктопной системы для дома и офиса[29][30][31][32][33][34][35].
Дистрибутивы Linux пользуются популярностью у различных государственных структур: Федеральное правительство Бразилии хорошо известно своей поддержкой Linux[36][37], а российские военные разрабатывают свой собственный дистрибутив Линукс[38].
Правительство индийского штата Керала выпустило предписание о переходе всех школ штата на использование Linux[39][40]. Для обеспечения технологической независимости Китай использует только Linux на своих процессорах Loongson[41]. Некоторые регионы Испании разработали свои собственные дистрибутивы Linux, которые используются в образовании и госуправлении, например, такие как gnuLinEx в Эстремадуре и Guadalinex в Андалусии. Португалия также пользуется своим собственным дистрибутивом Caixa Mágica, разработанным для нетбука Magalhães[42] и государственной программы электронного образования[43]. Франция и Германия предпринимают ряд шагов по увеличению использования Linux[44].
Линус Торвальдс продолжает руководить разработкой ядра. Ричард Столлман возглавляет Free Software Foundation, которая, в свою очередь, поддерживает разработку компонентов GNU.
Наконец, частные лица и корпорации разрабатывают не-GNU-компоненты.
Компоненты, разработанные сторонними производителями, являются результатом огромного объёма работы и могут быть как модулями ядра, так и пользовательскими приложениями и библиотеками.
Компании и сообщества разработчиков Linux объединяют и интегрируют ядро, компоненты GNU и не-GNU, дополнительное программное обеспечение, средства управления пакетами и распространяют получившиеся системы в виде дистрибутивов Linux.
Официальным логотипом и талисманом Linux является пингвин Tux (произносится Такс, в Рунете часто употребляется неправильное Тукс). Был создан в 1996 году Ларри Юингом (англ. Larry Ewing)[45].
Линукс-системы представляют собой модульные Unix-подобные операционные системы. В большей степени дизайн Линукс-систем базируется на принципах, заложенных в Unix в течение 1970-х и 1980-х годов. Такая система использует монолитное ядро Линукс, которое управляет процессами, сетевыми функциями, периферией и доступом к файловой системе.
Драйвера устройства либо интегрированы непосредственно в ядро, либо добавлены в виде модулей, загружаемых во время работы системы.
Отдельные программы, взаимодействуя с ядром, обеспечивают функции системы более высокого уровня. Например, пользовательские компоненты GNU являются важной частью большинства Линукс-систем, включающей в себя наиболее распространенные реализации библиотеки языка Си, популярных оболочек операционной системы, и многих других общих инструментов Unix, которые выполняют многие основные задачи операционной системы.
Графический интерфейс пользователя (или GUI) в большинстве систем Линукс построен на основе X Window System.
В Линукс-системах пользователи работают через интерфейс командной строки (CLI), графический интерфейс пользователя (GUI), или, в случае встраиваемых систем, через элементы управления соответствующих аппаратных средств.
Настольные системы, как правило, имеют графический пользовательский интерфейс, в котором командная строка доступна через окно эмулятора терминала или в отдельной виртуальной консоли.
Большинство низкоуровневых компонентов Линукс, включая пользовательские компоненты GNU, используют исключительно командную строку.
Командная строка особенно хорошо подходит для автоматизации повторяющихся или отложенных задач, а также предоставляет очень простой механизм межпроцессного взаимодействия.
Программа графического эмулятора терминала часто используются для доступа к командной строке с рабочего стола Линукс.
Линукс-системы обычно реализуют интерфейс командной строки при помощи оболочки операционной системы, которая также является традиционным способом взаимодействия с системой Unix.
Дистрибутивы, специально разработанные для серверов, могут использовать командную строку в качестве единственного интерфейса.
На настольных системах наибольшей популярностью пользуются пользовательские интерфейсы, основанные на таких средах рабочего стола как KDE Plasma Desktop, GNOME и Xfce[46], хотя также существует целый ряд других пользовательских интерфейсов. Самые популярные пользовательские интерфейсы основаны на X Window System (часто просто «X» или «иксы»).
«X» предоставляет прозрачность сети и позволяет графическим приложениям, работающим на одном компьютере, отображаться на другом компьютере, на котором пользователь может взаимодействовать с ними[47].
Другие графические интерфейсы, такие как FVWM, Enlightenment и Window Maker, могут быть классифицированы как простые менеджеры окон X Window System, которые предоставляют окружение рабочего стола с минимальной функциональностью.
Оконный менеджер предоставляет средства для управления размещением и внешним видом отдельных окон приложений, а также взаимодействует с X Window System.
Окружение рабочего стола включает в себя оконные менеджеры, как часть стандартной установки: (Metacity для GNOME, KWin для KDE, Xfwm для Xfce с 2010 года), хотя пользователь при желании может выбрать другой менеджер окон[47].
GNU/Linux работает на множестве архитектур процессора, таких как x86, x86-64, PowerPC, ARM, Alpha AXP, SPARC, Motorola 680x0, SuperH, IBM System/390, MIPS, PA-RISC, AXIS CRIS, Renesas M32R, Atmel AVR32, Renesas H8/300, NEC V850, Tensilica Xtensa и многих других.
В отличие от коммерческих систем, таких как Windows или Mac OS X, Linux не имеет географического центра разработки. Нет и организации, которая владела бы этой системой; нет даже единого координационного центра. Программы для Linux — результат работы тысяч проектов. Некоторые из этих проектов централизованы[48][49], некоторые сосредоточены в фирмах. Многие проекты объединяют хакеров[50] со всего света, которые знакомы только по переписке. Создать свой проект или присоединиться к уже существующему может любой и, в случае успеха, результаты работы станут известны миллионам пользователей. Пользователи принимают участие в тестировании свободных программ, общаются с разработчиками напрямую, что позволяет быстро находить и исправлять ошибки и реализовывать новые возможности.
Именно такая гибкая и динамичная система разработки, невозможная для проектов с закрытым кодом, определяет исключительную экономическую эффективность Linux[51]. Низкая стоимость свободных разработок, отлаженные механизмы тестирования и распространения, привлечение людей из разных стран, обладающих разным видением проблем, защита кода лицензией GPL — всё это стало причиной успеха свободных программ[52].
Конечно, такая высокая эффективность разработки не могла не заинтересовать крупные фирмы, которые стали открывать свои проекты. Так появились Mozilla (Netscape, AOL), OpenOffice.org (Oracle), свободный клон InterBase (Borland) — Firebird, SAP DB (SAP). IBM способствовала переносу Linux на свои мейнфреймы.
С другой стороны, открытый код значительно снижает себестоимость разработки закрытых систем для Linux и позволяет снизить цену решения для пользователя. Вот почему Linux стала платформой, часто рекомендуемой для таких продуктов, как СУБД Oracle Database, DB2, Informix, SyBase, SAP R3, Domino.
Сообщество Linux поддерживает связь посредством групп пользователей Linux.
В апреле 2011 года семейство операционных систем на базе ядра Linux — четвёртое по популярности в мире среди клиентов Всемирной паутины (включая мобильные телефоны). По разным данным, их популярность составляет от 1,5 до 5 %[53][54]. На рынке веб-серверов доля Linux порядка 32 % (ещё 64,1 % указаны как доля Unix)[55]. По данным TOP500, Linux используется на 91 % самых мощных суперкомпьютеров планеты[56].
Можно выделить несколько основных областей, где нередко можно встретить Linux:
Большинство пользователей для установки Linux используют дистрибутивы. Дистрибутив — это не просто набор программ, а ряд решений для разных задач пользователей, объединённых едиными системами установки, управления и обновления пакетов, настройки и поддержки.
Самые распространённые в мире дистрибутивы[59]:
Помимо перечисленных, существует множество других дистрибутивов, как базирующихся на перечисленных, так и созданных с нуля и зачастую предназначенных для выполнения ограниченного количества задач.
Каждый из них имеет свою концепцию, свой набор пакетов, свои достоинства и недостатки. Ни один не может удовлетворить всех пользователей, а потому рядом с лидерами благополучно существуют другие фирмы и объединения программистов, предлагающие свои решения, свои дистрибутивы, свои услуги. Существует множество LiveCD, построенных на основе Linux, например, Knoppix. LiveCD позволяет запускать Linux непосредственно с компакт-диска, без установки на жёсткий диск.
Для желающих досконально разобраться с Linux подойдёт любой из дистрибутивов, однако довольно часто для этой цели используются так называемые source-based дистрибутивы, то есть предполагающие самостоятельную сборку всех (или части) компонентов из исходных кодов, такие как LFS, Gentoo или CRUX.
Российские дистрибутивы rpm-base: Rosa, ALT Linux, ASPLinux и НауЛинукс; Source-base: Calculate Linux и AgiliaLinux; deb-base: Runtu и Rosinka.
Украинские дистрибутивы rpm-base: MyLinux[60]; Source-base: Blin[61] и Grusha Linux[62]; deb-base: Ubuntu Install Box[63] и Ubuntu DesktopPack[64]
Linux ранее критиковалась за неудобство использования в настольных компьютерах, в частности, из-за ощутимой нехватки полноценных версий популярных программ (особенно офисных пакетов) и проблем с поддержкой оборудования[65], что представляло серьёзную проблему для пользователей ноутбуков, так как они обычно используют множество проприетарных комплектующих. Также проблемой являлась сложность изучения в Linux того, что выходит за рамки повседневного использования, и трудности в настройке оборудования. Более того, Linux обвиняли в «неидеальности» для многих опытных пользователей[66][67][68].
Новые дистрибутивы Linux целенаправленно сконцентрировались на этом вопросе и значительно улучшили положение Linux среди настольных ОС:
Linux быстро приобрёл популярность среди малого бизнеса и домашних пользователей. В этом огромная заслуга Gutsy Gibbon (кодовое название Ubuntu 7.10 фирмы Canonical). Наряду с такими дистрибутивами, как Linspire, Mint, Xandros, OpenSUSE и gOS, Ubuntu (вместе с родственными ему Kubuntu, Edubuntu и Xubuntu) сгладил большинство острых углов Linux и отшлифовал для применения в настольных системах. Без сомнения, Gutsy Gibbon — самый стабильный, полный и дружелюбный дистрибутив Linux на сегодня. Установить и настроить его теперь проще, чем Windows.
— The Economist, декабрь 2007
Тем не менее, существуют проблемы с нехваткой драйверов для некоторых специальных устройств и альтернатив некоторым платным программам с закрытым исходным кодом для Windows.
В исследовании «Security Report: Windows vs Linux»[69] Николаса Петрели (Nicholas Petreley) проведено сравнение безопасности Linux и Windows на основе подсчёта критических уязвимостей, относящихся к Windows Server 2003 и Red Hat Enterprise Linux AS v.3. При оценке степени критичности использовались метрики компаний-разработчиков, а также собственные, базирующиеся на степени возможности причинения вреда, простоты использования и характером доступа к уязвимой системе, необходимым для использования уязвимости. Выявлено, что в 38 % уязвимостей Windows Server 2003 (по оценке Microsoft, 50 % по независимой шкале оценок степени угрозы) являлись критическими, в то время как только 10 % (по независимой шкале оценок) уязвимостей Red Hat Enterprise Linux AS v.3 были критическими. Исследование также содержит обоснование выбора методологии сравнения, проверку результатов на основе данных US-CERT, сравнительный анализ архитектуры операционных систем Linux и Windows в контексте обеспечения лучшей безопасности, а также содержит описание логических ошибок, систематически допускаемых авторами, получающими противоположный результат.
Одно из исследований указывает на то, что серверы на основе Linux зачастую более уязвимы, чем серверы на основе ОС семейства Microsoft Windows, главной причиной чего аналитики называют ошибки администраторов.[70]
Microsoft развернула обширную критику Linux в своей маркетинговой кампании «Get the Facts»[71]. В частности, Microsoft утверждает следующее:
Корпорация опубликовала различные исследования-кейсы в подтверждение этого. Однако их достоверность ставится под сомнение различными авторами, заявляющими о фальсификации этих сравнений со стороны Microsoft[74][69].
В частности, при сравнении количества уязвимостей, Майкрософт приводила данные об уязвимостях во множестве программных продуктов, в том числе пользовательского уровня, поставляемых в составе некоторых дистрибутивов Linux, при этом сравнивая это количество с уязвимостями лишь самой операционной системы Windows, которая сама по себе не имеет такого количества приложений, и, разумеется, никогда не используется в подобном «голом» виде.
При сравнении стоимости владения Майкрософт ссылается на цены поддержки Red Hat Linux серверных решений, приводя в качестве примера самую дорогую подписку (Premium Subscription, круглосуточная поддержка по телефону или через веб-интерфейс). Кроме того, при сравнении используется неодинаковое аппаратное обеспечение — дешёвое для Windows и дорогое для Linux.
Эта и подобная критика кампании «Get the Facts» заставила Microsoft свернуть[75] её и перейти к более мягкой агитации «сравнением».
Linux в Викиучебнике? | |
Linux в Викиновостях? |
Проект Linux | ||
---|---|---|
Общее |
Adoption • Сравнение с Windows • Критика • GNU (Проект) • Ядро • История • The Linux Foundation • Закон Линуса • Именование • Tux |
|
Распространение | ||
Приложения | ||
Персоналии | ||
СМИ | ||
Списки | ||
Мобильность | ||
Прочее |
Семейства дистрибутивов Linux (список • сравнение) | |
---|---|
Debian |
Стабильные: MEPIS • Knoppix • CrunchBang • Elive • Тестовые: Linux Mint • Dreamlinux • Sid: Ubuntu • Aptosid |
Ubuntu | |
Fedora |
Сборки: Design Suite, Electronic Lab, Games, Security Lab, Sugar on a Stick, Robotics, Scientific • Пересборки: RFRemix, Fusion• Производные: RHEL • |
Red Hat |
Mandriva • Пересборки: CentOS • НауЛинукс • Scientific • Oracle • Yellow Dog • |
Mandriva |
PCLinuxOS • Gaixa • ALT Linux • Форки: Rosa Linux • Mageia • |
Slackware | |
Gentoo | |
Arch | |
Независимые | |
Специальные |
Минималистичные: Damn Small • Puppy • SliTaz • Tiny Core • Спасательные: SystemRescueCD • GParted • RIPLinuX • Clonezilla • Finnix • Судебные: BackTrack • NetSecL • Игровые: linuX-gamers • NAS: OpenMediaVault • Openfiler • Встраиваемые: Access • Android • bada • Baidu Yi • B2G, FireFoxOS • Familiar • WebOS • Tizen • Mobilinux • Openmoko • QtMoko • |
Операционные системы (история • список) | |
---|---|
Free / Open source |
|
Proprietary |
Unix-подобные: Apple MacOS X • HP-UX • IBM AIX • QNX • SCO OpenServer • Solaris • Tru64 • Не Unix-подобные: MS Windows • Встраиваемые: BlackBerry OS • Apple iOS • PSP OS • Symbian OS • MS Windows (Embedded • Phone) |
Линукс.