Главная страница
Навигация по странице:

  • «МИРЭА – Российский технологический университет»

  • ОТЧЕТ ПО ПРАКТИЧЕСКОЙ РАБОТЕ № 3 по дисциплине

  • ИКБО-01-21 ИсаеваАВ ПР3 НиАСПО. Отчет по практической работе 3 по дисциплине Настройка и администрирование сервисного программного обеспечения


    Скачать 1.62 Mb.
    НазваниеОтчет по практической работе 3 по дисциплине Настройка и администрирование сервисного программного обеспечения
    Дата20.04.2023
    Размер1.62 Mb.
    Формат файлаdocx
    Имя файлаИКБО-01-21 ИсаеваАВ ПР3 НиАСПО.docx
    ТипОтчет
    #1077576



    МИНОБРНАУКИ РОССИИ

    Федеральное государственное бюджетное образовательное учреждение
    высшего образования
    «МИРЭА – Российский технологический университет»

    РТУ МИРЭА



    Институт Информационных технологий (ИТ)

    Кафедра инструментального и прикладного программного обеспечения (ИиППО)



    ОТЧЕТ ПО ПРАКТИЧЕСКОЙ РАБОТЕ № 3

    по дисциплине

    «Настройка и администрирование сервисного программного обеспечения»
    Тема: «Запуск Linux-приложений в Windows 10»




    Выполнил студент группы ИКБО-01-21




    Исаева А.В.

    Принял старший преподаватель


    Благирев М.М.



    Практическая работа выполнена

    «__»_______2023 г.


    (подпись студента)











    «Зачтено»


    «__»_______2023 г.


    (подпись руководителя)



    Москва 2023

    СОДЕРЖАНИЕ


    ВВЕДЕНИЕ 4

    ВЫПОЛНЕНИЕ РАБОТЫ 5

    1.Проверить версию команды curl 5

    2.Открыть 10 URL различных ресурсов и ознакомиться с полученными данными. 5

    3.Осуществить загрузку файла с помощью команды curl с оригинальным именем, опция -O Скачать одной командой 3 файла с опцией -О. 8

    4. Осуществить загрузку с 3 ftp-серверов (например, производителей компьютерного оборудования HP, Asus, MSI, Lenovo, Dell) файлы (например, драйверы) 9

    5.Осуществить загрузку файла с помощью команды curl и сохраните файл под другим именем, опция -o. Скачайте три файла с опцией -o для сохранения файлов с определенным именем 10

    6.Сохранить какое-либо изображение используя опцию -OL Сохраните 3 изображения используя опцию -OL (можно сохранить каждое изображение по отдельности) 10

    7. Посмотреть для 5 URL какие файлы cookie загружаются на компьютер 11

    8. Выполнить команду curl с опцией -L. Сравнить вывод без этой опции. Объяснить полученный результат вывода 12

    9.Получить заголовки сайтов 3 URL командой curl, опция -I 13

    10.Составить (а при наличии тестового сервера и отправить) POST-запросы используя команду curl, в виде списка имя=значение, и в виде JSON, для 3 URL, опция -d 13

    11.Использовать авторизацию для URL, опция -u 14

    12.Перенаправить запрос с localhost на URL (эквивалентно прописыванию в /etc/hosts), сделать для 3 URL. Для каждого URL свое перенаправление отдельной командой., опция --resolve 15

    13.Вывести время работы команды для конкретного URL. Повторить команду 3 раза на одном URL. Выполнить такую же операцию для 5 различных URL, опция -w 16

    14.Для 3 URL осуществить имитацию определенного браузера, опция -A 19

    15.Отправить файлы cookie при скачивании дистрибутива. 20

    16. Выполнить команду по загрузке rpm-файла Oracle Java JDK jdk10.0.2_linux-x64_bin.rpm без отправки cookie. Сравнить скачанные файлы и объяснить полученный результат 21

    17. Самостоятельно выбрать ранее не использовавшиеся 5 опций команды curl. Выполнить команды и объяснить полученный результат. 21

    ЗАКЛЮЧЕНИЕ 22

    СПИСОК ИСОЛЬЗОВАННЫХ ИСТОЧНИКОВ 24

    ВВЕДЕНИЕ


    Основное преимущество curl — это его удобство использования и гибкость. Curl поддерживает большое количество опций и настроек для тонкой настройки запросов и обработки ответов. Так, например, с помощью curl можно отправлять запросы различными методами (GET, POST, PUT, DELETE), устанавливать различные заголовки запросов и ответов, управлять куками и авторизацией, а также многими другими параметрами.

    Curl может быть использован для автоматизации процессов, связанных с обменом данными через Интернет. Например, с помощью curl можно скачивать файлы и обрабатывать их, перенаправлять запросы с одного сервера на другой, создавать скрипты для автоматической проверки работоспособности сайтов и сервисов.

    Curl часто используется для тестирования и отладки веб-сервисов и API. Например, при разработке API можно использовать curl для проверки правильности работы API, а также для создания автоматических тестов, которые будут выполняться при каждом обновлении API.

    Curl также поддерживает многопоточность, что позволяет ускорить выполнение множества запросов к серверам. В частности, curl может выполнять несколько запросов параллельно, что позволяет ускорить процесс обмена данными.

    Кроме того, curl имеет широкую поддержку среди операционных систем. Curl работает на большинстве платформ, включая Linux, macOS, Windows и другие.

    ВЫПОЛНЕНИЕ РАБОТЫ

    1. Проверить версию команды curl


    Например, curl –version



    Рисунок 1 – Версия curl
    1. Открыть 10 URL различных ресурсов и ознакомиться с полученными данными.


    Например, curl mail.ru curl rambler.ru curl google.com


    Рисунок 2 – Открытие ресурсов часть 1


    Рисунок 3 – Открытие ресурсов часть 2



    Рисунок 4 – Открытие ресурсов часть 3

    1. Осуществить загрузку файла с помощью команды curl с оригинальным именем, опция -O Скачать одной командой 3 файла с опцией -О.




    Рисунок 5 – Загрузка файла



    Рисунок 6 – Загрузка 3 файлов одной командой
    1. Осуществить загрузку с 3 ftp-серверов (например, производителей компьютерного оборудования HP, Asus, MSI, Lenovo, Dell) файлы (например, драйверы)


    Например, curl -O ftp://ftp.hp.com:21/pub/softpaq/sp40001/sp40001.cva Возможно, для ftp потребуется указывать логин, пароль Например, curl -u anonymous:anonymous -O ftp://yourftpserver/yourfile.tar.gz anonymous – стандартный логин и пароль для анонимного входа на ftpсервер



    Рисунок 7 – Загрузка файлов с ftp
    1. Осуществить загрузку файла с помощью команды curl и сохраните файл под другим именем, опция -o. Скачайте три файла с опцией -o для сохранения файлов с определенным именем




    Рисунок 8 – Загрузка файлов с изменением имени файлов
    1. Сохранить какое-либо изображение используя опцию -OL Сохраните 3 изображения используя опцию -OL (можно сохранить каждое изображение по отдельности)




    Рисунок 9 – Загрузка изображения



    Рисунок 10 – Загрузка 3 изображений
    1. Посмотреть для 5 URL какие файлы cookie загружаются на компьютер


    Например, curl --cookie-jar cnncookies.txt https://www.cnn.com/index.html -O Просмотреть сформированные cookie файлы можно с помощью команды type Например, type cnncookies.txt



    Рисунок 11 – Просмотр загрузки куки


    Рисунок 12 – Просмотр загрузки куки (5 сайтов)
    1. Выполнить команду curl с опцией -L. Сравнить вывод без этой опции. Объяснить полученный результат вывода


    Например, curl -L google.com



    Рисунок 13 – Команда curl с -L и без

    Как мы видим, опция -L ( --location ) в команде curl указывает, что при перенаправлении запроса (например, при переходе на другую страницу) curl должен следовать за перенаправлением и отправлять запрос на новый URL. Если опция -L не используется, то curl просто возвращает ответ сервера, который инициировал перенаправление.
    1. Получить заголовки сайтов 3 URL командой curl, опция -I




    Рисунок 14 – Команда curl с -I

    10.Составить (а при наличии тестового сервера и отправить) POST-запросы используя команду curl, в виде списка имя=значение, и в виде JSON, для 3 URL, опция -d


    Например, curl -d "param1=test1¶m2=test2" http://test.com (ключ=значение) curl -d '{"param1":"test1","param2":"test2"}' \http://www.test.com (JSON)

    curl -d "param1=test1¶m2=test2" http://test.com

    curl -d "param1=test1" http://goodle.com

    curl -d "param1=test1¶m2=test2¶m3=test3" http://vk.com

    curl -d '{"param1":"test1","param2":"test2"}' http://goodle.com

    curl -d '{"param1":"test1","param2":"test2"}' http://www.test.com

    curl -d '{"p":"test","param2":"test2", "param1":"test1"}' http://www.vk.com



    Рисунок 15 – Составление запроса (ключ=значение)



    Рисунок 16 – Составление запроса (JSON)

    11.Использовать авторизацию для URL, опция -u


    Например, curl -u



    Рисунок 17 –Авторизация часть 1

    12.Перенаправить запрос с localhost на URL (эквивалентно прописыванию в /etc/hosts), сделать для 3 URL. Для каждого URL свое перенаправление отдельной командой., опция --resolve


    Например, curl --resolve www.test.com:80:localhost http://www.test.com/



    Рисунок 18 – Перенаправление часть 1



    Рисунок 19 – Перенаправление часть 2


    Рисунок 20 – Перенаправление часть 3

    13.Вывести время работы команды для конкретного URL. Повторить команду 3 раза на одном URL. Выполнить такую же операцию для 5 различных URL, опция -w


    Например, curl -w "%{time_total}\n" -o /dev/null -s www.mail.ru




    Рисунок 21 – Тайминг

    14.Для 3 URL осуществить имитацию определенного браузера, опция -A


    Может понадобиться в случае, если удаленный сервер может быть настроен так, чтобы блокировать пользовательский агент (браузер) или возвращать различное содержимое в зависимости от устройства посетителя и браузера

    Например, curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0" https://getfedora.org/



    Рисунок 22 – Отправка запроса с эмулированием браузера часть 1



    Рисунок 23 – Отправка запроса с эмулированием браузера часть 2



    Рисунок 24 – Отправка запроса с эмулированием браузера часть 3

    15.Отправить файлы cookie при скачивании дистрибутива.


    По умолчанию при запросе ресурса с помощью curl файлы cookie не отправляются и не сохраняются. Чтобы отправить файлы cookie на сервер, необходимо использовать опцию -b за которой следует имя файла, содержащего файлы cookie, или строку.

    Например, чтобы загрузить rpm-файл Oracle Java JDK jdk-10.0.2_linux-x64_bin.rpm необходимо передать файл cookie с именем oraclelicense со значением a curl -L -b "oraclelicense=a" -O http://download.oracle.com/otnpub/java/jdk/10.0.2+13/19aef61b38124481863b1413dce1855f/jdk10.0.2_linux-x64_bin.rpm



    Рисунок 25 – Загрузка с отправкой куки

    16. Выполнить команду по загрузке rpm-файла Oracle Java JDK jdk10.0.2_linux-x64_bin.rpm без отправки cookie. Сравнить скачанные файлы и объяснить полученный результат


    Рисунок 26 – Загрузка без куки



    Рисунок 27 – Результат загрузок

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

    17. Самостоятельно выбрать ранее не использовавшиеся 5 опций команды curl. Выполнить команды и объяснить полученный результат.


    Вывод ошибки при скачивании вместо загрузки страницы с ошибкой.



    Рисунок 28 - Опция -f

    Строка прогресса загрузки.


    Рисунок 28 - Опция -#

    Включение заголовков в ответ команды



    Рисунок 29 - Опция -I

    Ограничение скорости загрузки



    Рисунок 30 - Опция -z

    Использование прокси сервер для загрузки файлов



    Рисунок 31 - Опция -х

    ЗАКЛЮЧЕНИЕ


    В ходе данной практической работы был изучен функционал команды curl, рассмотрены основные опции и их синтаксис. Также была протестирована работа сочетания различных опций в ряде ситуаций и для различных сайтов.

    В целом, команда curl очень полезна для отправки запросов из командной строки и может быть использована для широкого спектра задач

    СПИСОК ИСОЛЬЗОВАННЫХ ИСТОЧНИКОВ


    1. Walker, T. The Curl Manual / T. Walker. — curl.haxx.se, 2022. — 250 с. — Текст: электронная книга (дата обращения: 04.03.2023).

    2. Gonzalez, D. Curl Essentials: Mastering the World's Most Powerful Command-Line Tool / D. Gonzalez. — O'Reilly Media, 2021. — 264 с. — ISBN 978-1492085332. — Текст: электронная книга (дата обращения: 04.03.2023).

    3. Bartholomew, D. Using cURL for Command Line Data Transfer / D. Bartholomew. — Packt Publishing, 2020. — 162 с. — ISBN 978-1800201631. — Текст: электронная книга (дата обращения: 04.03.2023).

    4. Seiwert, A. HTTP with cURL / A. Seiwert. — APress, 2019. — 323 с. — ISBN 978-1484242266. — Текст: электронная книга (дата обращения: 04.03.2023).

    5. Gregersen, D. Command Line Tools: Unleash the Power of the Linux Command Line! / D. Gregersen. — Amazon Digital Services LLC, 2021. — 105 с. — Текст: электронная книга (дата обращения: 04.03.2023).


    написать администратору сайта