Когда говорят «Linux», обычно имеют в виду операционную систему — программу, которая управляет компьютером: распределяет память, работает с дисками, обеспечивает запуск других программ. Если точнее, Linux — это ядро операционной системы. Само по себе ядро бесполезно для пользователя, поэтому вокруг него собирают набор программ, утилит и настроек. Такой готовый набор называется дистрибутивом.
Дистрибутивов существуют десятки: Ubuntu, Fedora, Arch, CentOS и другие. В этом курсе мы используем Debian 13 (trixie). Debian — один из старейших дистрибутивов, известный своей стабильностью. Именно на его основе построен Ubuntu — самый популярный дистрибутив для настольных компьютеров. На серверах Debian используется повсеместно.
Linux работает не только на серверах. Ядро Linux лежит в основе Android, его используют на суперкомпьютерах, в маршрутизаторах и умных устройствах. Но для нас главное — это серверы. Подавляющее большинство веб-сайтов, баз данных и облачных сервисов работают именно на Linux.
В этом курсе мы работаем с Linux через командную строку — без графического интерфейса. Это именно тот режим, в котором работают системные администраторы и DevOps-инженеры.
Для подключения к серверу используется SSH (Secure Shell) — протокол безопасного удалённого доступа. Данные, включая пароль, передаются в зашифрованном виде.
В Windows 10 и 11 SSH-клиент уже встроен. Откройте Windows Terminal (или PowerShell) и введите команду:
ssh student@192.168.1.100
Здесь student — имя пользователя на сервере, а 192.168.1.100 — IP-адрес сервера.
Оба значения вам сообщит преподаватель.
Адрес и имя пользователя в примерах. Во всех примерах этого курса мы используем
student@192.168.1.100. В вашем случае адрес и имя пользователя могут отличаться — подставляйте свои.
При первом подключении к серверу SSH спросит, доверяете ли вы этому хосту:
The authenticity of host '192.168.1.100' can't be established.
ED25519 key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxx.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
Введите yes и нажмите Enter. Это нормальное поведение — SSH запоминает сервер, и при
следующих подключениях этот вопрос больше не появится.
После этого введите пароль. При вводе пароля символы не отображаются — ни звёздочки, ни точки. Это не ошибка, просто вводите пароль и нажимайте Enter.
Чтобы завершить сеанс и отключиться от сервера, введите:
exitИли нажмите Ctrl+D.
После успешного подключения вы увидите приглашение командной строки (prompt) — примерно такое:
student@debian:~$
Разберём его по частям:
| Часть | Значение |
|---|---|
student |
имя пользователя, под которым вы вошли в систему |
@ |
разделитель |
debian |
имя компьютера (хоста) |
: |
разделитель |
~ |
текущий каталог (~ означает «домашний каталог пользователя») |
$ |
признак обычного пользователя |
Символ $ в конце приглашения означает, что вы работаете как обычный пользователь.
У администратора (root) вместо $ стоит #. Пока запомните: видите $ — всё
нормально. Работа от имени root рассматривается в главе 08.
Пришло время попробовать. Вводите команды после символа $ и нажимайте Enter.
whoamistudent
Команда выводит имя текущего пользователя. Полезно, когда вы не уверены, под какой учётной записью работаете.
hostnamedebian
Показывает сетевое имя машины. На сервере это может быть что-то вроде web-server-01
или db-prod-03.
pwd/home/student
pwd расшифровывается как print working directory — «показать рабочий каталог».
В Linux нет дисков C: и D:, как в Windows. Вся файловая система начинается с
корня /, а каталоги разделяются символом / (прямой слеш, а не обратный \, как
в Windows).
/home/student — это ваш домашний каталог, личное пространство. Именно сюда вы
попадаете при входе в систему.
lsКоманда выводит содержимое текущего каталога. Если каталог пуст, команда не выведет ничего — это нормально. В свежей системе домашний каталог обычно пустой.
Попробуйте посмотреть, что лежит в корне файловой системы:
ls /bin boot dev etc home lib media mnt opt proc root run sbin srv sys tmp usr var
Здесь вы видите основные системные каталоги. Подробно мы разберём их в следующей главе.
cd /tmpКоманда cd (change directory) меняет текущий каталог. После выполнения обратите внимание — приглашение командной строки изменилось:
student@debian:/tmp$
Вместо ~ теперь показывается /tmp. Убедитесь командой pwd:
pwd/tmp
Чтобы вернуться в домашний каталог, введите cd без аргументов:
cdstudent@debian:~$
clearЭкран очищается. Команды и их вывод никуда не пропадают — просто экран прокручивается вверх. Можно прокрутить обратно, чтобы увидеть историю.
exitЗавершает текущий сеанс. Если вы подключены по SSH — соединение закроется.
Запомнить все команды и их параметры невозможно — и не нужно. Важнее уметь быстро найти нужную информацию.
В Linux есть встроенная система справки — man (от слова manual). Чтобы прочитать руководство по любой команде, введите:
man lsОткроется страница с подробным описанием команды ls: что она делает, какие параметры
принимает, примеры использования.
Навигация по man-странице:
| Клавиша | Действие |
|---|---|
Пробел или Page Down |
следующая страница |
b или Page Up |
предыдущая страница |
стрелки вверх / вниз |
прокрутка по строкам |
/текст + Enter |
поиск текста на странице |
n |
следующее совпадение поиска |
q |
выход из man |
Самое важное: q — выход. Новички часто пугаются, попав в man, потому что не
знают, как выйти. Просто нажмите q.
Большинство команд поддерживают флаг --help, который выводит краткую справку прямо
в терминал:
ls --helpЭто удобнее, чем man, когда нужно быстро вспомнить нужный параметр.
Совет. Не пытайтесь запомнить всё сразу. Даже опытные администраторы регулярно заглядывают в man-страницы и ищут информацию в интернете. Главный навык — умение находить ответ, а не держать всё в голове.
- Подключитесь к серверу по SSH из Windows Terminal.
- Выполните команды
whoami,hostname,pwdи запишите результат. - Выполните
ls /и посмотрите, какие каталоги есть в корне системы. - Перейдите в каталог
/varкомандойcd /var, убедитесь командойpwd. - Посмотрите содержимое
/varкомандойls. - Вернитесь в домашний каталог (
cdбез аргументов), проверьте с помощьюpwd. - Откройте man-страницу для команды
hostname(man hostname), найдите описание, выйдите клавишейq. - Отключитесь от сервера командой
exit.
В этой главе вы:
- узнали, что Linux — это ядро, а Debian — дистрибутив;
- подключились к серверу по SSH;
- познакомились с приглашением командной строки;
- освоили базовые команды:
whoami,hostname,pwd,ls,cd,clear,exit; - научились пользоваться справкой:
manи--help.
В следующей главе мы подробно разберём файловую систему Linux: как она устроена, как создавать, копировать, перемещать и удалять файлы и каталоги.