Введение

Поздравляем! Вы только что поступили на работу младшим системным администратором в LabEx Corporation — быстро развивающийся технологический стартап. Сегодня ваш первый рабочий день, и руководитель поручил вам заняться самым амбициозным проектом компании: «Project Phoenix» — революционным приложением, которое изменит способы управления цифровыми рабочими процессами в бизнесе.

Ваша первая задача — получить общее представление о сервере разработки, на котором будет размещён Project Phoenix. Для этого необходимо провести первичное обследование: определить, что это за система, кто ею пользуется и в каком состоянии она сейчас находится.

В этом задании вы используете основные команды Linux, чтобы собрать важные сведения о новом окружении. Вы определите свою учётную запись, проверите сведения о системе, узнаете, кто ещё вошёл в систему, изучите информацию о пользователе и группах, проконтролируете производительность в реальном времени и оформите результаты в подробный отчёт.

Эта первичная проверка станет основой всей дальнейшей работы над Project Phoenix. Тщательность, проявленная сегодня, поможет обеспечить успех проекта завтра.

Перед началом этого курса рекомендуется обладать базовыми знаниями Linux. Если вы только начинаете изучать Linux, рекомендуем начать с учебного маршрута по Linux в LabEx. Курс поможет проверить, закрепить и углубить базовые навыки Linux с помощью практических заданий. Во время обучения вы можете обсуждать с Labby — нашим ИИ-помощником — незнакомые, забытые или непонятные концепции. Такой интерактивный подход имитирует процесс решения задач, с которым вы столкнётесь в реальной рабочей среде.

Важное уведомление: Если во время задания возникнут трудности:

  1. Обсудите их с Labby или просмотрите решение.
  2. Временно пропустите задание и продолжите работу со следующими Guided Labs в учебном маршруте по Linux.

Первый вход и проверка окружения

Первое действие в новой системе — проверить собственную личность и основные характеристики операционной системы. Это подтверждает, что вы работаете под нужной учётной записью и на правильном компьютере.

Задания

  • Узнайте имя пользователя текущего пользователя.
  • Выведите имя ядра операционной системы.

Требования

  • Все команды необходимо выполнять в терминале.
  • Используйте команду whoami, чтобы определить текущего пользователя.
  • Используйте команду uname, чтобы вывести имя ядра.

Примеры

После выполнения этого шага вы должны увидеть вывод, похожий на следующий:

## Command output showing current user
labex

## Command output showing kernel name
Linux

Эти результаты подтверждают, что вы работаете от имени пользователя labex в системе Linux. Это необходимо для понимания рабочего окружения.

Проверка сведений о системе и времени работы

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

Задания

  • Выведите полную информацию о системе, включая сведения об операционной системе, версию ядра и аппаратную архитектуру.
  • Узнайте, как долго работает система, и проверьте текущую нагрузку.

Требования

  • Используйте команду uname -a, чтобы вывести всю информацию о системе.
  • Используйте команду uptime, чтобы показать время работы системы и среднюю нагрузку.

Примеры

После выполнения требуемых команд вы должны увидеть вывод, похожий на следующий:

## Comprehensive system information
Linux labex-virtual-machine 5.15.0-76-generic #83-Ubuntu SMP Thu Jun 15 19:16:32 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

## System uptime and load information
14:51:52 up 183 days, 2:55, 0 users, load average: 6.02, 1.80, 0.94

В первой строке показаны подробные сведения о системе, включая версию ядра, имя узла и архитектуру. Во второй строке указано, что система работает уже 183 дня, а средние значения нагрузки отражают производительность системы за разные промежутки времени.

Подсказки

  • Команда uname -a выводит всю доступную информацию о системе в одной строке.
  • Команда uptime показывает время работы системы, количество пользователей и среднюю нагрузку.
  • Средняя нагрузка показывает среднюю нагрузку на систему за последние 1, 5 и 15 минут.

Сведения о пользователе и группах

Понимание разрешений пользователя — одна из основ работы с системой. Вам необходимо знать свой идентификатор пользователя (UID), идентификатор основной группы (GID) и остальные группы, в которые вы входите, поскольку именно они определяют доступ к ресурсам системы.

Задания

  • Выведите подробные сведения о текущей учётной записи пользователя и её группах.

Требования

  • Используйте команду id, чтобы получить идентификаторы пользователя и групп.

Примеры

После выполнения требуемой команды вы должны увидеть вывод, похожий на следующий:

uid=5000(labex) gid=5000(labex) groups=5000(labex),27(sudo),121(ssl-cert),5002(public)

Этот вывод показывает:

  • uid=5000(labex): ваш идентификатор пользователя — 5000, имя пользователя — «labex»;
  • gid=5000(labex): идентификатор вашей основной группы — 5000, имя группы — «labex»;
  • groups=...: вы состоите в нескольких группах, включая «sudo» (административные права), «ssl-cert» (доступ к сертификатам SSL) и «public» (общие ресурсы).

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

