Что такое дистрибутив linux

Обновлено: 06.07.2024

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

При выборе дистрибутива Linux вы всегда будете сталкиваться с тем, что у некоторого дистрибутива X набор различных опций и возможностей будет шире, чем у дистрибутива Y. Однако в некоторых случаях, дистрибутив Y может соответствовать вашим конкретным потребностям больше, чем дистрибутив X. Выбор за вами. Поскольку большинство дистрибутивов Linux являются бесплатными, то вы можете пробовать разные дистрибутивы до тех пор, пока не найдете именно тот, который подойдет вам больше всего. Данная статья призвана помочь вам сделать выбор.

Особенности дистрибутивов

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

Архитектура — тип процессоров, которые поддерживает дистрибутив.

Система инициализации — основополагающий подход к запуску и управлению процессами.

Менеджер пакетов — заданный по умолчанию инструмент управления пакетами дистрибутива.

Окружение рабочего стола — графический пользовательский интерфейс дистрибутива.

Сейчас мы всё это детально рассмотрим.

Архитектура

x86 (или i586/i686) — 32-битный процессор, совместимый с Intel и AMD.

x86_64 — 64-битный процессор, совместимый с Intel и AMD.

ARM — архитектура процессора, оптимизированного для использования на мобильных устройствах (планшетах, смартфонах).

PowerPC — устаревшая архитектура процессоров, применявшихся в свое время в компьютерах компании Apple.

Система инициализации

Cистема инициализации — это самый первый процесс (daemon), который запускается при загрузке компьютера с ОС на базе ядра Linux и функционирует в течение всего времени работы системы; является родительским процессом каждого последующего процесса, который запускается на устройстве.

Вопрос выбора системы инициализации является горячо оспариваемым: есть как сторонники/противники системы инициализации SysV, так и сторонники/противники системы systemd. А учитывая, что данное программное обеспечение определяет то, каким образом система будет управлять процессами, то выбор становится не таким простым и тривиальным, как может показаться на первый взгляд.

SysV — это традиционная система инициализации, уходящая своими корнями к Unix System V. Она считается более стабильной, но, возможно, менее функциональной, чем systemd.

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

Менеджер пакетов

Менеджер пакетов (или «пакетный менеджер») — это заданный по умолчанию инструмент управления пакетами дистрибутива.

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

Различные дистрибутивы имеют разные менеджеры пакетов:

RPM Package Manager — устанавливает/управляет пакетами формата .rpm. Использует такие инструменты, как dnf, yum и zypper.

flatpak — кроссплатформенный формат песочницы/контейнера.

pacman — пакетный менеджер в Arch Linux и производных от него дистрибутивах.

portage — разработан для Gentoo Linux, а теперь также используется ChromeOS и несколькими другими дистрибутивами.

snap — специфичная для Ubuntu форма развертывания контейнерных приложений.

eopkg — используется в дистрибутиве Solus.

Примечание: Хотя вы и можете выбрать конкретный инструмент для управления пакетами, но тип пакета жестко привязан к конкретному дистрибутиву. Таким образом, вы никогда не увидите версию Ubuntu, использующую пакеты формата .rpm. Различные дистрибутивы эксплуатируют разные репозитории программного обеспечения. Некоторые программы, созданные независимыми разработчиками, могут появляться только в одном или двух форматах пакетов. Если приоритетом для вас является возможность широкого доступа к программному обеспечению с открытым исходным кодом, то дистрибутив, использующий пакеты формата .deb или .rpm, скорее всего, будет наилучшим выбором.

Окружение рабочего стола

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

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

Современные рабочие столы, как правило, менее настраиваемы — они делают упор на эстетический дизайн и внешний вид.

Конфигурация окружений рабочего стола:

К более настраиваемым рабочим столам можно отнести Xfce, LDXE, Cinnamon, MATE и KDE.

