Урок 4 из 8 · 25 мин · обновлено

Знакомство с Linux и терминалом

Что такое Linux и почему он стоит на большинстве серверов, какие бывают дистрибутивы, как бесплатно запустить Linux на компьютере с Windows через WSL, как устроен терминал и первые команды: навигация по папкам, работа с файлами, справка и установка программ.

Что такое Linux

Linux — операционная система с открытым кодом. Её можно бесплатно использовать, изучать и менять. На Linux работает большинство серверов в мире: сайты, облака, базы данных, почтовые серверы, а ещё роутеры и телефоны на Android.

Почему сервера выбирают Linux:

  • бесплатный — не нужно платить за каждый сервер;
  • надёжный — годами работает без перезагрузки;
  • лёгкий — на сервере не нужна графика, ресурсы идут на работу;
  • управляется командами — удобно по сети и легко автоматизировать.

Дистрибутивы

Сам Linux — это ядро. Вместе с программами, установщиком и настройками его собирают в дистрибутивы:

  • Ubuntu — один из самых популярных, много инструкций для новичков;
  • Debian — надёжный, на нём основана Ubuntu;
  • российские — Astra Linux, РЕД ОС, Альт: их всё чаще используют в государственных и крупных компаниях.

Команды терминала почти везде одинаковые. Различается в основном установка программ: в Ubuntu и Debian — apt, в некоторых других дистрибутивах — dnf.

Где попробовать

Проще всего на Windows — через WSL, подсистему Linux, встроенную в Windows 10 и 11. Откройте PowerShell от имени администратора и выполните:

Терминал
wsl --install

Команда установит WSL и Ubuntu. После перезагрузки откроется окно Ubuntu: придумайте имя пользователя и пароль. При вводе пароля символы не отображаются — так и задумано.

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

Терминал

Терминал — окно, в котором вы вводите команды текстом. Строка приглашения выглядит так:

Текст
anna@pc:~$

Это пользователь anna на компьютере pc, в папке ~ — домашней папке пользователя. Знак $ — система ждёт команду.

Полезные клавиши:

  • Tab — дописывает имя команды или файла;
  • стрелка вверх — предыдущая команда;
  • Ctrl + C — прервать команду;
  • clear — очистить экран.

Первые команды

Терминал
pwd                      # где я — полный путь текущей папки
ls                       # что в папке
ls -la                   # подробно, со скрытыми файлами
cd /etc                  # перейти в папку /etc
cd ~                     # вернуться в домашнюю папку
cd ..                    # подняться на уровень выше

mkdir notes              # создать папку
touch notes/todo.txt     # создать пустой файл
nano notes/todo.txt      # открыть файл в редакторе; выход — Ctrl + X
cat notes/todo.txt       # показать содержимое файла
cp notes/todo.txt notes/copy.txt   # скопировать
mv notes/copy.txt notes/old.txt    # переименовать или переместить
rm notes/old.txt         # удалить файл
rm -r notes              # удалить папку со всем содержимым

В терминале нет корзины. Удалённое командой rm не вернуть. Перед удалением проверьте, где вы находитесь и что удаляете.

Справка, права и программы

Терминал
man ls                   # подробная справка по команде, выход — q
ls --help                # короткая справка
sudo apt update          # обновить список программ
sudo apt install htop    # установить программу

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

Попробуйте сами. В домашней папке создайте папку lab с подпапками logs и backup. В logs создайте файл app.log и запишите в него строку «Сервер запущен». Скопируйте файл в backup, покажите содержимое копии, затем удалите папку lab целиком.

Решение
Терминал
cd ~
mkdir lab
mkdir lab/logs lab/backup
echo "Сервер запущен" > lab/logs/app.log
cp lab/logs/app.log lab/backup/
cat lab/backup/app.log
ls -R lab
rm -r lab
  • echo "текст" > файл записывает строку в файл: если файла нет, он будет создан, если есть — перезаписан. Чтобы дописать в конец, используют >>.
  • ls -R показывает папку со всеми вложенными папками.
  • Подпапки можно создать и одной командой: mkdir -p lab/logs lab/backup — флаг -p создаёт недостающие папки по пути.

Мини-тест: проверьте себя

Закрепите урок: несколько вопросов, разбор ответов — в конце.

  1. Почему серверы чаще работают на Linux?

  2. Что покажет команда pwd?

  3. Чем опасна команда rm -r?

  4. Зачем перед командой пишут sudo?