User Tools

Site Tools


основы_администрирования_систем_linux

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
основы_администрирования_систем_linux [2020/08/18 13:31]
val
основы_администрирования_систем_linux [2023/03/14 10:20]
val [Лабораторные работы]
Line 3: Line 3:
   * "UNIX в основном простая операционная система,​ но нужно быть гением,​ чтобы понять её простоту"​ (Денис Ритчи)   * "UNIX в основном простая операционная система,​ но нужно быть гением,​ чтобы понять её простоту"​ (Денис Ритчи)
   * "​Многие вещи нам непонятны не потому,​ что наши понятия слабы; но потому,​ что сии вещи не входят в круг наших понятий"​ (Козьма Прутков)   * "​Многие вещи нам непонятны не потому,​ что наши понятия слабы; но потому,​ что сии вещи не входят в круг наших понятий"​ (Козьма Прутков)
 +
 +
 +  * https://​global.gotomeeting.com/​join/​313682141
  
  
Line 73: Line 76:
   * [[https://​www.tutorialspoint.com/​unix_terminal_online.php|Unix Terminal Online]]   * [[https://​www.tutorialspoint.com/​unix_terminal_online.php|Unix Terminal Online]]
   * [[http://​www.freeemulator.com/​online-terminal-emulator/​|ONLINE TERMINAL EMULATOR]]   * [[http://​www.freeemulator.com/​online-terminal-emulator/​|ONLINE TERMINAL EMULATOR]]
-  * getty/login (демонстрирует преподаватель+  * getty/login (будем ​использовать после инсталляции новой системы
   * putty, winscp (во 2-м модуле)   * putty, winscp (во 2-м модуле)
   * ssh из unix в unix (после развертывания собственной системы)   * ssh из unix в unix (после развертывания собственной системы)
Line 115: Line 118:
   * [[Генератор отчетов awk]] ([[https://​youtu.be/​4PkkMzB7fIM|Видео урок]])   * [[Генератор отчетов awk]] ([[https://​youtu.be/​4PkkMzB7fIM|Видео урок]])
   * [[Команда tar]] (выполнить работу в конце курса)   * [[Команда tar]] (выполнить работу в конце курса)
 +  * Программа WinSCP
   * Команды scp, wget (в лабораторных работах следующего модуля)   * Команды scp, wget (в лабораторных работах следующего модуля)
  
Line 211: Line 215:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 1.1 Загрузка актуального дистрибутива ===+=== 4.1 Загрузка актуального дистрибутива ===
  
 Задание:​ выяснить какие бывают,​ способы загрузки и варианты установки дистрибутивов Задание:​ выяснить какие бывают,​ способы загрузки и варианты установки дистрибутивов
Line 219: Line 223:
   * [[https://​centos.org/​|CentOS]]   * [[https://​centos.org/​|CentOS]]
  
-=== 1.2 Установка системы ===+=== 4.2 Установка системы ===
  
 Задание: ​ Задание: ​
Line 231: Line 235:
 Задание для преподавателя:​ Задание для преподавателя:​
  
-  - установить CentOS +  - установить CentOS ​(NetworkManager) 
-  - установить Ubuntu (netplan)+  - установить Ubuntu (Netplan)
    
 Задание на дом: Задание на дом:
Line 238: Line 242:
   * [[https://​youtu.be/​5Y67Q7um1WU|Видео урок: Корпоративный WebVPN на основе прокси-сервера Squid]]   * [[https://​youtu.be/​5Y67Q7um1WU|Видео урок: Корпоративный WebVPN на основе прокси-сервера Squid]]
  
-=== 1.3 Анализ оборудования системы ===+=== 4.3 Анализ оборудования системы ===
  
 Задание:​ найти информацию о процессоре,​ памяти,​ дисках и сетевых платах Задание:​ найти информацию о процессоре,​ памяти,​ дисках и сетевых платах
Line 244: Line 248:
   * [[Анализ оборудования в Linux]]   * [[Анализ оборудования в Linux]]
  
-=== 1.4 Анализ ядра, модулей и дистрибутива ===+=== 4.4 Анализ ядра, модулей и дистрибутива ===
  
 Задания:​ Задания:​
Line 255: Line 259:
   * [[Выбор дистрибутива Linux]]   * [[Выбор дистрибутива Linux]]
  
-=== 1.5 Анализ процессов в системе ===+=== 4.5 Анализ процессов в системе ===
  
 Задание:​ выяснить,​ запущен ли сервис sshd Задание:​ выяснить,​ запущен ли сервис sshd
Line 262: Line 266:
   * Команда [[Команды фильтры#​grep]]   * Команда [[Команды фильтры#​grep]]
  
-=== 1.6 Управление загрузчиком системы ===+=== 4.6 Управление загрузчиком системы ===
  
 Задание для преподавателя: ​ Задание для преподавателя: ​
Line 270: Line 274:
   * [[Использование загрузчика GRUB]]   * [[Использование загрузчика GRUB]]
   * [[Использование загрузчика LOADER]]   * [[Использование загрузчика LOADER]]
 +
 ==== Вопросы ==== ==== Вопросы ====
  
Line 280: Line 285:
   - Для чего служат переменные ядра?   - Для чего служат переменные ядра?
  
-===== Модуль ​2 (5). Настройка и тестирование сети =====+===== Модуль 5. Настройка и тестирование сети =====
  
 ==== Теория ==== ==== Теория ====
Line 287: Line 292:
   * [[https://​ru.wikipedia.org/​wiki/​Ethernet|Ethernet - Википедия]]   * [[https://​ru.wikipedia.org/​wiki/​Ethernet|Ethernet - Википедия]]
   * [[https://​ru.wikipedia.org/​wiki/​TCP/​IP|TCP/​IP - Википедия]]   * [[https://​ru.wikipedia.org/​wiki/​TCP/​IP|TCP/​IP - Википедия]]
 +  * [[https://​netplan.io/​|Netplan]]
 +  * [[https://​ru.wikipedia.org/​wiki/​NetworkManager|NetworkManager]]
  
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-См. /* +=== 5.0 Настроить маршрут с рабочей станции в сеть стендов === 
-=== 2.0 Настроить маршрут с рабочей станции в сеть стендов ===+ 
 +  * !!! только,​ если не в комплексе Радио 
 <​code>​ <​code>​
-C:\>route -p add 172.16.1.0 mask 255.255.255.0 10.N.M.252+windows> route -p add 172.16.1.0 mask 255.255.255.0 10.10.102.250 
 + 
 +windows> ping 172.16.1.254
 </​code>​ </​code>​
-*/ примечание,​ если не в комплексе Радио 
  
-=== 2.1 Команды для настройки сети ===+ 
 +=== 5.1 Команды для настройки сети ===
  
 Задание: ​ Задание: ​
Line 306: Line 317:
   * [[Настройка сети в Linux#​Команды для настройки]] сети в Linux   * [[Настройка сети в Linux#​Команды для настройки]] сети в Linux
  
-=== 2.2 Команды для диагностики сети ===+=== 5.2 Команды для диагностики сети ===
  
 Задание:​ используя настроенную сетевую подсистему ядра проверить ее функционирование и подключиться к системе по протоколу ssh Задание:​ используя настроенную сетевую подсистему ядра проверить ее функционирование и подключиться к системе по протоколу ssh
Line 312: Line 323:
   * [[Настройка сети в Linux#​Команды для диагностики]] сети в Linux   * [[Настройка сети в Linux#​Команды для диагностики]] сети в Linux
  
-=== 2.3 Файлы конфигурации сети ===+=== 5.3 Файлы конфигурации сети ===
  
 Задание:​ отредактировать файлы конфигурации сети используя любой тестовый редактор,​ перезагрузить систему проверить работу сети после перезагрузки системы. Задание:​ отредактировать файлы конфигурации сети используя любой тестовый редактор,​ перезагрузить систему проверить работу сети после перезагрузки системы.
Line 323: Line 334:
   * [[Настройка сети в Linux#​Файлы конфигурации Ubuntu18]]   * [[Настройка сети в Linux#​Файлы конфигурации Ubuntu18]]
  
-=== 2.4 Дополнительные утилиты для тестирования сети ===+=== 5.4 Дополнительные утилиты для тестирования сети ===
  
 Задание:​ посмотреть какой порт "​слушает"​ сервис ssh Задание:​ посмотреть какой порт "​слушает"​ сервис ssh
Line 346: Line 357:
  
  
-===== Модуль ​3 (6). Система безопасности UNIX =====+===== Модуль 6. Система безопасности UNIX =====
  
 ==== Теория ==== ==== Теория ====
Line 357: Line 368:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 3.1 Управление пользователями в системе ===+=== 6.1 Управление пользователями в системе ===
  
 Задание: ​ Задание: ​
Line 367: Line 378:
   * [[Управление учетными записями в Linux]]   * [[Управление учетными записями в Linux]]
  
-=== 3.2 Управление правами пользователей в системе ===+=== 6.2 Управление правами пользователей в системе ===
  
 Задание:​ познакомиться с утилитами umask, chmod, chown Задание:​ познакомиться с утилитами umask, chmod, chown
Line 393: Line 404:
   - Для чего предназначены команды su и sudo?   - Для чего предназначены команды su и sudo?
  
-===== Модуль ​4 (7). Управление ПО =====+===== Модуль 7. Управление ПО =====
  
 ==== Теория ==== ==== Теория ====
Line 422: Line 433:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 4.1 Сборка и установка ПО из исходных текстов ===+=== 7.1 Сборка и установка ПО из исходных текстов ===
  
   * [[Установка ПО из исходных текстов]] ([[https://​youtu.be/​oz3WCD-dDpc|Видео урок]])   * [[Установка ПО из исходных текстов]] ([[https://​youtu.be/​oz3WCD-dDpc|Видео урок]])
Line 430: Line 441:
   * [[Установка ПО из исходных текстов#​Пример установки текстового браузера]]   * [[Установка ПО из исходных текстов#​Пример установки текстового браузера]]
  
-=== 4.Установка ПО из скомпилированных пакетов ===+=== 7.Установка ПО из скомпилированных пакетов ===
  
   * [[https://​eax.me/​checkinstall/​|Как создать бинарный пакет с помощью CheckInstall]]   * [[https://​eax.me/​checkinstall/​|Как создать бинарный пакет с помощью CheckInstall]]
Line 442: Line 453:
   * Linux [[Управление ПО в Linux#​Snap]]   * Linux [[Управление ПО в Linux#​Snap]]
  
-=== 4.Обновление ПО внутри релиза ===+=== 7.Обновление ПО внутри релиза ===
  
 Задание:​ установить необходимые обновления в системе Задание:​ установить необходимые обновления в системе
Line 457: Line 468:
   - Какие проблемы могут возникнуть при обновлении системы до следующего релиза?​   - Какие проблемы могут возникнуть при обновлении системы до следующего релиза?​
  
-===== Модуль ​5 (8). Управление сервисами =====+===== Модуль 8. Управление сервисами =====
  
 ==== Теория ==== ==== Теория ====
Line 472: Line 483:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 5.1 Управление запуском сервисов ===+=== 8.1 Управление запуском сервисов ===
  
 Задание: ​ Задание: ​
Line 495: Line 506:
   * Linux [[Управление сервисами в Linux#​Система загрузки SysV]]   * Linux [[Управление сервисами в Linux#​Система загрузки SysV]]
  
-  * Linux [[Управление сервисами в Linux#​Система загрузки OpenRC]] 
   * Linux [[Управление сервисами в Linux#​Система загрузки Systemd]]   * Linux [[Управление сервисами в Linux#​Система загрузки Systemd]]
  
   * Linux [[Управление сервисами в Linux#​Универсальный скрипт service]]   * Linux [[Управление сервисами в Linux#​Универсальный скрипт service]]
  
-=== 5.2 Регистрация действий сервисов ===+=== 8.2 Регистрация действий сервисов ===
  
 Задание:​ Задание:​
Line 525: Line 535:
   - Что нужно сделать,​ что бы получать больше отладочной информации о работе сервиса?​   - Что нужно сделать,​ что бы получать больше отладочной информации о работе сервиса?​
  
-===== Модуль ​6 (9). Управление файловыми системами =====+===== Модуль 9. Управление файловыми системами =====
  
 ==== Теория ==== ==== Теория ====
Line 542: Line 552:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 6.1 Анализ конфигурации дисковой подсистемы ===+=== 9.1 Анализ конфигурации дисковой подсистемы ===
  
 Задание:​ Задание:​
Line 550: Line 560:
   * [[Управление файловыми системами в Linux]]   * [[Управление файловыми системами в Linux]]
  
-=== 6.2 Подключение новых дисков к системе ===+=== 9.2 Подключение новых дисков к системе ===
  
 Задание:​ Задание:​
Line 580: Line 590:
   - В каком файле конфигурации определяются монтируемые при загрузке файловые системы?​   - В каком файле конфигурации определяются монтируемые при загрузке файловые системы?​
  
-===== Модуль ​7 (10). Резервное копирование и восстановление =====+===== Модуль 10. Резервное копирование и восстановление =====
  
 ==== Теория ==== ==== Теория ====
Line 598: Line 608:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 7.1 Знакомство с командой tar ===+=== 10.1 Знакомство с командой tar ===
  
   * [[Команда tar]]   * [[Команда tar]]
  
-=== 7.2 Создание архива на удаленной системе ===+=== 10.2 Создание архива на удаленной системе ===
  
 Задание:​ предоставить пользователю userX возможность архивного копирования каталога /etc/ на backup сервер по протоколу ssh Задание:​ предоставить пользователю userX возможность архивного копирования каталога /etc/ на backup сервер по протоколу ssh
Line 609: Line 619:
   * [[Команда tar]]   * [[Команда tar]]
  
-=== 7.3 Периодическое выполнение задач архивирования ===+=== 10.3 Периодическое выполнение задач архивирования ===
  
 Задание для преподавателя:​ написать сценарий для периодического копирования каталога /etc/ на backup сервер по протоколу ssh Задание для преподавателя:​ написать сценарий для периодического копирования каталога /etc/ на backup сервер по протоколу ssh
Line 627: Line 637:
   - Как запрограммировать одноразовый запуск сценария в определенное время? ​   - Как запрограммировать одноразовый запуск сценария в определенное время? ​
  
-===== Модуль ​8 (11). Анализ производительности и оптимизация системы =====+===== Модуль 11. Анализ производительности и оптимизация системы =====
  
 ==== Теория ==== ==== Теория ====
Line 640: Line 650:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 8.1 Анализ производительности системы ===+=== 11.1 Анализ производительности системы ===
  
   * [[Пакет OpenSSL#​Проверка производительности CPU]] в OpenSSL   * [[Пакет OpenSSL#​Проверка производительности CPU]] в OpenSSL
Line 650: Line 660:
 </​code>​ </​code>​
  
-=== 8.2 Стресс тестирование и выявление нагрузки на CPU ===+=== 11.2 Стресс тестирование и выявление нагрузки на CPU ===
  
   * [[Утилита john]]   * [[Утилита john]]
Line 668: Line 678:
 </​code>​ </​code>​
  
-=== 8.3 Стресс тестирование и выявление нагрузки на RAM ===+=== 11.3 Стресс тестирование и выявление нагрузки на RAM ===
 <​code>​ <​code>​
 +$ cat /​proc/​meminfo
 +
 $ stress -m 2 --vm-bytes 256M -t 60s $ stress -m 2 --vm-bytes 256M -t 60s
  
Line 675: Line 687:
 </​code>​ </​code>​
  
-=== 8.4 Стресс тестирование и выявление нагрузки на HDD ===+=== 11.4 Стресс тестирование и выявление нагрузки на HDD === 
 + 
 +  * [[https://​www.kernel.org/​doc/​Documentation/​block/​stat.txt]] 
 <​code>​ <​code>​
 +# cat /​sys/​block/​sda/​stat
 +
 $ stress -d 2 --hdd-bytes 2GB $ stress -d 2 --hdd-bytes 2GB
  
Line 688: Line 705:
 </​code>​ </​code>​
  
-=== 8.5 Тестирование производительности и выявление нагрузки на сеть ===+ 
 +=== 11.5 Тестирование производительности и выявление нагрузки на сеть ===
  
   * [[Утилита iPerf]]   * [[Утилита iPerf]]
  
 <​code>​ <​code>​
 +# cat /​sys/​class/​net/​eth0/​statistics/​[rt]x_bytes
 +
 # trafshow -n # trafshow -n
  
 linux# nethogs linux# nethogs
  
-linux# ss -pan4 | grep 5001+linux# ss -pantu | grep 5001
 </​code>​ </​code>​
  
-=== 8.6 Оптимизация производительности или ее тестирование на реальной задаче ===+=== 11.6 Управление ограничениями ОС === 
 + 
 +  * [[Управление сервисами в Linux#​Настройка параметров запуска в Systemd]] 
 + 
 +=== 11.7 Оптимизация производительности или ее тестирование на реальной задаче ===
  
   * [[https://​youtu.be/​dIqaW47WXf8|Видео урок: Установка Gentoo и сборка ПО из исходных текстов]]   * [[https://​youtu.be/​dIqaW47WXf8|Видео урок: Установка Gentoo и сборка ПО из исходных текстов]]
Line 711: Line 735:
   - Перечислите команды,​ позволяющие найти критический ресурс.   - Перечислите команды,​ позволяющие найти критический ресурс.
  
-===== Модуль ​9 (12). Использование Linux в качестве рабочей станции пользователя =====+===== Модуль 12. Использование Linux в качестве рабочей станции пользователя =====
  
 ==== Теория ==== ==== Теория ====
Line 723: Line 747:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 9.1 Текстовый интерфейс ===+=== 12.1 Текстовый интерфейс ===
  
 Задание:​ настроить текстовый интерфейс пользователя Задание:​ настроить текстовый интерфейс пользователя
- 
-!!! RAM не менее 1Gb 
  
   * [[Настройка командных интерпретаторов]]   * [[Настройка командных интерпретаторов]]
Line 740: Line 762:
   * [[Пакет screen]] ([[https://​youtu.be/​YXSC7KeIq3E|Видео урок]])   * [[Пакет screen]] ([[https://​youtu.be/​YXSC7KeIq3E|Видео урок]])
  
-=== 9.2 Графический интерфейс пользователя ===+=== 12.2 Графический интерфейс пользователя === 
 + 
 +!!! RAM не менее 1Gb
  
 Задание:​ настроить графический интерфейс пользователя Задание:​ настроить графический интерфейс пользователя
Line 752: Line 776:
   * [[Сервис SSH|SSH вместо XDM]] на примере xbill   * [[Сервис SSH|SSH вместо XDM]] на примере xbill
   * xorg, xorg.conf, startx, twm на примере doom   * xorg, xorg.conf, startx, twm на примере doom
 +  * [[Сервис xRDP]]
   * [[Игровые возможности]]   * [[Игровые возможности]]
  
Line 760: Line 785:
   - Назовите основные компоненты системы XWindow   - Назовите основные компоненты системы XWindow
   - Что общего между getty, sshd и xdm?   - Что общего между getty, sshd и xdm?
 +
 +===== Итоговое тестирование =====
 +
 +  * [[https://​github.com/​ostrovok-team/​code-challenge/​tree/​master/​devops|DevOps Engineer Challenge]]
основы_администрирования_систем_linux.txt · Last modified: 2023/11/27 14:47 by val