Подсказки

  • Если выполнить команду id без аргументов, она по умолчанию покажет сведения о текущем пользователе.
  • В выводе будут явно указаны UID, GID и дополнительные группы.

Мониторинг производительности системы в реальном времени

Важная часть первичного обследования системы — наблюдение за её текущей производительностью. Нужно проверить использование процессора и памяти, а также увидеть запущенные процессы. Стандартный инструмент для этой задачи — команда top.

Задания

  • Запустите интерактивный инструмент мониторинга системы, чтобы просмотреть активные процессы и использование ресурсов.
  • Через несколько секунд наблюдения выйдите из инструмента.

Требования

  • Используйте команду top, чтобы запустить интерфейс мониторинга.
  • После запуска top нажмите клавишу q, чтобы выйти и вернуться к приглашению командной строки.

Примеры

После запуска инструмента мониторинга системы вы увидите динамический экран, похожий на следующий:

top - 10:45:00 up 1:15,  1 user,  load average: 0.00, 0.01, 0.05
Tasks: 123 total,   1 running, 122 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.1 us,  0.1 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   1987.2 total,    890.5 free,    540.1 used,    556.6 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   1234.5 avail Mem

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
      1 root      20   0  169404  12920   8584 S   0.0   0.6   0:01.50 systemd
      2 root      20   0       0      0      0 S   0.0   0.0   0:00.00 kthreadd
    ...

На этом экране отображаются:

  • Сводка по системе: текущее время, время работы, пользователи и средняя нагрузка;
  • Сводка по задачам: общее количество процессов и их состояния (выполняются, спят и т. д.);
  • Использование CPU: распределение загрузки процессора по категориям;
  • Использование памяти: общий объём, свободная, используемая и доступная память;
  • Список процессов: запущенные процессы, отсортированные по использованию CPU, с указанием PID, пользователя и потребления ресурсов.

Экран автоматически обновляется каждые несколько секунд и показывает состояние системы в реальном времени.

Подсказки

  • top предоставляет динамическое представление работающей системы в реальном времени и автоматически обновляет экран.
  • Клавиша q — стандартный способ завершить работу программы top.

Создание отчёта о состоянии системы

Наконец, объедините собранные сведения в простой текстовый файл. Это распространённый способ зафиксировать состояние системы в определённый момент времени. Вы будете использовать перенаправление вывода, чтобы сохранить результаты нескольких команд в одном файле.

Задания

  • Создайте файл system_report.txt в текущем каталоге (~/project).
  • Файл должен содержать вывод команд whoami, uname -a (вся информация о системе) и uptime.

Требования

  • Итоговый файл отчёта должен называться system_report.txt.
  • Для записи вывода команд в файл необходимо использовать операторы перенаправления (> и >>).
  • Файл необходимо создать в каталоге ~/project.

Примеры

После выполнения этого шага файл system_report.txt должен содержать вывод, похожий на следующий:

labex
Linux labex-virtual-machine 5.15.0-76-generic #83-Ubuntu SMP Thu Jun 15 19:16:32 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
 10:50:01 up  1:20,  1 user,  load average: 0.00, 0.01, 0.05

Этот отчёт показывает:

  • Строка 1: текущую идентичность пользователя (результат команды whoami);
  • Строка 2: полную информацию о системе, включая версию ядра, имя узла и архитектуру (результат команды uname -a);
  • Строка 3: время работы системы и текущие средние значения нагрузки (результат команды uptime).

Файл служит снимком текущего состояния системы, который полезен для документирования и поиска неисправностей. После создания проверьте его содержимое с помощью команды cat.

Подсказки

  • Используйте оператор >, чтобы перенаправить вывод первой команды. Он создаст файл или перезапишет его, если файл уже существует.
  • Используйте оператор >>, чтобы добавить вывод следующих команд в файл, не удаляя его текущее содержимое.
  • Команда uptime показывает, как долго работает система.

Итоги

Отличная работа! Вы успешно завершили свой первый рабочий день в LabEx Corporation и заложили основу для Project Phoenix.

В этом задании вы потренировались использовать несколько важных команд, которыми должен владеть каждый системный администратор:

  • whoami: подтверждение вашей личности на сервере Project Phoenix;
  • uname: проверка сведений об операционной системе и совместимости;
  • who: просмотр других пользователей, работающих на сервере разработки;
  • id: проверка членства пользователя и групп для правильного управления доступом;
  • top: мониторинг процессов системы и использования ресурсов для обеспечения оптимальной производительности;
  • перенаправление вывода (> и >>): документирование результатов в профессиональных отчётах.

Эти команды составляют основу набора инструментов системного администратора. Проведённая сегодня тщательная проверка подготовила окружение Project Phoenix к предстоящей разработке. Завтра вы начнёте организовывать структуру файлов проекта в роли цифрового архитектора!

✨ Проверить решение и практиковаться✨ Проверить решение и практиковаться✨ Проверить решение и практиковаться✨ Проверить решение и практиковаться✨ Проверить решение и практиковаться