К менее настраиваемым рабочим столам можно отнести DDE (Deepin), GNOME 3 и Pantheon.

То, что остается неизменным

В любом дистрибутиве остаются неизменными следующие основные принципы:

Всегда есть ядро Linux. Ядро является основным компонентом дистрибутивов Linux, которое Линус Торвальдс написал еще в 1991 году (сейчас у него тысячи авторов!). Ядро — это интерфейс между аппаратным обеспечением вашего компьютера (клавиатуры, мыши, дисплеи и пр.) и его программным обеспечением.

Стандартное программное обеспечение GNU (такие инструменты, как bash, ls, rm и т.д.). В большинстве своем это утилиты командной строки, которые составляют основную (но критически важную) часть любой Linux-системы. Можно считать, что ядро — это автобус, курсирующий между аппаратным и программным обеспечением компьютера, а ПО GNU — это набор инструментов, который нужен вам, чтобы удерживать автобус на дороге!

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

Платить или не платить?

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

Физические руководства (SUSE Linux Enterprise Server & Red Hat Enterprise Linux особенно хороши).

Поддержка от поставщиков дистрибутива в течение определенного периода времени. Такие дистрибьюторы, как Red Hat, предоставляют корпорациям гарантии высокого уровня сервиса поддержки клиентов.

Дополнительное коммерческое ПО (которое защищено авторским правом).

Обзор дистрибутивов Linux

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

Debian

Debian — это дедушка всех дистрибутивов Linux, у него очень много ответвлений, включая Ubuntu. Дистрибутив был выпущен в сентябре 1993 года. Изначально, отличия Debian от систем на базе Red Hat Linux заключались в том, что он имел огромную библиотеку программных пакетов (около 50 000 библиотек) и у него была автоматическая система управления программным обеспечением под названием apt. Это означало, что вместо того, чтобы загружать множество пакетов приложений по отдельности, вы могли просто сказать Debian, какое приложение вам нужно, и он автоматически сделает всё остальное за вас. Дистрибутив традиционно известен тем, что отстает от некоторых других дистрибутивов с точки зрения наличия самых современных пакетов, но компенсирует это хорошей стабильностью, поскольку основные пакеты хорошо протестированы.



Ubuntu

Ubuntu была выпущена в 2004 году компанией Canonical и быстро стала популярной. Canonical позиционировала Ubuntu в качестве простого Linux-дистрибутива с графическим рабочим столом, который должен был вытеснить использование командной строки. Это самый известный дистрибутив Linux.

Ubuntu — это простая в использовании система для новичков, являющаяся ответвлением от Debian Linux. Она поставляется с большим количеством предустановленных приложений и еще большим количеством самого разнообразного ПО, находящимся в её репозиториях. Компания Canonical также предлагает и коммерческую поддержку Ubuntu. Существует много различных сборок на основе Ubuntu:

Edubuntu — сборка, ориентированная на образовательные учреждения.

Kubuntu — в качестве окружения рабочего стола используется KDE.

Lubuntu — облегченная версия Ubuntu.

Помимо официальных сборок, сегодня в обращении находится более 40 сторонних версий!


Linux Mint

Если вам не нравится внешний вид рабочего стола Ubuntu, то вы можете посмотреть в сторону Linux Mint. Он основан на Ubuntu и ориентирован на начинающих пользователей, а в качестве окружения рабочего стола можно использовать Cinnamon, Xfce, MATE, LXDE или KDE.


Red Hat Enterprise Linux (RHEL)

Компания Red Hat была основана в 1993 году. Они стали, пожалуй, самой коммерчески успешной распространяющей Linux компанией в мире, и теперь принадлежат IBM.


