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/19 08: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 171: Line 175:
   * [[Видео уроки#​Администрирование системы Linux]]   * [[Видео уроки#​Администрирование системы Linux]]
  
-==== Подготовка рабочей станции ==== 
-<​code>​ 
-route -p add 172.16.1.0 mask 255.255.255.0 10.10.102.250 
- 
-ping 172.16.1.254 
-</​code>​ 
 ===== Модуль 4. Выбор дистрибутива,​ установка и анализ системы ===== ===== Модуль 4. Выбор дистрибутива,​ установка и анализ системы =====
  
Line 217: Line 215:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 1.1 Загрузка актуального дистрибутива ===+=== 4.1 Загрузка актуального дистрибутива ===
  
 Задание:​ выяснить какие бывают,​ способы загрузки и варианты установки дистрибутивов Задание:​ выяснить какие бывают,​ способы загрузки и варианты установки дистрибутивов
Line 225: Line 223:
   * [[https://​centos.org/​|CentOS]]   * [[https://​centos.org/​|CentOS]]
  
-=== 1.2 Установка системы ===+=== 4.2 Установка системы ===
  
 Задание: ​ Задание: ​
Line 237: Line 235:
 Задание для преподавателя:​ Задание для преподавателя:​
  
-  - установить CentOS +  - установить CentOS ​(NetworkManager) 
-  - установить Ubuntu (netplan)+  - установить Ubuntu (Netplan)
    
 Задание на дом: Задание на дом:
Line 244: Line 242:
   * [[https://​youtu.be/​5Y67Q7um1WU|Видео урок: Корпоративный WebVPN на основе прокси-сервера Squid]]   * [[https://​youtu.be/​5Y67Q7um1WU|Видео урок: Корпоративный WebVPN на основе прокси-сервера Squid]]
  
-=== 1.3 Анализ оборудования системы ===+=== 4.3 Анализ оборудования системы ===
  
 Задание:​ найти информацию о процессоре,​ памяти,​ дисках и сетевых платах Задание:​ найти информацию о процессоре,​ памяти,​ дисках и сетевых платах
Line 250: Line 248:
   * [[Анализ оборудования в Linux]]   * [[Анализ оборудования в Linux]]
  
-=== 1.4 Анализ ядра, модулей и дистрибутива ===+=== 4.4 Анализ ядра, модулей и дистрибутива ===
  
 Задания:​ Задания:​
Line 261: Line 259:
   * [[Выбор дистрибутива Linux]]   * [[Выбор дистрибутива Linux]]
  
-=== 1.5 Анализ процессов в системе ===+=== 4.5 Анализ процессов в системе ===
  
 Задание:​ выяснить,​ запущен ли сервис sshd Задание:​ выяснить,​ запущен ли сервис sshd
Line 268: Line 266:
   * Команда [[Команды фильтры#​grep]]   * Команда [[Команды фильтры#​grep]]
  
-=== 1.6 Управление загрузчиком системы ===+=== 4.6 Управление загрузчиком системы ===
  
 Задание для преподавателя: ​ Задание для преподавателя: ​
Line 276: Line 274:
   * [[Использование загрузчика GRUB]]   * [[Использование загрузчика GRUB]]
   * [[Использование загрузчика LOADER]]   * [[Использование загрузчика LOADER]]
 +
 ==== Вопросы ==== ==== Вопросы ====
  
Line 286: Line 285:
   - Для чего служат переменные ядра?   - Для чего служат переменные ядра?
  
-===== Модуль ​2 (5). Настройка и тестирование сети =====+===== Модуль 5. Настройка и тестирование сети =====
  
 ==== Теория ==== ==== Теория ====
Line 293: 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 312: Line 317:
   * [[Настройка сети в Linux#​Команды для настройки]] сети в Linux   * [[Настройка сети в Linux#​Команды для настройки]] сети в Linux
  
-=== 2.2 Команды для диагностики сети ===+=== 5.2 Команды для диагностики сети ===
  
 Задание:​ используя настроенную сетевую подсистему ядра проверить ее функционирование и подключиться к системе по протоколу ssh Задание:​ используя настроенную сетевую подсистему ядра проверить ее функционирование и подключиться к системе по протоколу ssh
Line 318: Line 323:
   * [[Настройка сети в Linux#​Команды для диагностики]] сети в Linux   * [[Настройка сети в Linux#​Команды для диагностики]] сети в Linux
  
-=== 2.3 Файлы конфигурации сети ===+=== 5.3 Файлы конфигурации сети ===
  
 Задание:​ отредактировать файлы конфигурации сети используя любой тестовый редактор,​ перезагрузить систему проверить работу сети после перезагрузки системы. Задание:​ отредактировать файлы конфигурации сети используя любой тестовый редактор,​ перезагрузить систему проверить работу сети после перезагрузки системы.
Line 329: Line 334:
   * [[Настройка сети в Linux#​Файлы конфигурации Ubuntu18]]   * [[Настройка сети в Linux#​Файлы конфигурации Ubuntu18]]
  
-=== 2.4 Дополнительные утилиты для тестирования сети ===+=== 5.4 Дополнительные утилиты для тестирования сети ===
  
 Задание:​ посмотреть какой порт "​слушает"​ сервис ssh Задание:​ посмотреть какой порт "​слушает"​ сервис ssh
Line 352: Line 357:
  
  
-===== Модуль ​3 (6). Система безопасности UNIX =====+===== Модуль 6. Система безопасности UNIX =====
  
 ==== Теория ==== ==== Теория ====
Line 363: Line 368:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 3.1 Управление пользователями в системе ===+=== 6.1 Управление пользователями в системе ===
  
 Задание: ​ Задание: ​
Line 373: Line 378:
   * [[Управление учетными записями в Linux]]   * [[Управление учетными записями в Linux]]
  
-=== 3.2 Управление правами пользователей в системе ===+=== 6.2 Управление правами пользователей в системе ===
  
 Задание:​ познакомиться с утилитами umask, chmod, chown Задание:​ познакомиться с утилитами umask, chmod, chown
Line 399: Line 404:
   - Для чего предназначены команды su и sudo?   - Для чего предназначены команды su и sudo?
  
-===== Модуль ​4 (7). Управление ПО =====+===== Модуль 7. Управление ПО =====
  
 ==== Теория ==== ==== Теория ====
Line 428: Line 433:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 4.1 Сборка и установка ПО из исходных текстов ===+=== 7.1 Сборка и установка ПО из исходных текстов ===
  
   * [[Установка ПО из исходных текстов]] ([[https://​youtu.be/​oz3WCD-dDpc|Видео урок]])   * [[Установка ПО из исходных текстов]] ([[https://​youtu.be/​oz3WCD-dDpc|Видео урок]])
Line 436: Line 441:
   * [[Установка ПО из исходных текстов#​Пример установки текстового браузера]]   * [[Установка ПО из исходных текстов#​Пример установки текстового браузера]]
  
-=== 4.Установка ПО из скомпилированных пакетов ===+=== 7.Установка ПО из скомпилированных пакетов ===
  
   * [[https://​eax.me/​checkinstall/​|Как создать бинарный пакет с помощью CheckInstall]]   * [[https://​eax.me/​checkinstall/​|Как создать бинарный пакет с помощью CheckInstall]]
Line 448: Line 453:
   * Linux [[Управление ПО в Linux#​Snap]]   * Linux [[Управление ПО в Linux#​Snap]]
  
-=== 4.Обновление ПО внутри релиза ===+=== 7.Обновление ПО внутри релиза ===
  
 Задание:​ установить необходимые обновления в системе Задание:​ установить необходимые обновления в системе
Line 463: Line 468:
   - Какие проблемы могут возникнуть при обновлении системы до следующего релиза?​   - Какие проблемы могут возникнуть при обновлении системы до следующего релиза?​
  
-===== Модуль ​5 (8). Управление сервисами =====+===== Модуль 8. Управление сервисами =====
  
 ==== Теория ==== ==== Теория ====
Line 478: Line 483:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 5.1 Управление запуском сервисов ===+=== 8.1 Управление запуском сервисов ===
  
 Задание: ​ Задание: ​
Line 501: 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 531: Line 535:
   - Что нужно сделать,​ что бы получать больше отладочной информации о работе сервиса?​   - Что нужно сделать,​ что бы получать больше отладочной информации о работе сервиса?​
  
-===== Модуль ​6 (9). Управление файловыми системами =====+===== Модуль 9. Управление файловыми системами =====
  
 ==== Теория ==== ==== Теория ====
Line 548: Line 552:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 6.1 Анализ конфигурации дисковой подсистемы ===+=== 9.1 Анализ конфигурации дисковой подсистемы ===
  
 Задание:​ Задание:​
Line 556: Line 560:
   * [[Управление файловыми системами в Linux]]   * [[Управление файловыми системами в Linux]]
  
-=== 6.2 Подключение новых дисков к системе ===+=== 9.2 Подключение новых дисков к системе ===
  
 Задание:​ Задание:​
Line 586: Line 590:
   - В каком файле конфигурации определяются монтируемые при загрузке файловые системы?​   - В каком файле конфигурации определяются монтируемые при загрузке файловые системы?​
  
-===== Модуль ​7 (10). Резервное копирование и восстановление =====+===== Модуль 10. Резервное копирование и восстановление =====
  
 ==== Теория ==== ==== Теория ====
Line 604: Line 608:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 7.1 Знакомство с командой tar ===+=== 10.1 Знакомство с командой tar ===
  
   * [[Команда tar]]   * [[Команда tar]]
  
-=== 7.2 Создание архива на удаленной системе ===+=== 10.2 Создание архива на удаленной системе ===
  
 Задание:​ предоставить пользователю userX возможность архивного копирования каталога /etc/ на backup сервер по протоколу ssh Задание:​ предоставить пользователю userX возможность архивного копирования каталога /etc/ на backup сервер по протоколу ssh
Line 615: Line 619:
   * [[Команда tar]]   * [[Команда tar]]
  
-=== 7.3 Периодическое выполнение задач архивирования ===+=== 10.3 Периодическое выполнение задач архивирования ===
  
 Задание для преподавателя:​ написать сценарий для периодического копирования каталога /etc/ на backup сервер по протоколу ssh Задание для преподавателя:​ написать сценарий для периодического копирования каталога /etc/ на backup сервер по протоколу ssh
Line 633: Line 637:
   - Как запрограммировать одноразовый запуск сценария в определенное время? ​   - Как запрограммировать одноразовый запуск сценария в определенное время? ​
  
-===== Модуль ​8 (11). Анализ производительности и оптимизация системы =====+===== Модуль 11. Анализ производительности и оптимизация системы =====
  
 ==== Теория ==== ==== Теория ====
Line 646: Line 650:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 8.1 Анализ производительности системы ===+=== 11.1 Анализ производительности системы ===
  
   * [[Пакет OpenSSL#​Проверка производительности CPU]] в OpenSSL   * [[Пакет OpenSSL#​Проверка производительности CPU]] в OpenSSL
Line 656: Line 660:
 </​code>​ </​code>​
  
-=== 8.2 Стресс тестирование и выявление нагрузки на CPU ===+=== 11.2 Стресс тестирование и выявление нагрузки на CPU ===
  
   * [[Утилита john]]   * [[Утилита john]]
Line 674: 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 681: 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 694: 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 717: Line 735:
   - Перечислите команды,​ позволяющие найти критический ресурс.   - Перечислите команды,​ позволяющие найти критический ресурс.
  
-===== Модуль ​9 (12). Использование Linux в качестве рабочей станции пользователя =====+===== Модуль 12. Использование Linux в качестве рабочей станции пользователя =====
  
 ==== Теория ==== ==== Теория ====
Line 729: Line 747:
 ==== Лабораторные работы ==== ==== Лабораторные работы ====
  
-=== 9.1 Текстовый интерфейс ===+=== 12.1 Текстовый интерфейс ===
  
 Задание:​ настроить текстовый интерфейс пользователя Задание:​ настроить текстовый интерфейс пользователя
- 
-!!! RAM не менее 1Gb 
  
   * [[Настройка командных интерпретаторов]]   * [[Настройка командных интерпретаторов]]
Line 746: Line 762:
   * [[Пакет screen]] ([[https://​youtu.be/​YXSC7KeIq3E|Видео урок]])   * [[Пакет screen]] ([[https://​youtu.be/​YXSC7KeIq3E|Видео урок]])
  
-=== 9.2 Графический интерфейс пользователя ===+=== 12.2 Графический интерфейс пользователя === 
 + 
 +!!! RAM не менее 1Gb
  
 Задание:​ настроить графический интерфейс пользователя Задание:​ настроить графический интерфейс пользователя
Line 758: Line 776:
   * [[Сервис SSH|SSH вместо XDM]] на примере xbill   * [[Сервис SSH|SSH вместо XDM]] на примере xbill
   * xorg, xorg.conf, startx, twm на примере doom   * xorg, xorg.conf, startx, twm на примере doom
 +  * [[Сервис xRDP]]
   * [[Игровые возможности]]   * [[Игровые возможности]]
  
Line 766: 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