36 added
1 removed
Original
2026-01-01
Modified
2026-02-26
1
-
error code: 502
1
+
<p>В этом уроке мы начнем изучать командную строку с истории ее появления.</p>
2
+
<h2>Как появилась командная строка</h2>
3
+
<p>Все началось в 1970-х годах. В те времена не существовало ни привычной Windows, ни персональных компьютеров. Компьютерами называли<strong>мейнфреймы</strong>- большие машины, занимающие целые этажи зданий:</p>
4
+
<p>В то же время на свет появилась<strong>Unix</strong>- операционная система, написанная на языке Си и предназначенная для работы на мейнфреймах. Ключевая ее особенность - это многопользовательский режим. Дело в том, что тогда компьютеры были редкостью, поэтому у каждого мейнфрейма было множество пользователей одновременно.</p>
5
+
<p>Unix позволяла подключаться к мейнфрейму через<strong>терминалы</strong>- специальные устройства, которые служили двум задачам:</p>
6
+
<ul><li>Ввод информации (клавиатура)</li>
7
+
<li>Вывод информации (монитор)</li>
8
+
</ul><p>При этом вся обработка выполнялась на отдельном сервере. Сам терминал выглядел так:</p>
9
+
<p>Unix оказалась очень удачной операционной системой, но была платной и<strong>закрытой</strong>. Другими словами, никто не мог посмотреть ее исходный код.</p>
10
+
<p>Со временем на основе Unix создавались новые системы, которые теряли обратную совместимость. Другими словами, разработчикам приходилось писать отдельную программу под каждую операционную систему.</p>
11
+
<p>Такая ситуация усложняла жизнь всем, поэтому был принят стандарт<strong>POSIX</strong>(<em>Portable Operating System Interface for UNIX</em>). Сейчас это не один стандарт, а целое семейство стандартов. Оно описывает работу ключевых компонентов операционной системы и способов взаимодействия с ними из программ, написанных на Си.</p>
12
+
<h2>Операционная система Linux</h2>
13
+
<p>В те же времена начали активно развиваться сети. Сначала появились прообразы интернета, а затем и сам интернет. Компьютеры становились меньше, а серверов - все больше. В 1991 году студент Линус Торвальдс решил написать собственную операционную систему, которая совместима со стандартом POSIX.</p>
14
+
<p>Благодаря интернету, Линус собрал целое сообщество разработчиков, которые довольно быстро создали рабочую операционную систему под названием<strong>Linux</strong>и выложили ее исходный код в открытый доступ. С тех пор популярность Linux для серверного окружения быстро росла.</p>
15
+
<p>Но сам Linux - это только ядро операционной системы, которое не получится использовать без сопутствующих программ.</p>
16
+
<p>Когда Линус начал свою разработку, уже существовал проект<strong>GNU</strong>, основанный Ричардом Столлманом. В рамках этого проекта уже были разработаны свободные программы, составляющие основной инструментарий разработчика программ на языке Си:</p>
17
+
<ul><li>Текстовый редактор<strong>Emacs</strong></li>
18
+
<li>Компилятор языка Си<strong>gcc</strong></li>
19
+
<li>Командная оболочка<strong>bash</strong></li>
20
+
<li>Библиотека важнейших функций для программ на Си<strong>libc</strong></li>
21
+
</ul><p>Все эти программы были написаны для операционных систем, похожих на Unix. Поэтому в них использовались стандартные для UNIX системные вызовы - POSIX. Благодаря этому, Linux сразу начал поставляться с утилитами - например, архиваторами или командной оболочкой bash, которую мы начнем изучать в этом курсе.</p>
22
+
<p>Удивительный факт для тех, кто знаком только с Windows - Linux не имеет своей графической оболочки. Именно поэтому Linux может выглядеть очень по-разному, ведь на него можно поставить множество разных графических оболочек:</p>
23
+
<p>Сейчас Linux не используется в чистом виде. Вместо этого конечные пользователи имеют дело с<strong>дистрибутивами</strong>. Дистрибутив включает в себя:</p>
24
+
<ul><li>Сам Linux</li>
25
+
<li>GNU-программы</li>
26
+
<li>Утилиты для установки и настройки Linux</li>
27
+
<li>Поддержку регулярного обновления самого ядра и его окружения</li>
28
+
</ul><p>Существует очень много дистрибутивов, но некоторые из них особо популярны. Одни делаются энтузиастами, за другими стоят большие компании. Самый популярный дистрибутив - это полностью бесплатная операционная система<a>Ubuntu</a>:</p>
29
+
<p>Также популярны разновидности Ubuntu:</p>
30
+
<ul><li>Ubuntu Server, оптимизированный для работы на серверах</li>
31
+
<li>Xubuntu, оптимизированная для маломощных компьютеров</li>
32
+
</ul><p>В отличие от Unix-подобных операционных систем, Windows изначально создавалась для однопользовательского режима и никогда не пыталась быть совместимой с POSIX. Ей удалось захватить рынок персональных компьютеров, но на серверах она почти не встречается, несмотря на существование Windows Server.</p>
33
+
<p>Windows редко ставят на серверы, потому что она платная, и совсем не совместима с POSIX. При этом у Windows есть командная строка cmd.exe, но ее функциональность отличается от командной строки Linux, в ней используются другие команды. Опыт работы с ней не сильно поможет при работе в Linux-окружении, с которым все равно придется столкнуться.</p>
34
+
<p>Мы рекомендуем осваивать Linux и его командную строку через полное погружение. Для этого надо установить Ubuntu основной системой или<a>активировать</a>ее внутри Windows.</p>
35
+
<p>Если вы пользуетесь macOS, то можно ничего не делать - эта операционная система основана на Unix и считается даже более POSIX-совместимой, чем Linux. У нее прекрасная командная строка и инструментарий для работы.</p>
36
+
<p>Далее в курсе все примеры работы с командной строкой мы будем показывать исключительно на POSIX-совместимых операционных системах.</p>