У Red Hat Linux (дистрибутив от Red Hat, который выпускался в период с 1995 по 2003 год включительно) было девять мажорных (бесплатных) релизов дистрибутивов Linux, пока в 2003 году компания не решила сделать упор на коммерческий подход в распространении Linux. В результате чего был создан Red Hat Enterprise Linux (RHEL). Этот продукт используется многими фирмами по всему миру и является коммерческим дистрибутивом Linux с полноценной поддержкой. Большинство пользователей RHEL применяют его в качестве серверной операционной системы, а не настольной.

CentOS

CentOS — это бесплатная версия RHEL, которая является бинарно-совместимой с RHEL (т.е. имеет точно такое же программное обеспечение). Многие компании, которым не нужна коммерческая поддержка, используют CentOS.


Fedora

Когда в 2003 году Red Hat перешла на коммерческую модель распространения своих продуктов, она также выпустила дистрибутив под названием Fedora. Fedora — это ультрасовременный, полностью бесплатный, настольный дистрибутив Linux от Red Hat. По умолчанию в нем используется рабочий стол GNOME, однако, как и в случае с Ubuntu, существует большое множество различных сборок на основе Fedora. Поскольку дистрибутив Fedora всегда стремится быть на переднем крае технологий, то его стабильность может быть ниже, по сравнению с другими дистрибутивами (Debian или Ubuntu LTS).

Примечание: Fedora имеет репутацию компании, которая фокусируется на инновациях, интегрирует новые технологии на ранних стадиях и тесно сотрудничает с другими сообществами Linux.



openSUSE

SUSE когда-то был независимым немецким дистрибьютором Linux, который позже был куплен компанией Novell, а затем приобретен компанией Micro Focus. С тех пор они были приобретены и проданы несколько раз.

Как и Red Hat, SUSE также добавил коммерческую модель дистрибуции к своему дистрибутиву.

Полностью бесплатная версия Linux от SUSE называется openSUSE. Также есть версия openSUSE Tumbleweed — система, в которой постоянно появляются новые обновления программного обеспечения (т.н. rolling-release). В дистрибутиве вы можете найти различные инструменты разработчика ПО, утилита openQA создана для автоматизированного тестирования программного обеспечения, в то время как Kiwi создает образы Linux для развертывания на реальном оборудовании. По умолчанию в OpenSUSE используется рабочий стол KDE.


elementary OS

elementary OS — это настольный дистрибутив на базе Ubuntu. Он является невероятно интуитивно понятным для нового пользователя, пришедшего из другой системы (особенно из macOS). Некоторые из его наиболее интересных функций включают в себя кастомную среду рабочего стола под названием Pantheon, которая берет пример с внешнего вида macOS.



Gentoo Linux

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

Сердцем Gentoo является portage — мощная и гибкая система настройки и распространения программного обеспечения (менеджер пакетов), которая выполняет многие ключевые функции. Например, устанавливая новое программное обеспечение, portage автоматически создаст пользовательскую версию пакета, оптимизированного конкретно под целевое оборудование, гарантируя, что в пакете не будет ненужного, обременяющего ваш компьютер функционала. Благодаря portage, Gentoo может стать идеальным защищенным сервером, рабочей станцией разработчика, встроенным решением или чем-то еще, что вы пожелаете. Из-за его почти неограниченной адаптивности, Gentoo часто называют метадистрибутивом.


Также стоит отметить дистрибутивы Sabayon Linux и Calculate Linux, созданные на основе Gentoo:

Calculate Linux поддерживает оптимальный баланс между новейшими версиями программного обеспечения и безупречной работой системы, обеспечивая пользователя последними версиями приложений и стабильными версиями библиотек. Как правило, применение Calculate Linux подразумевает использование его вместе с Calculate Directory Server — службой каталогов, обеспечивающую централизованную и управляемую установку программного обеспечения, хранения почты, файлов, перемещение профилей пользователей и т.п. Поскольку Calculate Linux является rolling-release дистрибутивом (т.е. дистрибутивом с непрерывным циклом обновления), вы устанавливаете систему один раз и далее только лишь обновляете её в течение всего срока службы вашего оборудования.

