ДЕНЬ 01: Знакомство с обстановкой

LinuxBeginner
Практиковаться сейчас

Введение

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

Ваша первая миссия — «разведать обстановку» на сервере разработки, где будет размещен Project Phoenix. Это подразумевает проведение базового аудита, чтобы понять идентификаторы системы, узнать, кто еще ею пользуется, и оценить ее текущее рабочее состояние.

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

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

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

Важное примечание: Если вы столкнулись с трудностями во время прохождения:

  1. Обсудите проблему с Labby или посмотрите готовое решение.
  2. Временно пропустите это испытание и продолжите изучение других руководств в пути обучения Linux.

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

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

Задачи

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

Требования

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

Примеры

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

## Вывод команды, показывающий текущего пользователя
labex

## Вывод команды, показывающий название ядра
Linux

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

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

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

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

Задачи

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

Требования

  • Используйте команду uname -a для отображения всей системной информации.
  • Используйте команду uptime для вывода времени работы системы и средних показателей нагрузки (load average).

Примеры

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

## Подробная системная информация
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

## Время работы системы и информация о нагрузке
14:51:52 up 183 days, 2:55, 0 users, load average: 6.02, 1.80, 0.94

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

Подсказки

  • Команда uname -a выводит всю доступную информацию о системе одной строкой.
  • Команда uptime показывает длительность работы системы, количество пользователей и среднюю нагрузку.
  • Средние показатели нагрузки (load average) представляют собой среднюю загруженность системы за последние 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): Ваш ID пользователя — 5000, имя пользователя — «labex».
  • gid=5000(labex): ID вашей основной группы — 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 к захватывающей разработке, которая начнется завтра. В следующий раз вы начнете организовывать структуру файлов проекта в роли цифрового архитектора!