Блок 1
Что такое Linux: история, устройство, философия
Теперь, когда рабочее место готово, а базовые понятия об операционных системах усвоены, — самое время разобраться, что же такое Linux на самом деле: откуда он взялся, как устроен изнутри на концепт…
Введение в блок
Теперь, когда рабочее место готово, а базовые понятия об операционных системах усвоены, — самое время разобраться, что же такое Linux на самом деле: откуда он взялся, как устроен изнутри на концептуальном уровне и почему дистрибутивов так много. Этот блок — полностью теоретический, но крайне важный: без него дальнейшая практика будет напоминать заучивание команд без понимания, а нам нужно осознанное владение системой.
Урок 1.1. История UNIX и рождение Linux
Понять исторические корни Linux — это даст понимание, почему система устроена именно так, а не иначе, и откуда взялись многие «странности» и традиции Linux.
Теория
UNIX — это операционная система, созданная в 1969 году в исследовательской лаборатории компании Bell Labs (США) программистами Кеном Томпсоном и Деннисом Ритчи. UNIX стала невероятно влиятельной: множество идей, заложенных в неё полвека назад, до сих пор используются в современных системах — включая Linux, macOS (которая тоже является потомком UNIX) и даже отчасти Android.
Ключевые идеи UNIX, которые перекочевали в Linux:
- «Всё есть файл»** — принцип, при котором даже устройства (диски, принтеры) и процессы в системе представлены как файлы, с которыми можно работать одинаковыми инструментами. Подробнее об этом — в Блоке 5.
- Маленькие программы, каждая из которых хорошо делает одну вещь**, и их можно комбинировать друг с другом (это мы увидим на примере конвейеров команд в Блоке 6).
- Многопользовательность** — система изначально спроектирована так, что с одним компьютером одновременно могут работать несколько разных людей со своими правами.
В 1970–80-х годах UNIX стал платным коммерческим продуктом, права на который принадлежали разным компаниям, и версии UNIX начали расходиться друг от друга (AT&T UNIX, BSD и другие ветки). Это создавало проблему: закрытый исходный код и высокая цена лицензий ограничивали доступ обычных программистов и студентов к изучению и доработке системы.
В ответ на эту проблему в 1983 году программист Ричард Столлман запустил проект GNU (расшифровывается рекурсивно как «GNU's Not Unix» — «GNU — это не UNIX») с целью создать полностью свободную операционную систему, аналогичную UNIX по возможностям, но с открытым исходным кодом, который любой желающий может изучать, изменять и распространять. К началу 1990-х годов проект GNU создал почти все компоненты полноценной ОС — компиляторы, текстовые редакторы, командную оболочку (Bash — как раз тот, о котором пойдёт речь в Блоке 4) — но не хватало одного центрального компонента: ядра операционной системы (что это такое — разберём в следующем уроке).
В 1991 году финский студент Линус Торвальдс в качестве учебного хобби-проекта начал писать собственное ядро операционной системы и опубликовал его в открытом доступе под названием Linux. Это ядро идеально дополнило почти готовый набор программ GNU — вместе они образовали полноценную свободную операционную систему, которую по-хорошему стоит называть GNU/Linux (почему — разберём в уроке 1.3).
С тех пор Linux развивался силами тысяч программистов-добровольцев по всему миру, а также крупных компаний (Google, IBM, Red Hat, Intel и другие), которые заинтересованы в развитии открытой и надёжной операционной системы.
Практика
Практика этого урока — исследовательская.
Шаг 1. Откройте сайт kernel.org — официальный сайт разработки ядра Linux.
Что вы увидите: список версий ядра Linux с датами их выхода — это живое доказательство того, что разработка идёт непрерывно уже более 30 лет.
Шаг 2. Запишите в конспект текущую стабильную версию ядра Linux (она указана как «stable» на этом сайте) — эта цифра поможет вам в дальнейшем ориентироваться, насколько «свежая» система у вас установлена.
Разбор команд
Команд пока нет.
Возможные ошибки
- Ошибка:** думать, что Linux и UNIX — это одно и то же.
Почему возникает: Linux был создан «по образу и подобию» UNIX и во многом похож на него.
Как определить: встретив утверждение «Linux — это UNIX», не спешите соглашаться.
Как исправить: запомнить точную формулировку — Linux является UNIX-подобной системой (следует принципам UNIX), но не является самим UNIX юридически и технически, так как написан с нуля.
Как избежать: различать понятия «UNIX-подобная система» (Linux, BSD, macOS) и «настоящий UNIX» (исторические и современные системы, прошедшие официальную сертификацию).
Практические задания
- Найдите в интернете год выхода первой версии ядра Linux (0.01) и запишите его в конспект.
- Опишите своими словами в двух-трёх предложениях, зачем Ричард Столлман запустил проект GNU.
Проверка знаний
Вопрос 1. Чего не хватало проекту GNU к 1991 году для создания полноценной операционной системы?
Ответ: Не хватало ядра — центрального компонента, который бы напрямую управлял оборудованием. Этот пробел закрыл Линус Торвальдс, опубликовав ядро Linux.
Вопрос 2. Является ли Linux точной копией UNIX?
Ответ: Нет. Linux написан с нуля и лишь следует тем же принципам и идеям, что и UNIX (поэтому его называют UNIX-подобной системой), но исходный код Linux полностью самостоятельный.
Итоги урока
Вы изучили: историю UNIX, проекта GNU и появления ядра Linux.
Вы умеете: объяснить происхождение Linux и различать понятия UNIX / UNIX-подобная система / GNU / Linux.
В следующем уроке потребуется: это понимание, чтобы подробно разобрать, что такое ядро операционной системы.
Урок 1.2. Что такое ядро (kernel) и зачем оно нужно
Разобраться в понятии «ядро» — одном из ключевых терминов, который будет встречаться на протяжении всего курса.
Теория
Ядро (kernel) — это центральная часть операционной системы, программа, которая напрямую взаимодействует с физическим оборудованием компьютера (процессор, память, диски, сетевая карта и так далее) и предоставляет всем остальным программам безопасный и удобный способ этим оборудованием пользоваться, не обращаясь к нему напрямую.
Представьте ядро как диспетчера на большом складе. Обычные работники склада (программы) не могут сами лазить по всем полкам без разрешения — это привело бы к хаосу: два работника могли бы одновременно попытаться взять один и тот же товар, что-то уронить, перепутать полки. Вместо этого работники обращаются к диспетчеру («мне нужна коробка с полки А»), а диспетчер уже сам решает, как безопасно и эффективно это выполнить, при этом отслеживая запросы от всех работников одновременно.
Так и ядро Linux:
- решает, какой программе (процессу — подробнее в Блоке 10) сколько времени процессора выделить, если программ запущено много, а процессор один или несколько;
- управляет оперативной памятью — следит, чтобы одна программа случайно не залезла в область памяти другой и не испортила её данные;
- управляет доступом к файлам на диске через файловую систему (подробно — в Блоке 5);
- управляет сетевыми устройствами, чтобы несколько программ могли одновременно пользоваться интернетом без конфликтов;
- обеспечивает базовую безопасность — например, следит, чтобы обычная программа не могла напрямую менять критические системные настройки без явного разрешения (это тесно связано с темой пользователей и прав доступа из Блока 8).
Важно понимать: сам по себе один только kernel Linux — это ещё не полноценная операционная система, с которой удобно работать человеку. Ядро не имеет графического интерфейса, не умеет само по себе открывать текстовые редакторы или браузеры. Именно поэтому вокруг ядра Linux собирается множество дополнительных программ (в том числе программы проекта GNU из предыдущего урока) — и всё вместе это уже называется полноценной операционной системой, а конкретный готовый набор программ вокруг ядра называется дистрибутивом (об этом — в уроке 1.4).
Практика
Шаг 1. В виртуальной машине (когда мы установим Ubuntu в Блоке 2) можно будет узнать версию установленного ядра одной командой. Пока, до установки, запомните эту команду — вы вернётесь к ней позже: uname -r. Мы разберём её подробно, когда у вас появится рабочая система.
Шаг 2. Найдите на сайте kernel.org (тот же, что использовали в прошлом уроке) раздел с описанием, из каких примерно частей состоит ядро (планировщик процессов, управление памятью, драйверы устройств, сетевая подсистема, файловые системы) — просто ознакомьтесь, детальное изучение каждой части ядра выходит за рамки курса системного администратора и относится к профессии разработчика ядра.
Разбор команд
Команда uname -r будет подробно разобрана в Блоке 4, когда мы начнём полноценно работать в терминале.
Возможные ошибки
- Ошибка:** путать понятия «ядро» и «дистрибутив» (например, говорить «я установил Linux 6.8», имея в виду версию дистрибутива).
Почему возникает: оба понятия связаны с версионностью и звучат похоже в разговорной речи.
Как определить: если речь про Ubuntu 24.04 или Fedora 40 — это версия дистрибутива; если про 6.8 или 6.9 — это версия ядра.
Как исправить: запомнить, что у одного дистрибутива за время его жизни может смениться несколько версий ядра.
Как избежать: всегда уточнять, о какой именно версии идёт речь — ядра или дистрибутива.
Практические задания
- Своими словами (без подглядывания) объясните в конспекте, зачем нужен «диспетчер-посредник» между программами и физическим оборудованием.
- Перечислите три задачи, которые решает ядро Linux.
Проверка знаний
Вопрос 1. Может ли обычная программа напрямую управлять диском компьютера, минуя ядро?
Ответ: Нет, в нормальной ситуации любые операции с оборудованием проходят через ядро — это обеспечивает безопасность и предотвращает конфликты между программами.
Вопрос 2. Достаточно ли одного ядра Linux, чтобы получить полноценную рабочую операционную систему для повседневного использования?
Ответ: Нет. Ядро — это только «двигатель» системы; вокруг него нужен набор дополнительных программ (утилиты, командная оболочка, при необходимости графический интерфейс), которые вместе с ядром образуют дистрибутив.
Итоги урока
Вы изучили: понятие ядра операционной системы и его основные функции.
Вы умеете: отличать ядро от дистрибутива и объяснять роль ядра простыми словами.
В следующем уроке потребуется: это понимание, чтобы разобраться, откуда в проекте GNU/Linux взялось второе имя и почему это важно.
Урок 1.3. Проект GNU и почему правильно говорить «GNU/Linux»
Понять вклад проекта GNU в современный Linux и разобраться в лицензии GPL — это важно для понимания философии свободного ПО, с которой вы будете сталкиваться на протяжении всего курса.
Теория
Как уже упоминалось в уроке 1.1, Линус Торвальдс создал именно ядро, а не полноценную операционную систему. Абсолютное большинство остальных программ, без которых система была бы бесполезна — командная оболочка (её мы подробно изучим в Блоке 4), компилятор для сборки программ, текстовые редакторы, базовые утилиты для работы с файлами — были разработаны в рамках проекта GNU, который стартовал на 8 лет раньше самого ядра Linux.
Именно поэтому в сообществе принято корректное название «GNU/Linux» — оно подчёркивает, что современная система состоит из двух больших взаимодополняющих частей: ядра Linux (созданного Торвальдсом и тысячами других разработчиков) и набора программ GNU (созданного в рамках проекта Столлмана). В обиходе, впрочем, чаще говорят просто «Linux», подразумевая всю систему целиком, и в этом курсе мы тоже будем в основном использовать короткое название для удобства — но важно понимать, откуда оно взялось и что стоит за этим словом.
Лицензия GPL (GNU General Public License, «Универсальная общественная лицензия GNU») — это юридический документ, который определяет правила использования программ GNU и большинства программ Linux. Ключевая идея GPL — «копилефт» (copyleft, игра слов от copyright — «авторское право»): если вы берёте программу под лицензией GPL, изменяете её и распространяете дальше, вы обязаны также открыть исходный код своей изменённой версии и разрешить её свободное распространение и изменение на тех же условиях. Это защищает открытость программ от попыток «приватизировать» их в закрытые коммерческие продукты.
Практическое следствие для вас как пользователя: подавляющее большинство программ в мире Linux можно свободно устанавливать, изучать, изменять и распространять бесплатно и легально — это часть самой философии системы, а не временная акция или ограниченная версия.
Практика
Шаг 1. Откройте сайт gnu.org и найдите на нём страницу с философией проекта (обычно раздел «Philosophy» или «О проекте»).
Что вы увидите: тексты о том, почему свобода программного обеспечения важна не только с технической, но и с этической точки зрения (право пользователя изучать, изменять и распространять программы, которыми он пользуется).
Шаг 2. Запишите в конспект своими словами, в чём разница между «бесплатной программой» и «свободной программой» — подсказка: бесплатность (не нужно платить деньги) и свобода (можно изучать, менять, распространять код) — это разные, хотя часто совпадающие, характеристики программы.
Разбор команд
Команд пока нет.
Возможные ошибки
- Ошибка:** считать, что «GPL» и «open source» (открытый код) — это полные синонимы одного явления.
Почему возникает: оба понятия связаны с открытостью кода и часто пересекаются на практике.
Как определить: если видите разные названия лицензий (GPL, MIT, Apache и другие) — значит, речь о разных конкретных юридических правилах внутри общего понятия «открытое ПО».
Как исправить: воспринимать «открытое ПО» (open source) как широкую категорию, а GPL — как одну из конкретных лицензий внутри этой категории, со своими специфическими правилами (в частности, требованием копилефта).
Как избежать: при возникновении вопросов по конкретной программе — смотреть именно её лицензию, а не полагаться на общие представления.
Практические задания
- Найдите название лицензии для дистрибутива Ubuntu (или для ядра Linux) через поиск в интернете и запишите её в конспект.
- Сформулируйте своими словами, что означает принцип «копилефт» в GPL.
Проверка знаний
Вопрос 1. Почему корректно называть систему «GNU/Linux», а не просто «Linux»?
Ответ: Потому что подавляющая часть базовых программ системы (не считая самого ядра) была разработана в рамках проекта GNU, который стартовал раньше ядра Linux и предоставил почти всё необходимое для полноценной ОС, кроме самого ядра.
Вопрос 2. Что обязан сделать разработчик, если он взял программу под лицензией GPL, изменил её и хочет распространять свою версию?
Ответ: Он обязан открыть исходный код своей изменённой версии и распространять её на тех же условиях лицензии GPL — это и есть принцип «копилефта».
Итоги урока
Вы изучили: роль проекта GNU в современном Linux и суть лицензии GPL.
Вы умеете: объяснить, почему систему правильно называть GNU/Linux, и различать понятия «бесплатное» и «свободное» ПО.
В следующем уроке потребуется: это понимание философии, чтобы разобраться, что такое дистрибутив и почему их так много.
Урок 1.4. Что такое дистрибутив и чем они отличаются друг от друга
Понять понятие «дистрибутив» — практически важную тему, поскольку именно выбор дистрибутива станет первым практическим решением в Блоке 2.
Теория
Дистрибутив Linux (от англ. distribution — «распространение», часто сокращают до «дистр») — это готовый, самостоятельный набор из:
- ядра Linux (с определённой версией и настройками);
- базовых программ GNU и других утилит;
- системы установки программ (пакетного менеджера — подробно в Блоке 9);
- (часто, но не всегда) графической оболочки для удобной работы мышью и окнами;
- системы настроек «по умолчанию», собранной и протестированной конкретной командой разработчиков.
Проще говоря: ядро Linux — это «двигатель», а дистрибутив — это уже полностью «собранный автомобиль», готовый к использованию, куда двигатель встроен вместе со всем остальным (кузов, салон, колёса — по аналогии с программами и настройками).
Разные команды разработчиков собирают эти компоненты по-разному, ориентируясь на разные задачи: одни делают упор на простоту для новичков, другие — на максимальный контроль для опытных пользователей, третьи — на стабильность для серверов, четвёртые — на самые новые версии программ для разработчиков.
Разберём дистрибутивы, упомянутые в ТЗ курса:
- Ubuntu — один из самых популярных дистрибутивов в мире, разработан компанией Canonical. Ориентирован на простоту установки и использования, из-за чего отлично подходит новичкам, но при этом активно используется и на серверах. Именно Ubuntu (конкретно версия LTS — расшифровывается как Long Term Support, «долгосрочная поддержка», то есть версия, которая официально сопровождается обновлениями безопасности в течение нескольких лет) станет основным дистрибутивом всей практики в этом курсе.**
- Debian** — один из старейших и самых стабильных дистрибутивов, на основе которого построена сама Ubuntu (Ubuntu технически является «производной» от Debian). Ценится за исключительную надёжность, часто используется на серверах, где важна стабильность важнее новизны программ.
- Linux Mint** — дистрибутив, построенный на основе Ubuntu, но с более традиционным для новичков из мира Windows графическим интерфейсом. Хороший выбор для домашнего использования теми, кто только переходит с Windows.
- Fedora** — дистрибутив, спонсируемый компанией Red Hat, известен тем, что одним из первых внедряет самые новые версии программ и технологий, из-за чего популярен среди разработчиков программного обеспечения.
- Arch Linux** — дистрибутив для опытных пользователей, который не имеет готовых настроек «из коробки» — систему нужно собирать вручную буквально с первых шагов установки. Даёт максимальный контроль, но требует серьёзных знаний, поэтому не рекомендуется новичкам.
- Rocky Linux и AlmaLinux** — дистрибутивы, созданные как надёжная замена коммерческому серверному дистрибутиву Red Hat Enterprise Linux (RHEL) после изменения его лицензионной политики. Оба ориентированы почти исключительно на серверное использование и ценятся за стабильность и длительную поддержку в корпоративной среде.
Все перечисленные дистрибутивы (кроме, в некоторой степени, Arch Linux) можно условно разделить на два больших семейства по используемому пакетному менеджеру (подробнее — в Блоке 9):
- семейство Debian/Ubuntu (сюда входят сам Debian, Ubuntu, Linux Mint) — использует систему пакетов
.debи менеджер APT; - семейство Red Hat/Fedora (Fedora, Rocky Linux, AlmaLinux) — использует систему пакетов
.rpmи менеджеры DNF/YUM.
Понимание, к какому семейству относится дистрибутив, сильно облегчает жизнь: команды установки программ внутри одного семейства почти одинаковы, а вот между семействами отличаются.
Практика
Шаг 1. Составьте в конспекте таблицу из трёх столбцов: «Дистрибутив», «Для кого подходит», «Семейство (Debian или Red Hat)» — и заполните её для всех шести дистрибутивов, упомянутых в теории.
Шаг 2. Обоснуйте письменно (2–3 предложения), почему именно Ubuntu LTS выбран основным дистрибутивом этого курса, опираясь на теорию урока.
Разбор команд
Команд пока нет.
Возможные ошибки
- Ошибка:** считать, что раз дистрибутивов много, то знания, полученные на Ubuntu, не пригодятся при работе с другими дистрибутивами.
Почему возникает: новичку кажется, что дистрибутивы — это полностью разные системы.
Как определить: сомнения вида «а вдруг я зря учу именно Ubuntu?».
Как исправить: запомнить, что подавляющее большинство знаний (терминал, Bash, файловая система, права доступа, процессы, сеть, SSH) — универсальны для всех дистрибутивов Linux. Отличаются в основном лишь пакетный менеджер и некоторые детали настройки.
Как избежать: сосредоточиться на понимании общих принципов, а не на механическом запоминании — тогда переход на другой дистрибутив в будущем займёт считаные часы, а не месяцы.
Практические задания
- Заполните таблицу дистрибутивов, как описано в практике.
- Найдите на официальном сайте Ubuntu (
ubuntu.com) текущую версию LTS и дату окончания её официальной поддержки — запишите в конспект.
Проверка знаний
Вопрос 1. Что означает аббревиатура LTS и почему это важно для сервера?
Ответ: LTS означает Long Term Support («долгосрочная поддержка») — такая версия дистрибутива получает официальные обновления безопасности в течение нескольких лет, что критически важно для серверов, которые нельзя часто переустанавливать или обновлять до принципиально новой версии без длительного тестирования.
Вопрос 2. К какому семейству дистрибутивов (по пакетному менеджеру) относится Ubuntu, и какие ещё дистрибутивы входят в это же семейство из рассмотренных в уроке?
Ответ: Ubuntu относится к семейству Debian и использует пакеты .deb с менеджером APT. В это же семейство входят Debian (родитель Ubuntu) и Linux Mint (построен на основе Ubuntu).
Итоги урока
Вы изучили: понятие дистрибутива и особенности шести распространённых дистрибутивов Linux.
Вы умеете: сравнивать дистрибутивы по назначению и определять их семейство по пакетному менеджеру.
В следующем уроке потребуется: это понимание, чтобы разобраться в философии свободного ПО чуть глубже — с юридической и этической стороны.
Урок 1.5. Философия свободного программного обеспечения
Осознанно понять этические принципы, стоящие за миром Linux — это поможет в дальнейшем ориентироваться в вопросах лицензирования программ, которые вы будете устанавливать.
Теория
В уроке 1.3 мы уже коснулись разницы между «бесплатным» и «свободным» программным обеспечением. Разберём подробнее — согласно классическому определению Фонда свободного программного обеспечения (Free Software Foundation, организации Ричарда Столлмана), программа считается свободной, если пользователь обладает четырьмя свободами:
- Свобода запускать программу как угодно и для любых целей.
- Свобода изучать, как программа работает, и изменять её под свои нужды (для этого необходим доступ к исходному коду — тексту программы на языке программирования).
- Свобода распространять копии программы, чтобы помочь другим.
- Свобода распространять изменённые версии программы, чтобы улучшения приносили пользу всему сообществу.
Обратите внимание: ни один из четырёх пунктов не говорит о цене программы напрямую. Программа может быть свободной и при этом платной (например, вы платите за поддержку или за физический носитель), и наоборот — программа может распространяться бесплатно, но при этом быть полностью закрытой и «несвободной» (например, некоторые бесплатные, но закрытые приложения для Windows).
В экосистеме Linux принято различать термин «free software» (свободное ПО, с акцентом на этику и права пользователя, движение Ричарда Столлмана) и термин «open source» (открытый исходный код, более прагматичный подход, акцентирующий практические преимущества открытости кода — качество, безопасность, совместную разработку — без обязательной этической составляющей). На практике эти два движения в подавляющем большинстве случаев приводят к одинаковым лицензиям и одинаковым программам, различия скорее в риторике и акцентах, чем в конкретных технических результатах.
Практическая польза этой философии для вас как ученика курса:
- вы можете легально и бесплатно устанавливать практически весь набор ПО, который встретится в этом курсе;
- вы можете при желании заглянуть в исходный код любой изучаемой программы, если захотите понять её работу глубже, чем даёт этот курс;
- вы сможете осознанно ориентироваться, если в будущем встретите платные или закрытые компоненты в мире Linux (они существуют, но составляют меньшинство) — и понимать, чем они отличаются от основной массы ПО.
Практика
Шаг 1. Найдите в интернете определение «четырёх свобод» на официальном сайте gnu.org (на английском или в переводе) и сверьте со списком из теории — убедитесь, что понимаете каждый из четырёх пунктов.
Шаг 2. Приведите в конспекте пример любой знакомой вам программы (не обязательно из мира Linux) и определите для неё: является ли она бесплатной, свободной, и тем и другим, или ни тем ни другим — обоснуйте письменно.
Разбор команд
Команд пока нет.
Возможные ошибки
- Ошибка:** думать, что «весь Linux бесплатен и открыт на 100% без исключений».
Почему возникает: общая философия сообщества действительно ориентирована на открытость, и это создаёт впечатление абсолютности правила.
Как определить: встретив в дистрибутиве драйвер видеокарты или программу с пометкой «proprietary» (проприетарное, то есть закрытое ПО).
Как исправить: запомнить, что некоторые компоненты (особенно драйверы для сложного «железа», например видеокарт NVIDIA) могут быть закрытыми даже в мире Linux, хотя и составляют явное меньшинство.
Как избежать: относиться к «100% свободе» как к общему сильному принципу сообщества, а не абсолютному техническому факту для каждой без исключения программы.
Практические задания
- Выполните задание из шага 2 практики (классификация знакомой программы).
- Найдите и запишите в конспект название одной программы с закрытым исходным кодом, которая при этом часто используется в мире Linux (подсказка: можно поискать про драйверы видеокарт NVIDIA для Linux).
Проверка знаний
Вопрос 1. Может ли программа быть одновременно платной и свободной?
Ответ: Да. Свобода определяется правами пользователя (запускать, изучать, изменять, распространять), а не ценой программы — эти характеристики независимы друг от друга.
Вопрос 2. В чём практическое отличие подходов «free software» и «open source», если оба чаще всего приводят к одним и тем же лицензиям?
Ответ: Отличие в первую очередь в акцентах и риторике: «free software» подчёркивает этическую сторону и права пользователя, а «open source» — практические преимущества открытости кода (качество, безопасность, совместную разработку), без обязательного этического посыла.
Итоги урока
Вы изучили: концепцию четырёх свобод программного обеспечения и разницу подходов «free software» и «open source».
Вы умеете: классифицировать программы по признакам свободы и стоимости.
В следующем уроке потребуется: общее понимание философии Linux, чтобы увидеть, где конкретно эта система применяется в реальном мире.
Урок 1.6. Где сегодня используется Linux
Увидеть реальный масштаб применения Linux в современном мире — это мотивирующий и практически важный урок: он объясняет, зачем вообще стоит осваивать администрирование именно этой системы.
Теория
Linux сегодня — это не нишевая система для энтузиастов, а фундамент значительной части современных технологий. Рассмотрим основные сферы применения.
1. Серверы и интернет.
Подавляющее большинство серверов, на которых работают сайты, облачные сервисы и интернет-инфраструктура, работают на Linux. Когда вы открываете практически любой крупный сайт, скорее всего, где-то на другом конце вашего интернет-запроса работает сервер под управлением Linux. Именно поэтому раздел «системный администратор Linux» — одна из самых востребованных технических специальностей.
2. Облачные вычисления.
Крупнейшие облачные платформы (Amazon Web Services, Google Cloud, Microsoft Azure) предоставляют виртуальные серверы, подавляющее большинство которых клиенты разворачивают именно на Linux — из-за надёжности, бесплатности лицензий (в отличие от серверных версий Windows, требующих платных лицензий) и гибкости настройки.
3. Суперкомпьютеры.
Практически все самые мощные суперкомпьютеры в мире (используемые для научных расчётов, прогноза погоды, моделирования) работают на Linux — благодаря возможности глубоко настраивать систему под специфические задачи, чего не позволяют закрытые системы.
4. Мобильные устройства.
Операционная система Android, установленная на подавляющем большинстве смартфонов в мире, построена поверх ядра Linux (хотя пользовательский интерфейс Android сильно отличается от «классического» Linux-дистрибутива и обычно не даёт прямого доступа к терминалу без специальных действий).
5. Встраиваемые системы (embedded).
Роутеры, «умные» телевизоры, автомобильные информационно-развлекательные системы, банкоматы, кассовые терминалы, промышленное оборудование — во всех этих устройствах часто работает специально адаптированная урезанная версия Linux, поскольку систему можно гибко настроить под очень ограниченные ресурсы конкретного устройства.
6. Разработка программного обеспечения.
Многие профессиональные программисты используют Linux (или похожую на него по поведению macOS) как основную рабочую систему, поскольку значительная часть инструментов разработки (языки программирования, серверы баз данных, системы контроля версий вроде Git из Блока 16) изначально создаются и лучше всего работают именно в UNIX-подобной среде.
7. Домашние компьютеры.
Хотя доля Linux на домашних настольных компьютерах меньше, чем на серверах (Windows и macOS по-прежнему доминируют у обычных пользователей), сообщество энтузиастов и специалистов, использующих Linux дома, стабильно растёт — во многом благодаря дистрибутивам вроде Ubuntu и Linux Mint, которые сделали систему доступной для новичков.
Практика
Шаг 1. Вспомните пять сайтов или онлайн-сервисов, которыми вы пользуетесь чаще всего (почта, соцсети, интернет-магазины). Попробуйте найти информацию (через поиск в интернете, например запрос «какая операционная система на серверах [название сервиса]»), на какой системе они, вероятно, работают — в большинстве случаев ответом будет Linux в той или иной форме.
Шаг 2. Проверьте, есть ли у вас дома устройство со встроенным Linux, о котором вы, возможно, не задумывались — часто это роутер Wi-Fi (в его настройках иногда можно найти упоминание Linux или конкретного встраиваемого дистрибутива) или «умный» телевизор.
Разбор команд
Команд пока нет.
Возможные ошибки
- Ошибка:** делать вывод «раз Linux так везде используется, значит, все его досконально знают».
Почему возникает: широкое распространение системы создаёт ощущение её общеизвестности.
Как определить: ощущение неловкости от того, что «все, наверное, это знают, а я нет».
Как исправить: осознать, что подавляющее большинство людей пользуется Linux-устройствами (смартфон на Android, роутер, сайты), совершенно не подозревая об этом — глубокое администрирование системы остаётся специализированным навыком, которому нужно целенаправленно учиться, как и любому другому.
Как избежать: не сравнивать себя с воображаемым «все уже знают», а сосредоточиться на своём последовательном прохождении курса.
Практические задания
- Составьте в конспекте список из пяти областей применения Linux с одним конкретным примером на каждую (например: «Серверы — сайт [название]», «Мобильные устройства — Android на моём телефоне»).
- Запишите одним предложением, в какой из перечисленных сфер вам лично интереснее всего развиваться (сервера, разработка, домашнее использование) — это поможет расставить приоритеты при дальнейшем прохождении курса, особенно в продвинутых блоках.
Проверка знаний
Вопрос 1. Правда ли, что Android — это классический Linux-дистрибутив вроде Ubuntu?
Ответ: Не совсем. Android построен на основе ядра Linux, но его пользовательская часть кардинально отличается от «классических» дистрибутивов — обычно нет прямого доступа к терминалу и стандартным утилитам GNU без специальных дополнительных действий. Тем не менее, технически в основе лежит именно ядро Linux.
Вопрос 2. Почему облачные провайдеры и владельцы серверов часто выбирают Linux вместо серверных версий Windows?
Ответ: Основные причины — открытость и бесплатность лицензий (в отличие от платных лицензий на серверный Windows), высокая надёжность и стабильность, а также гибкость глубокой настройки системы под конкретные задачи.
Итоги урока
Вы изучили: основные сферы реального применения Linux в современном мире.
Вы умеете: приводить конкретные примеры использования Linux в повседневной жизни.
В следующем уроке потребуется: общее понимание масштаба применения, чтобы подвести итог всему теоретическому Блоку 1 перед переходом к практической установке системы.
Мини-проект блока
Задача: самостоятельно подготовить краткое информационное досье на дистрибутив Ubuntu LTS, опираясь на официальные источники, — как если бы вы объясняли выбор системы своему руководителю или коллеге перед началом работы над проектом.
Что нужно включить в досье:
- Год основания проекта Ubuntu и название компании-разработчика.
- К какому «семейству» дистрибутивов относится Ubuntu и почему это практически важно.
- Что означает LTS и какая версия LTS актуальна на сегодняшний день.
- Три причины, почему Ubuntu LTS хорошо подходит и новичку, и будущему администратору сервера.
- Краткое объяснение (2–3 предложения), что такое ядро Linux и как оно связано с Ubuntu.
Критерий готовности: досье написано полностью своими словами, без копирования формулировок из уроков, и demonстрирует понимание, а не просто запоминание фактов.
Контрольные вопросы
- Расположите в хронологическом порядке: создание UNIX, старт проекта GNU, публикация ядра Linux.
- Объясните, почему аббревиатура GNU расшифровывается «рекурсивно», и что это означает.
- Сформулируйте своими словами принцип «копилефт» лицензии GPL.
- Приведите по одному примеру дистрибутива из семейства Debian и из семейства Red Hat.
- Назовите три сферы реального применения Linux помимо личных настольных компьютеров.
Выводы по блоку
Этот блок был полностью теоретическим, но именно он закладывает понимание, без которого дальнейшая практика превратилась бы в бездумное копирование команд. Теперь вы знаете, откуда взялся Linux, что такое ядро и дистрибутив, почему в мире Linux так силён принцип открытости — и где конкретно эта система работает прямо сейчас, пока вы читаете этот текст (весьма вероятно, что серверы, через которые вы получаете доступ к материалам курса, тоже работают на Linux).
Список изученных тем
- История UNIX, проекта GNU и появления ядра Linux.
- Понятие ядра операционной системы и его функции.
- Смысл названия «GNU/Linux» и лицензия GPL.
- Понятие дистрибутива, сравнение шести популярных дистрибутивов.
- Философия свободного программного обеспечения, четыре свободы.
- Сферы реального применения Linux в современном мире.
Рекомендации перед переходом
Прежде чем переходить дальше, убедитесь, что вы можете без подглядывания в конспект объяснить разницу между ядром и дистрибутивом, а также назвать хотя бы три дистрибутива и их особенности — это база, на которую будет опираться вся дальнейшая практика. Если чувствуете уверенность — переходите к Блоку 2, где начнётся установка настоящей Ubuntu LTS на виртуальную машину, подготовленную в Блоке 0.