Инструменты пользователя

Инструменты сайта


работа_в_командной_строке_unix

Работа в командной строке UNIX

  • «UNIX в основном простая операционная система, но нужно быть гением, чтобы понять её простоту» (Денис Ритчи)
  • «Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий» (Козьма Прутков)

Программа курса

Offline материалы к курсу

Видео уроки

Модуль 0. Подготовка стенда в классе.

  • Узнать свой номер стенда
ipconfig /all

route delete 172.16.1.0 -p
  • Удалить виртуалки
  • Удалить профили putty
  • Отключить не используемые адаптеры
  • Записать логин пароль и IP (сообщить преподавателю) рабочей станции
  • Проверить наличие дистрибутивов и образов

Модуль 1. Знакомство с UNIX

Теория

Лабораторные работы

Входное тестирование - скачать свежий образ netinst под архитектуру amd64 с сайта

Подключение к уже установленной и настроенной системе

Принципы работы в системе

Вопросы

  1. Какие Windows программы могут быть использованы для подключения к UNIX системе по протоколу ssh?
  2. Что определяют аргументы команды/утилиты?
  3. Что определяют ключи/опции команды/утилиты?
  4. Какая команда используется для чтения UNIX документации?
  5. Как осуществляется поиск в UNIX документации?

Модуль 2. Файлы в UNIX

Теория

Лабораторные работы

Вопросы

  1. Что обозначают ключи «a», «l» в команде ls?
  2. Какой командой можно создать файл?
  3. Что означает символы «~», «.», «..», «/» в имени файла?
  4. Что обозначают ключи «h/H», «v», «r/R» во многих командах?
  5. Какие команды используются для анализа занятого места на диске/в каталоге?
  6. Какой командой можно удалить непустой каталог?
  7. Какие команды могут быть использованы для поиска файлов?
  8. Какие команды используются для просмотра содержимого файлов?
  9. Какая программа может быть использована для копирования файлов между UNIX и Windows по протоколу ssh?
  10. Какой ключ команды tail позволяет «в онлайне» наблюдать процесс появления новых записей в файле?
  11. Какая последовательность клавиш позволяет выйти из редактора vi без сохранения изменений?
  12. Какой командой можно найти содержимое в файле по шаблону?
  13. Какой ключ команды sort позволит отсортировать данные по числовому столбцу?
  14. Что обозначают символы «^», «$», «.», «|» в регулярных выражениях?
  15. Что обозначают ключи «c», «t», «x», «z», «f» в команде tar
  16. Что появится на экране в результате последовательности команд:
    mkdir dir1; cd dir1/; touch echo ls; *
  17. Каким образом можно определить тип файла в UNIX?

Модуль 3. Процессы в UNIX

Теория

Лабораторные работы

# asterisk -x 'sip show users'

# ps ax | grep asterisk

# kill -s HUP НОМЕР_ПРОЦЕССА

# kill -s HUP `cat /var/run/asterisk/asterisk.pid`
  • Управление заданиями bg, fg, jobs (демонстрирует преподаватель)

Вопросы

  1. Что обозначают ключи «a», «x» в команде ps?
  2. Что такое STDIN, STDOUT, STDERR и какие у них номера?
  3. Что обозначают элементы «<», «>», «2>», «&1», «|» в выражениях shell
  4. Объясните, как работает конструкция
    :> file1
  5. Чем отличается команда set от команды env?
  6. Что влияет на выбор языка интерфейса в *NIX программах?
  7. Как посмотреть код завершения процесса и какое он должен иметь значение, если не было ошибок?
  8. Что обозначают элементы «&&», «||», «;», «&» в выражениях shell
  9. Объясните, что происходит при использовании комбинаций «Ctrl C», «Ctrl D», «Ctrl Z»?
  10. Как обрабатываются сигналы «HUP», «INT», «TERM», «KILL», «TSTP» процессами?

Модуль 4. Система безопасности и права доступа

Теория

Лабораторные работы

Управление атрибутами доступа к файлам

Задание: исправить владельца файла конфигурации sip.conf

# ps axu | grep asterisk

# ls -l /etc/asterisk/sip.conf

# cp /etc/asterisk/sip.conf .

# ls -l sip.conf

# rm /etc/asterisk/sip.conf

# cp sip.conf /etc/asterisk/

# service asterisk restart

# asterisk -x 'sip show users' 

# chown asterisk:asterisk /etc/asterisk/sip.conf
или
# chmod +r /etc/asterisk/sip.conf

# service asterisk restart

# asterisk -x 'sip show users'

Вопросы

  1. Что обозначают ключ «u» в команде ps?
  2. Для чего предназначены команды chmod, chown?
  3. Что определяет маска 640 или
    -rw-r-----

    для файла?

  4. Что обозначает бит «x» для файла и каталога
  5. Что обозначает значение атрибута EUID=0 для процесса?

Модуль 5. Программирование на shell

Теория

Лабораторные работы

Вопросы

  1. Объясните, результаты выражений:
    a=1;a=a+1;echo $a
    a=1;a=$a+1;echo $a
    a=1;a='$a+1';echo $a
    a=1;a=$(($a+1));echo $a
    a=Hello;a=$a World;echo $a
    a=Hello;a=$a\ World;echo $a
    a=Hello;a='$a World';echo $a
    a=Hello;a="$a World";echo $a
    a=/bin;a="ls $a | wc -l";echo $a
    a=/bin;a='ls $a | wc -l';echo $a
    a=/bin;a=`ls $a | wc -l`;echo $a
    a=/bin;a=$(ls $a | wc -l);echo $a
  2. Что определяет комбинация «#!» в начале файла?
  3. Что содержит значение переменных $0, $1, $!
  4. Объясните результат выражения:
    echo '#!/bin/ls' > ex1; chmod +x ex1; ./ex1
  5. В чем разница и что общего при запуске скрипта следующими способами:
    ./script.sh
    . script.sh
    sh script.sh
  6. Объясните элементы выражения
    while :;do
  7. Что обозначают операторы continue, break, exit в sh программах?
  8. Чем завершаются операторы if, case, do в sh программах?
  9. Какой оператор поможет запретить прекращение выполнения скрипта комбинацией клавиш «Ctrl C»?
  10. Какой оператор поможет получить ввод пользователя в sh программе?
  11. Объясните элементы выражений
    while [ $i -lt 254 ]
    while test $i -lt 254
  12. Чем оперирует цикл for в sh программах?
  13. Какой оператор позволяет открывать файлы в sh программах?
  14. Какой оператор необходим для написания на sh искусственного интеллекта?

Модуль 6. Дополнительные лабораторные работы

работа_в_командной_строке_unix.txt · Последние изменения: 2019/11/11 09:37 — val