MX Linux

MX Linux (сокр. от «MEPIS и antiX») — это легковесный дистрибутив Linux, основанный на стабильной версии Debian, являющийся совместной разработкой сообщества Linux-дистрибутивов antiX и MEPIS. Позиционируется как не очень требовательный к ресурсам компьютера дистрибутив, сочетающий довольно неплохое окружение рабочего стола вместе с высоким показателем стабильности системы, достаточной производительностью и простой настройкой. В качестве окружений рабочего стола используются Xfce, KDE и Fluxbox.



Kali Linux

Kali Linux (ранее известный как BackTrack Linux) — это дистрибутив Linux на базе Debian, содержащий несколько сотен программ и утилит, нацеленных на решение различных задач, затрагивающих такие аспекты информационной безопасности, как:

тестирование на возможность проникновения в компьютеры и компьютерные сети;

исследования уязвимости веб-приложений;

реверс-инжиниринг программного обеспечения и многое другое.

В качестве устанавливаемого окружения рабочего стола на выбор предлагаются Xfce, GNOME, KDE Plasma, LXDE, MATE. Также Kali Linux имеет поддержку широкого спектра устройств с процессорами, построенными на базе архитектуры ARM. Дистрибутив разрабатывается, финансируется и поддерживается компанией Offensive Security, ведущей компанией по обучению информационной безопасности.



Arch Linux/Manjaro/Slackware

Arch Linux не является производным от дистрибутивов Debian или Red Hat Linux. Он стоит особняком и почитается гиками за то, что является невероятно быстрым дистрибутивом, потому что создан на простой (но прочной) базе. Всё остальное может быть добавлено через его систему управления пакетами — pacman.


Manjaro — это самостоятельный дистрибутив, основанный на Arch Linux. Позиционирует себя как user-friendly настольный дистрибутив. И Arch Linux, и Manjaro относятся к rolling-release дистрибутивам.


Slackware, пожалуй, был первым настоящим дистрибутивом Linux, начиная с 1993 года! Подобно Arch Linux и Manjaro, он использует .tar.gz-пакеты, а не более популярные системы apt или yum. Если вы считаете себя продвинутым пользователем, но не хотите возиться с компиляцией пакетов, то, возможно, Arch Linux или Manjaro будут лучшим выбором для вас, так как они предлагают тот же уровень кастомизации, что и Slackware.


Если же вы только начинаете знакомиться с Linux, то Arch Linux, Manjaro и Slackware, вероятно, будут не самым лучшим выбором.

Zorin OS/Solus/Deepin

Если вам нравятся дистрибутивы, которые имеют схожий внешний вид с внешним видом Windows или macOS, или, возможно, просто что-то с действительно красивым интерфейсом, то обязательно ознакомьтесь с Zorin OS, Solus и Deepin. Например, Solus имеет свой собственный оконный менеджер под названием Budgie, и он был создан полностью с нуля, а не является производным дистрибутивом от Ubuntu или Fedora.

Так какой же дистрибутив мне выбрать?

В следующей таблице кратко представлены критерии для выбора дистрибутива Linux:

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

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

Операционные системы Linux

Все системы в этом списке расположены в случайном порядке, так что если система на последнем месте, то это еще не означает, что она не достойна внимания.

1. Debian и другие Deb системы


Эта группа включает дистрибутивы, основанные на Debian и другие, использующие систему управления пакетами Deb. Эта система пакетами была разработана для Debian и сейчас довольно часто используется популярных дистрибутивах, это сам Debian, Ubuntu, LinuxMint, AstraLinux, Elementary и множество других. Эти дистрибутивы используют оригинальное ядро Linux с несколькими исправлениями, которые только убирают ошибки.

2. Red Hat и другие Rpm системы


