- •«Московский технический университет связи и информатики» (мтуси)
- •1. Знакомство с командной строкой Linux 15
- •7. Ядро Linux 51
- •Цель и задачи курсовой работы
- •Введение
- •Краткая теория
- •Знакомство с командной строкой Linux
- •Работа с файлами и каталогами. Управление пользователями
- •Ядро Linux
- •Управление процессами
- •Управление памятью
- •Диски и файловые системы
- •Основная часть
- •Знакомство с командной строкой Linux
- •Команды top, free, ps
- •Домашний каталог
- •Создание директорий
- •Команда tree
- •Создание скриптов
- •Cкрипт на языке bash c выводом меню, состоящего из пунктов выбора выводимой информации.
- •Работа с файлами и каталогами. Управление пользователями
- •Ядро Linux
- •Анализ системных вызовов при выполнении команд с помощью утилиты strace.
- •Системные вызовы вашей̆ программы.
- •Сборка и загрузка модуля в ядро Linux.
- •Управление процессами
- •Мониторинг производительности системы
- •Создание скрипта для получения статистики
- •Создание автозапускаемой службы
- •Создание таймера
- •Управление памятью
- •Получение карты виртуальной памяти процесса
- •Настройка файла подкачки
- •Тестирование памяти
- •Изучение параметра swappiness
- •Диски и файловые системы
- •Разметка диска, создание файловой системы
- •Создание raid-массива
- •Получение информации о файловой системе
- •Работа с логическими разделами дисков (lvm)
- •Vgextend myvg /dev/sdg Добавлен второй диск в vg
- •Заключение
- •Используемая литература
Команда tree
Рисунок 4-1-17. Установка утилиты и проверка её работоспособности.
Рисунок 4-1-18. Потребовалось повторить установку иной предложенной командой.
Рисунок 4-1-19. Проверка выполения команды tree –а. Показана файловая структура в графическом виде удобном для восприятия людей.
Создание скриптов
Рисунок 4-1-20. Создана и открыта директория.
Рисунок 4-1-21. При помощи команды nano создан новый текстовой файл. Чтобы сохранить его как скрипт, было задано имя файлс с расширением .sh, после чего написанный код приобрел тактическую раскрасску.
Рисунок 4-1-22. Проверено наличие скрипта в папке. Чтобы было его Использована команда chmod +x str_eq.sh в терминале. Эта команда предоставляет права на исполнение скрипту. Введена команду ./ str_eq.sh "строка 1" "строка 2" в терминале. ./ - указывает на то, что скрипт запущен из текущей директории. "строка 1" "строка 2" - это аргументы, которые передаются скрипту для сравнения. Аргументы сравниваются корректно, при вводе аргументов суммарно от двух, выводится сообщение о неравенстве.
При попытке запуска кода в других терминалах может произойти ошибка, но опытные программисты раскрыли свой секрет для превосходного результата, досточно указать вначале скрипта обычный #!/bin/bash - Эта строка называется "shebang" и указывает интерпретатор, который будет использоваться для запуска скрипта. В данном случае это Bash shell.
$# - Переменная, которая хранит количество аргументов, переданных скрипту.
$1 - Переменная, которая хранит первый аргумент, переданный скрипту.
$2 - Переменная, которая хранит второй аргумент, переданный скрипту.
echo - Команда, которая выводит текст на экран.
Рисунок 4-1-23. Добавлена проверка числа введенных аргументов. [ ... ] - Это оператор проверки условий. В нашем случае он сравнивает значения переменных $1 и $2.
Рисунок 4-1-24. Проверка показала отличную работу проверки условий.
Рисунок 4-1-25. Написан новый скрипт для поиска наибольшего числа при помощи операции -gt – больше.
Рисунок 4-1-26. Скрипт был подключен и успешно выполняет поставленную задачу. При помощи выбранного метода доступно сравнение только целочисленных значений.
Рисунок 4-1-27. Создан скрипт записи введенных строк и ожмдания ввода фамилии.
Рисунок 4-1-28. Скрипт принимает строки на ввод, после введенной фаимлии вывел их.
Рисунок 4-1-29. Создан скрипт принимающий числа на вход и выводящий их количество после введения четного.
Рисунок 4-1-30. Скрипт действиельно справляется с поставленной задачей.
Рисунок 4-1-31. Создан скрипт для проверки домашней директории. Команда pwd (present working directory) выводит текущий путь. Если вы не уверены, где находится ваш домашний каталог, вы можете найти его в переменной окружения HOME. Если вывод команды pwd совпадает с выводом команды echo $HOME, значит процесс запущен из домашнего каталога.
Рисунок 4-1-32. Проверка показала корректную работу программы. При запуске домашнего каталога выводится его путь
Cкрипт на языке bash c выводом меню, состоящего из пунктов выбора выводимой информации.
Рисунок 4-1-32. Создан скрипт выводящий текстовое меню и ожидающий номер интересующего пункта для получения конкретной информации. show_menu(): Функция, которая выводит меню с доступными вариантами. while true; do ... done: Бесконечный цикл, который выполняет код в нем до тех пор, пока не будет выполнен exit 0. Для вывода запрашиваемых данных применяются основные команды с конкретизирующими ключами.
Рисунок 4-1-32. Созданный скрипт успешно выполняется. При вводе с клавиатуры необходимого номера строки меню, осуществляется вывод информации. Процесс завершается при выборе пункта номер 8.
Несомненным преимуществом является знакомство с методами написания скриптов. Эти навыки крайне полезны для автоматизации рутинных операций и организации логического ветвления с использованием условных операторов и циклов.
Изучение и повторение данных методик взаимодействия с ОС значительно повышает уровень владения Bash и демонстрирует мощь командного подхода к управлению системой. Каждая задача, выполненная в рамках работы, угулбляет знания и дарит новые инструменты для решения широкого спектра задач в сфере сетевого администрирования и управления системами в различных сервисах.
