This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
работа_в_командной_строке_unix [2018/02/20 11:33] val [Лабораторные работы] |
работа_в_командной_строке_unix [2019/11/11 09:37] (current) val [Модуль 0. Подготовка стенда в классе.] |
||
---|---|---|---|
Line 3: | Line 3: | ||
* "UNIX в основном простая операционная система, но нужно быть гением, чтобы понять её простоту" (Денис Ритчи) | * "UNIX в основном простая операционная система, но нужно быть гением, чтобы понять её простоту" (Денис Ритчи) | ||
* "Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий" (Козьма Прутков) | * "Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий" (Козьма Прутков) | ||
+ | |||
===== Программа курса ===== | ===== Программа курса ===== | ||
Line 15: | Line 16: | ||
* [[Видео уроки#Работа в системе Linux/FreeBSD]] | * [[Видео уроки#Работа в системе Linux/FreeBSD]] | ||
+ | |||
+ | ===== Модуль 0. Подготовка стенда в классе. ===== | ||
+ | |||
+ | * Узнать свой номер стенда | ||
+ | <code> | ||
+ | ipconfig /all | ||
+ | |||
+ | route delete 172.16.1.0 -p | ||
+ | </code> | ||
+ | * Удалить виртуалки | ||
+ | * Удалить профили putty | ||
+ | * Отключить не используемые адаптеры | ||
+ | * Записать логин пароль и IP (сообщить преподавателю) рабочей станции | ||
+ | * Проверить наличие дистрибутивов и образов | ||
===== Модуль 1. Знакомство с UNIX ===== | ===== Модуль 1. Знакомство с UNIX ===== | ||
Line 38: | Line 53: | ||
Подключение к UNIX | Подключение к UNIX | ||
+ | * [[https://ru.wikipedia.org/wiki/Телетайп|Телетайп]] | ||
* [[https://ru.wikipedia.org/wiki/Текстовый_терминал|Текстовый_терминал]] | * [[https://ru.wikipedia.org/wiki/Текстовый_терминал|Текстовый_терминал]] | ||
* [[https://ru.wikipedia.org/wiki/RS-232|Интерфейс RS-232]] | * [[https://ru.wikipedia.org/wiki/RS-232|Интерфейс RS-232]] | ||
Line 49: | Line 65: | ||
* [[https://ru.wikipedia.org/wiki/Интерфейс_командной_строки|Интерфейс командной строки]] | * [[https://ru.wikipedia.org/wiki/Интерфейс_командной_строки|Интерфейс командной строки]] | ||
* [[https://ru.wikipedia.org/wiki/Bash|Bourne again shell]] | * [[https://ru.wikipedia.org/wiki/Bash|Bourne again shell]] | ||
- | |||
==== Лабораторные работы ==== | ==== Лабораторные работы ==== | ||
- | Подключение к системе | + | Входное тестирование - скачать свежий образ netinst под архитектуру amd64 с сайта |
+ | |||
+ | * https://www.debian.org/ | ||
+ | Подключение к уже установленной и настроенной системе | ||
* [[https://youtu.be/7lE8Y8U4M0g|Видео урок: Принцип работы терминала UNIX]] | * [[https://youtu.be/7lE8Y8U4M0g|Видео урок: Принцип работы терминала UNIX]] | ||
* [[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]] | ||
* getty/login (демонстрирует преподаватель) | * getty/login (демонстрирует преподаватель) | ||
* putty, winscp (во 2-м модуле) | * putty, winscp (во 2-м модуле) | ||
* ssh из unix в unix (после развертывания собственной системы) | * ssh из unix в unix (после развертывания собственной системы) | ||
- | * xdm (демонстрирует преподаватель) | ||
- | * putty X11 tunnel (демонстрирует преподаватель) | ||
Принципы работы в системе | Принципы работы в системе | ||
Line 71: | Line 88: | ||
==== Вопросы ==== | ==== Вопросы ==== | ||
- | - Какие программы могут быть использованы для подключения к UNIX системе по протоколу ssh? | + | - Какие Windows программы могут быть использованы для подключения к UNIX системе по протоколу ssh? |
- Что определяют аргументы команды/утилиты? | - Что определяют аргументы команды/утилиты? | ||
- Что определяют ключи/опции команды/утилиты? | - Что определяют ключи/опции команды/утилиты? | ||
Line 94: | Line 111: | ||
* [[Текстовые редакторы ed, sed, vi, vim]] ([[https://youtu.be/r8e7F46un7A|Видео урок]]) | * [[Текстовые редакторы ed, sed, vi, vim]] ([[https://youtu.be/r8e7F46un7A|Видео урок]]) | ||
* [[Текстовый редактор nano]] | * [[Текстовый редактор nano]] | ||
- | * [[Команды фильтры]] | + | * [[Настройка командных интерпретаторов]] (комбинации клавиш, повтор и автоподстановка команд) |
+ | * [[Команды фильтры]] (выполнить работу в теме перенаправления ввода вывода) | ||
* [[Регулярные выражения]] ([[https://youtu.be/BhbDsKetNn8|Видео урок]]) | * [[Регулярные выражения]] ([[https://youtu.be/BhbDsKetNn8|Видео урок]]) | ||
* [[Утилиты diff и patch]] ([[https://youtu.be/vqPaHyisBB0|Видео урок]]) | * [[Утилиты diff и patch]] ([[https://youtu.be/vqPaHyisBB0|Видео урок]]) | ||
Line 100: | Line 118: | ||
* [[Генератор отчетов awk]] ([[https://youtu.be/4PkkMzB7fIM|Видео урок]]) | * [[Генератор отчетов awk]] ([[https://youtu.be/4PkkMzB7fIM|Видео урок]]) | ||
* [[Команда tar]] (выполнить работу в конце курса) | * [[Команда tar]] (выполнить работу в конце курса) | ||
- | * [[Команда cpio]] | + | * Команды scp, wget (в лабораторных работах следующего модуля) |
- | * Команды scp, wget, ftp (в лабораторных работах следующего модуля) | + | |
==== Вопросы ==== | ==== Вопросы ==== | ||
Line 108: | Line 124: | ||
- Какой командой можно создать файл? | - Какой командой можно создать файл? | ||
- Что означает символы "~", ".", "..", "/" в имени файла? | - Что означает символы "~", ".", "..", "/" в имени файла? | ||
- | - Что обозначают ключи "h/H", "v", "r/R" в многих командах? | + | - Что обозначают ключи "h/H", "v", "r/R" во многих командах? |
- Какие команды используются для анализа занятого места на диске/в каталоге? | - Какие команды используются для анализа занятого места на диске/в каталоге? | ||
- Какой командой можно удалить непустой каталог? | - Какой командой можно удалить непустой каталог? | ||
Line 133: | Line 149: | ||
* [[Перенаправление потоков ввода/вывода]] | * [[Перенаправление потоков ввода/вывода]] | ||
* [[Переменные окружения#Управление процессами через переменные окружения]] | * [[Переменные окружения#Управление процессами через переменные окружения]] | ||
+ | * [[Настройка командных интерпретаторов]] (управление приглашением ко вводу PS1) | ||
* [[Коды завершения]] | * [[Коды завершения]] | ||
* Развертывание виртуальной машины в VirtualBox | * Развертывание виртуальной машины в VirtualBox | ||
* Лабораторная работа [[Использование Asterisk в офисной телефонии#2.1 Установка системы server]] из курса по Asterisk | * Лабораторная работа [[Использование Asterisk в офисной телефонии#2.1 Установка системы server]] из курса по Asterisk | ||
- | * [[Управление ПО в Linux]], [[Сервис Asterisk#Установка]] cервиса Asterisk | + | * [[Пакет screen]] |
+ | * [[Управление ПО в Linux]], [[Сервис Asterisk#Установка]] сервиса Asterisk | ||
* [[Сигналы]], [[Управление сервисами в Linux]], [[Сервис Asterisk#Настройка базового функционала IP PBX]] | * [[Сигналы]], [[Управление сервисами в Linux]], [[Сервис Asterisk#Настройка базового функционала IP PBX]] | ||
<code> | <code> | ||
Line 142: | Line 160: | ||
# ps ax | grep asterisk | # ps ax | grep asterisk | ||
+ | |||
+ | # kill -s HUP НОМЕР_ПРОЦЕССА | ||
# kill -s HUP `cat /var/run/asterisk/asterisk.pid` | # kill -s HUP `cat /var/run/asterisk/asterisk.pid` | ||
Line 147: | Line 167: | ||
* Управление заданиями bg, fg, jobs (демонстрирует преподаватель) | * Управление заданиями bg, fg, jobs (демонстрирует преподаватель) | ||
- | |||
==== Вопросы ==== | ==== Вопросы ==== | ||
- | - Что обозначают ключи "a", "x", "u" в команде ps? | + | - Что обозначают ключи "a", "x" в команде ps? |
- Что такое STDIN, STDOUT, STDERR и какие у них номера? | - Что такое STDIN, STDOUT, STDERR и какие у них номера? | ||
- Что обозначают элементы "<", ">", "2>", "&1", "|" в выражениях shell | - Что обозначают элементы "<", ">", "2>", "&1", "|" в выражениях shell | ||
Line 202: | Line 221: | ||
# asterisk -x 'sip show users' | # asterisk -x 'sip show users' | ||
</code> | </code> | ||
- | |||
- | === Дополнительные лабораторные работы (демонстрирует преподаватель) === | ||
- | |||
- | Задание: | ||
- | |||
- | - зарегистрировать пользователя userX | ||
- | - предоставить пользователю userX доступ на чтение к файлу конфигурации sip.conf | ||
- | |||
- | <code> | ||
- | root# useradd -m -s /bin/bash userX | ||
- | |||
- | root# passwd userX | ||
- | |||
- | userX$ cat /etc/asterisk/sip.conf | ||
- | |||
- | root# chmod 644 /etc/asterisk/sip.conf | ||
- | </code> | ||
- | |||
- | Задание: назначить пользователя userX администратором системы | ||
- | |||
- | * [[Пакет sudo]] | ||
- | <code> | ||
- | # usermod -a -G sudo userX | ||
- | |||
- | userX$ sudo cat /etc/shadow | ||
- | </code> | ||
- | |||
- | Задание: предоставить возможность процессам запущенным из вебсервера делать телефонные вызовы через asterisk | ||
- | |||
- | * Asterisk. Интеграция. [[Asterisk. Интеграция#Модуль 4. Интеграция c web приложениями]] | ||
==== Вопросы ==== | ==== Вопросы ==== | ||
+ | - Что обозначают ключ "u" в команде ps? | ||
- Для чего предназначены команды chmod, chown? | - Для чего предназначены команды chmod, chown? | ||
- Что определяет маска 640 или <code>-rw-r-----</code> для файла? | - Что определяет маска 640 или <code>-rw-r-----</code> для файла? |