Пока сообщество разрабатывало систему управления пакетами Deb, компания Red Hat создала собственный менеджер пакетов - Rpm. Тогда все традиционные дистрибутивы Linux разделились на два лагеря - использующие deb и rpm. Сейчас обе системы управления пакетами хороши и нельзя сказать что она хуже другой. Вы можете почитать подробное сравнение Deb vs Rpm в статье по ссылке. Сейчас систему управления пакетами RPM используют такие дистрибутивы, как CentOS, Fedora, Red Hat, OpenSUSE и другие менее популярные.

3. Arch Linux и основанные на нем


Спустя некоторое время, появилось еще несколько дистрибутивов не использующие ни Deb ни Rpm. Один из таких дистрибутивов - ArchLinux. Тут применяется собственный пакетный менеджер pacman, который позволяет делать все то же самое что и deb, но в дополнение реализована простая система скользящих релизов. Благодаря ей в дистрибутиве всегда самое новое программное обеспечение. Arch быстро набрал популярность и на нем было основано несколько дистрибутивов - Manjaro, Antergos, Cinnarch и много других.

4. Gentoo


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

5. Linux From Scratch


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

6. ChromeOS


Еще позже Google выпустила свою операционную систему для нетбуков на ядре Linux. Фактически ChromeOS основана на Gentoo, но они настолько разные, что их невозможно объединить в один пункт. В этой системе Google реализовала такую идею, как облачная операционная система Linux. Ваше рабочее пространство - это браузер. Здесь вам все предстоит делать в браузере - редактировать документы, работать с видео и даже терминал Linux в браузере. Файлы преимущественно хранятся в облаке. Но это все еще Linux.

7. Android


Не все знают, но самая популярная операционная система для мобильных телефонов тоже использует ядро Linux. От Linux здесь осталось только ядро и еще несколько моментов, все остальное же Google заполонила своими различными фреймворками, Java и так далее. Возможности Linux ограничены, той же системой безопасности Bionic, которая запрещает загрузку динамических библиотек, но в терминале можно работать с пересобранными командами Linux, а в chroot окружении можно запустить полноценный Linux дистрибутив.

8. Slackware

Достаточно старый дистрибутив Linux, который в свое время считался самым Unix'овым. Раньше на нем было основано несколько дистрибутивов, таких, как Blacktrack, Slax, VectorLinux и другие. Но потом он медленно потерял свою популярность. Здесь используется собственный менеджер пакетов, который по возможностям не дотягивает до deb и rpm. Не поддерживается разрешение зависимостей, а команды для удаления и установки пакетов находятся в разных утилитах.

9. OpenWrt и основанные на нем


OpenWrt - это операционная система Linux 2017 для роутеров и маршрутизаторов на базе ядра Linux. Кроме самого ядра Linux, она поставляется урезанной версией библиотеки Си, стандартными утилитами Linux и BusyBox. Система занимает мало места и оптимизирована специально под маршрутизаторы. Большинство настроек выполняются в командной строке.

10. Tizen и другие IoT


Операционная система на базе ядра Linux, предназначенная для различных телевизоров, умных часов и других умных гаджетов. Система разрабатывается на основе ядра Linux компанией Samsung и уже сейчас достаточно часто используется. Существуют свои приложения и SDK для их разработки.

11. ОС для суперкомпьютеров

Состоянием на 2017 год операционные системы на базе Linux чаще всего используются на суперкомпьютерах. Каждая компания создает свое решение на базе ядра, которое оптимизировано под ее нужны и потребности. Из 500 самых мощных суперкомпьютеров 498 работают на Linux и еще два на UNIX подобной системе IBM AIX.


Выводы

В этой статье мы рассмотрели основные операционные системы Linux, которые существуют на данный момент. Надеюсь, после ее прочтения вы стали лучше понимать всю структуру этого огромного мира Linux. Конечно, существуют и другие интересные задумки, такие, как NixOS, CoreOS, TinyLinux и их популярность настолько низка что их не стоит упоминать. Вы еще что-нибудь знаете о системах Linux? Дополните информацию из статьи в комментариях!

