Учебный сервер в виртуальной машине, который не жалко сломать
Слово «Linux» означает две разные вещи. В узком смысле это ядро — программа, которая управляет процессором, памятью, дисками и сетевыми картами и выдаёт остальным программам доступ к ним. Ядро в 1991 году начал писать Линус Торвальдс, сейчас его развивают тысячи разработчиков из сотен компаний.
Одного ядра для работы мало: нужны оболочка, в которой набираются команды, утилиты для работы с файлами, системные службы, программа установки пакетов. Ядро вместе с этим набором, настройками и способом обновления называется дистрибутивом. Когда говорят «на сервере стоит Linux», имеют в виду дистрибутив — Debian, Ubuntu, Astra Linux.
┌──────────────────────────────────────────────┐
│ Приложения: nginx, PostgreSQL, браузер │
├──────────────────────────────────────────────┤
│ Утилиты и оболочка: bash, ls, cp, apt │ ┐
├──────────────────────────────────────────────┤ │ дистрибутив
│ Системные службы: systemd, sshd, cron │ │
├──────────────────────────────────────────────┤ │
│ Ядро Linux │ ┘
├──────────────────────────────────────────────┤
│ Оборудование: процессор, память, диск, сеть │
└──────────────────────────────────────────────┘
Ядро и почти все программы дистрибутива распространяются под свободными лицензиями (GNU GPL и подобные): исходный код открыт, его можно изучать, менять и распространять. Поэтому любая компания может собрать свой дистрибутив, и их сотни.
Дистрибутивы различаются менеджером пакетов, циклом выпуска и тем, кто их поддерживает. Большинство относится к одному из двух семейств.
| Семейство | Пакеты | Примеры | Где встречается |
|---|---|---|---|
| Debian | .deb, apt | Debian, Ubuntu, Astra Linux, Linux Mint | Серверы, рабочие станции, госсектор |
| Red Hat | .rpm, dnf | RHEL, РЕД ОС, AlmaLinux, Fedora | Корпоративные серверы |
| Своё | свои форматы | ALT Linux (apt-rpm), Arch, Alpine | Госсектор, контейнеры, энтузиасты |
В курсе используется Debian 13 (кодовое имя trixie). Это некоммерческий дистрибутив с долгой поддержкой и предсказуемыми обновлениями; на нём основаны Ubuntu и Astra Linux, поэтому навыки переносятся на них почти без изменений.
На серверах графического окружения обычно нет. Оно занимает память и процессор, добавляет пакеты, в которых находят уязвимости, и не нужно: к серверу подключаются по сети и работают в терминале — текстовом окне, где набирают команды и читают ответ.
user@debian:~$ uptime
10:42:17 up 37 days, 2:05, 1 user, load average: 0.08, 0.03, 0.01
Вы набрали команду uptime, система ответила: сервер работает 37 дней, вошёл один пользователь, нагрузка низкая. Так выглядит вся работа в курсе. Сначала непривычно, зато команды можно записать, повторить, отправить коллеге и превратить в скрипт — с кликами мышью так не получится.
Виртуальная машина (ВМ) — программная имитация компьютера внутри вашего. У неё свой «процессор», память, диск-файл и сетевая карта. Linux устанавливается в ВМ так же, как на настоящий компьютер, а основная система не меняется. Испортили учебную систему — удалили ВМ и поставили заново.
| Параметр ВМ | Значение | Почему |
|---|---|---|
| Тип / версия | Linux / Debian (64-bit) | Подходящие настройки по умолчанию |
| Память | 2048 МБ | Без графики Debian хватает 512 МБ, запас — для nginx и экспериментов |
| Процессоры | 2 | Чтобы увидеть многозадачность в модуле 05 |
| Диск | 20 ГБ, динамический | Файл растёт по мере заполнения, сразу 20 ГБ не займёт |
| Сеть | NAT + проброс порта 2222 → 22 | Выход в интернет и подключение по SSH из основной системы (модуль 08) |
Образ для установки — debian-13.x.x-amd64-netinst.iso с сайта debian.org (раздел загрузки) или с зеркала Яндекса mirror.yandex.ru/debian-cd/. Это небольшой образ: основное скачивается во время установки, поэтому ВМ нужен интернет.
Подключите образ к ВМ как оптический диск, запустите её и выберите Install (текстовый установщик). Ниже — шаги, где новички ошибаются; на остальных оставьте предложенное.
| Шаг установщика | Что выбрать |
|---|---|
| Язык, страна, раскладка | Русский, Российская Федерация; переключение раскладки — любое удобное |
| Имя компьютера (hostname) | Латиницей без пробелов, например debian или srv01 |
| Пароль root | Оставить пустым. Тогда вход под root закрыт, а первый пользователь получает права администратора через sudo |
| Пользователь | Латинское имя, например student; пароль, который вы запомните |
| Разметка диска | Авто — весь диск, все файлы в одном разделе |
| Зеркало архива | Российская Федерация → mirror.yandex.ru или ftp.ru.debian.org |
| Выбор программ | Снять «Окружение рабочего стола» и GNOME; отметить «SSH-сервер» и «Стандартные системные утилиты» |
| Загрузчик GRUB | Установить на первый диск /dev/sda |
После перезагрузки отключите образ от ВМ, иначе установщик запустится снова.
Система загрузится в текстовую консоль и спросит имя и пароль. При наборе пароля символы не отображаются — даже звёздочками. Это нормально: так посторонний не узнает длину пароля.
Debian GNU/Linux 13 debian tty1
debian login: student
Password:
Linux debian 6.12.48+deb13-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.48-1 x86_64
...
student@debian:~$
Строка student@debian:~$ — приглашение: вы вошли как student на компьютер debian, находитесь в домашнем каталоге (~), знак $ — обычный пользователь. Подробно — в модуле 02.
Узнаем, что за система установлена:
student@debian:~$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
ID=debian
...
student@debian:~$ uname -r
6.12.48+deb13-amd64
student@debian:~$ hostname
debian
/etc/os-release отвечает, какой дистрибутив и версия, uname -r — какая версия ядра. Это два разных вопроса: версия ядра меняется при обновлениях, версия Debian — при переходе на следующий выпуск. Точные номера у вас могут отличаться.
Проверим, что пользователь может выполнять команды администратора:
student@debian:~$ sudo whoami
[sudo] пароль для student:
root
sudo выполнил команду whoami («кто я») от имени администратора root. Если вместо этого появилось student is not in the sudoers file, при установке был задан пароль root — права выдаются вручную в модуле 04.
Linux держит часть записей на диск в памяти и сбрасывает их позже. Если «выдернуть шнур» — закрыть окно ВМ с выключением питания, — последние изменения файлов могут потеряться. Выключайте систему командой:
student@debian:~$ sudo systemctl poweroff # выключить
student@debian:~$ sudo systemctl reboot # перезагрузить
Короткие варианты sudo poweroff и sudo reboot делают то же самое. Выйти из системы, не выключая её, — exit или Ctrl+D.
poweroff выключит его, и включить обратно получится только через панель провайдера. Перед выключением проверьте по приглашению, на какой машине вы находитесь..deb и aptsudo/etc/os-release, версия ядра — uname -rsudo systemctl poweroff, а не закрытие окна