Обзор "новой" операционной системе на базе Linux - Ось:

Краткая история Linux

Говоря «Linux», люди чаще всего подразумевают группу операционных систем, разработанных на базе Linux. Хотя, по сути, Linux – это только ядро операционной системы, и для разработки полноценной операционной системы используются различные инструменты и библиотеки GNU других ресурсов. Кроме того, все больше разработчиков используют Linux для разработки и запуска мобильных приложений. Кроме того, Linux играет ключевую роль в разработке таких устройств, как Хромбуки (портативные устройства под управлением операционной системы Chrome, которая в качестве ядра использует гибрид ядра Linux и сервисов, разработанных компанией Google).

Linux стал популярен по следующим причинам:

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

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

История разработки

Корни Linux уходят в два других проекта: Unix и Multics, которые ставили своей целью разработать многопользовательскую операционную систему.

Что такое Unix?

Unix

Unix – это собрание кроссплатформенных многопользовательских и многозадачных операционных систем.

Можно сразу сказать, что в данный момент Unix-системы являются одними из самых важных операционных систем. Влияние Unix распространилось и на языки программирования: язык C был разработан во время разработки Unix-систем.

Разработкой Unix занималась корпорация Bell Laboratories – в 1969 году они показали первую систему Unix. Чем дальше, тем большую популярность обретали системы Unix – в 70-х их начали устанавливать на компьютеры в учебных заведениях.

При создании Unix разработчики поставили перед собой три основные задачи:

  1. Использование минимального количества функций, сохранение простоты.
  2. Общность: одинаковые методы и механизмы в разных случаях.
  3. Комбинирование программ для решения задач, а не разработка новых программ с нуля.

Что касается отличительных особенностей Unix, то это:

  1. Практически постоянное использование командной строки.
  2. Использование конвейнеров.
  3. Настройка системы через использование простых (зачастую текстовых) файлов.

Unix имеет свою собственную философию. Программист Дуглас Макилрой, который разработал конвейнер в Linux, определил следующие правила:

Пишите программы, которые делают что-то одно и делают это хорошо.

Пишите программы, которые бы работали вместе.

Пишите программы, которые бы поддерживали текстовые потоки, поскольку это универсальный интерфейс.

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

В 1983 году было объявлено о создании GNU (GNU’s Not UNIX), Unix-подобной операционной системы. Произошло это под влиянием идеи основателя проекта Ричарда Столманна о необходимости создания свободно распространяемой операционной системы и программного обеспечения с открытым исходным кодом.

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

Именно эта мысль вдохновила Линуса Торвальдса, создателя Linux, начать в 1991 году работу над своей операционной системой. Linux, как и GNU, это Unix-подобная система, то есть система, появившаяся под влиянием Unix.

В дальнейшем именно система GNU/Linux станет той системой, которую сейчас называют просто Linux.

VDS Timeweb арендовать

Что такое Multics?

Multics

Multics – Multiplexed Information and Computing Service («Мультиплексная информационная и вычислительная служба») – это одна из самых первых операционных систем, в которой была реализована плоская модель хранения данных и четко разделена концепция файлов (сегментов). Создание Multics началось в 1964 году. Над системой работали разработчики компании Bell Laboratories – через несколько лет часть разработчиков начнет работу над созданием Unix.

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

Однако главные вычислительные задачи не были достигнуты при выпуске первой версии системы, и компания Bell Laboratories перевела свой интерес на другой проект, в результате которого на свет появился Unix.

Истоки Linux

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

Как уже было сказано, на Linux значительно повлияла система Unix, это заметно даже по названию. Впрочем, изначально проект назывался Freax, от слов «free» (бесплатный) и «freak» (странный), но в дальнейшем название было изменено на гибрид имени создателя (Линус) и Unix.

Эмблемой Linux стал Такс (Tux) – пингвин, нарисованный в 1996 году программистом и дизайнером Ларри Юингом. Впрочем, идею использовать именно пингвина придумал сам Линус Торвальдс. Теперь Такс является символом не только Linux, но и свободного программного обеспечения в целом.

С самого начала и по сей день Linux распространяется как свободное программное обеспечение с лицензией GPL. Это значит, что исходный код операционной системы может увидеть любой пользователь, и не только увидеть, но и доработать его. Единственное условие – измененный, модифицированный код должен быть доступен всем и распространяться по лицензии GPL. Это важно, так как дает возможность разработчикам использовать код и в то же время не бояться проблем из-за авторских прав.

Своему успеху Linux во многом обязан GNU: на момент выхода Linux существовало уже много свободных утилит, которые можно было использовать с разработанным ядром.

По факту Linux до сих представляет собой ядро Unix-подобной операционной системы, которое выполняет различные низкоуровневые задачи. В то же время проект GNU нуждался в ядре – разработка Линуса Торвальдса была очень своевременной.

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

Популярные дистрибутивы Linux

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

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

Количество существующих дистрибутивов Linux превышает 600 штук, более 300 из которых постоянно дорабатываются и обновляются.

Ubuntu

Ubuntu

Ubuntu – один из самых распространенных дистрибутивов, легко устанавливается и интуитивно понятен в работе. Отлично подходит для персональных компьютеров, ноутбуков и серверов. Разрабатывается и спонсируется компанией Canonical Ltd, но имеет активную поддержку и со стороны свободного сообщества. Самая популярная операционная система для веб-серверов.

Debian

Debian

Debian – еще один популярный дистрибутив GNU/Linux, который оказал существенное влияние на развитие всех GNU/Linux-операционных систем в целом. Основные черты Debian: широкие возможности, наличие множества репозиториев, высокое качество версий. Это самый стабильный дистрибутив из всех существующих.

Linux Mint

Linux Mint

Linux Mint – дистрибутив, основанный на Ubuntu и Debian. Linux Mint обладает красивым и удобным дизайном и подойдет даже начинающим пользователям. Поэтому его часто устанавливают на домашние компьютеры для того, чтобы иметь простую и удобную систему. Дистрибутив имеет поддержку различных мультимедийных форматов, в том числе включает проприетарные программы (Adobe Flash), поэтому хорошо подходит для работы с мультимедиа.

Manjaro

Manjaro

Manjaro – дистрибутив, основанный на Arch Linux. Благодаря большому количеству предустановленных программ (например, для офисной работы) он достаточно дружественен к новичкам, но в то же время может быть тонко настроен.

Arch

Arch

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

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

В качестве решения вопроса с операционной системой компанией AT&T была создана операционная система Unix, которая дала старт возникновению открытого программного обеспечения и созданию Linux. Но давайте по порядку.

История возникновения Unix


Первоначально Unix использовалась в основном в университетах и крупных финансовых корпорациях. К 1978 году насчитывалось около 600 машин с установленной на них системой Unix.

Появление проекта GNU

В восьмидесятые годы 20 века многие компании, в числе которых IBM и HP, начали создавать свои собственные (в том числе и коммерческие) версии системы Unix. Это привело к путанице дистрибутивов Unix. И к тому же фирмы, продающие свои дистрибутивы, прямо запрещали распространять их исходные коды. Из-за этого другие программисты не могли применять уже внедренные к тому моменту новые компоненты системы, и им приходилось писать их заново.

В 1982 году программист из Массачусетского технологического института (MIT) Ричард Столлман сталкивается с проблемой того, что существующая на тот момент коммерческая лицензия программного обеспечения, с которым он вынужден работать, ограничивает свободу своего использования и не позволяет Столлману обмениваться исходными кодами ПО даже в стенах института.


В рамках проекта GNU создаются необходимые для разработки ядра системы компоненты: текстовый редактор Emacs, набор компиляторов gcc, интерпретатор bash, архиватор gzip, утилиты sed, gawk, Autoconf и многие другие. Помимо этого, в 1988 году с целью юридически закрепить за пользователями права на копирование, модифицирование и распространение программ и исходных кодов проекта GNU, Столлманом публикуется лицензия GNU GPL (сокр. от «GNU General Public License» = «Универсальная общественная лицензия GNU»). Однако, несмотря на все его успехи, даже спустя 8 лет после старта проекта, не хватало самого важного компонента операционной системы — её ядра…

История создания Linux

В январе 1991 года, финский студент Линус Торвальдc, находясь под впечатлением от купленной им книги «Проектирование и реализация операционных систем» автора Эндрю С. Таненбаума, с целью детального изучения концепций и строения ОС Unix, решает купить новый компьютер на базе процессора Intel 80386, на который ставит разработанную Таненбаумом учебную ОС Minix.

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

И тогда в августе 1991 года Торвальдс объявляет в сети Usenet о том, что создает свою собственную (свободную) операционную систему с открытыми исходными кодами — Linux. Стоит отметить, что в тот момент речь еще не шла о полноценной системе, скорее это был её прообраз в виде ядра.

17 сентября того же 1991 года, без каких-либо особо публичных объявлений, выходит Linux версии 0.01.

А уже 16 апреля 1994, когда, по мнению Линуса, система стала полностью работоспособной, вышел первый, после более чем двух лет развития, мажорный релиз системы — Linux 1.0.

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


Таким образом, миру явилась полноценная работающая операционная система под названием «GNU/Linux», которую мы привыкли называть просто «Linux», состоящая из ядра Linux, написанного Торвальдсом, и окружающего программного обеспечения, созданного в рамках проекта Столлмана, GNU.

Что такое Linux?

Linux — это семейство Unix-подобных операционных систем, использующих ядро Linux, которое разработал финно-американский программист Линус Торвальдс. ОС, использующие ядро Linux, называются дистрибутивами Linux, и они являются такими же операционными системами как Microsoft Windows или Apple macOS, но с одной очень важной особенностью, а именно — их исходные коды являются открытыми, так как они распространяются под лицензией GNU GPL, которая подразумевает создание свободного и открытого программного обеспечения (open source software). Это означает, что у любого пользователя есть право изучать и изменять исходный код.

Примечание: Стоит отметить, что есть также и платные дистрибутивы Linux, например, Red Hat Enterprise Linux, Astra Linux Special Edition и др.


Пингвин Tux — талисман Linux

GNU/Linux или Linux?

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

Архитектура Linux-систем

На следующем рисунке показана архитектура Linux-систем:


Ядро — является основным компонентом операционной системы, взаимодействует непосредственно с аппаратным обеспечением, играя роль посредника между низкоуровневым «железом» и компонентами верхнего уровня.

Утилиты (vi, cat, sed, date, компиляторы и др.) — служебные программы, которые предоставляют пользователю большую часть функциональных возможностей операционной системы.

Ядро Linux

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

Как правило, большинство ядер делятся на три типа:

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

Монолитное ядро — это полная противоположность микроядра, т.к. в памяти компьютера всегда находится весь (или почти весь) код ядра, вследствие чего скорость его работы выше в сравнении с микроядром.

Гибридное ядро — это ядро, сочетающее в себе элементы как монолитной, так и микроядерной архитектур.

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

Заключение

Linux поддерживает целый ряд аппаратных устройств от телефонов и до суперкомпьютеров. Каждая операционная система на базе ядра Linux имеет ядро Linux и набор ПО для управления аппаратными ресурсами компьютера.

На следующих уроках мы детально рассмотрим тему лицензии GNU GPL, сравним Linux и Windows, выполним обзор дистрибутивов Linux и продолжим наше погружение в изучение Linux.

Читайте также: