Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Работа с консолями




Done

Do

Управление процессами

24. С правами пользователя создайте в своей директории сценарий с именем abcd. Сценарий можно создать с помощью команды cat:

cat >abcd

#! /bin/bash

while: rem обратите внимание на пробел перед двоеточием!

# примечание вводить не нужно

echo HELLO!

Ctrl+d

25. Используя команду chmod, присвойте пользователю права на чтение и исполнение данного сценария. Запустите сценарий на исполнение (на экран должны непрерывно выводиться приветствия HELLO!).

26. Перейдите в третью консоль, с помощью команды top просмотрите список процессов и найдите в нем «зависший» процесс, запущенный пользователем (на самом деле это только имитация «зависания», которое пользователь легко может прекратить сам). Прочитайте идентификатор процесса PID.

27. Нажатием Ctrl+C из второй консоли остановите процесс. Как изменилось при этом состояние процесса?

28. Повторно запустите из второй консоли процесс, перейдите в первую консоль и отправьте «зависшему» процессу сигнал на останов (командой kill или внутренней командой k из работающей утилиты top).

29. Запустите ранее скопированную в каталог /bin утилиту signorer. Отправьте ей из этой же консоли несколько прерывающих сигналов в виде комбинаций клавиш (Ctrl-C, Ctrl-\, Ctrl-Z). Понаблюдайте за реакцией процесса. Как вы полагаете, по какой причине этот процесс не удается остановить?

30. Перейдите в другую консоль и отправьте «непослушному» процессу сигнал kill -20 PID. Как реагирует процесс на данный сигнал? Посмотрите в электронном справочнике, что означает данный сигнал.

31. С помощью команды kill -9 PID отправьте этому процессу сигнал принудительного завершения. С другой консоли проконтролируйте выполнение команды. Остановился ли процесс? Остался ли он в списке процессов? Какая программа на самом деле перехватывает и исполняет команду kill -9 PID?

32. С помощью команды echo $PATH поочередно из консоли администратора и пользователя user1 выведите список директорий, в которых производится поиск исполняемых файлов, заданных только по имени. В чем заключается различие выведенных списков? Почему в списке PATH администратора отсутствует текущий каталог (.)? Почему в списке PATH пользователя отсутствует каталог /sbin? Имеет ли пользователь возможность изменить порядок проверки каталогов для администратора?

33. Перейдите в первую консоль и повторите запуск утилит с правами суперпользователя.

34. Убедитесь в том, что пользователю разрешен запуск указанных утилит. Объясните, почему пользователь не может запустить утилиты с некоторыми «критичными» параметрами? Где, по вашему мнению, расположен механизм контроля за ходом исполнения таких команд (в ядре операционной системы, в командной оболочке, в самой утилите?). Ответ обоснуйте.

35. С правами пользователя скопируйте в свой рабочий каталог один из исполняемых файлов с параметром SUID каталога /bin (исполняемые файлы выделены цветом и символом *, а параметр SUID отмечен символом s в правах владельца на исполнение). Как изменились права доступа к файлу после его копирования?

36. Из второй консоли с правами пользователя скопируйте в свой домашний каталог утилиту, которую разрешено запускать только администратору (например, chattr). Копирование производите с параметрами, гарантирующими переход копии во владение пользователю. Убедитесь, что пользователь имеет на скопированный файл все необходимые права. Попробуйте использовать свою копию утилиты по ее назначению (в случае копирования утилиты chattr установите дополнительный атрибут +i одному из своих файлов). Сделайте выводы.

 

В тексте задания, хотя это не вполне верно, под консолью и терминалом будет пониматься один и тот же объект.

37. С помощью команды useradd –m <user_name> создайте в системе учетные записи трех новых пользователей: alisa, berta и wanda. Присвойте им одинаковые пароли 12345 и войдите под их именами в систему из виртуальных консолей /dev/tty2 (Alt+F2), /dev/tty3 (Alt+F3) и /dev/tty4 (Alt+F4).

38. Поочередно запустите из консолей каждого из пользователей несколько команд: tty; mesg; ls –l $tty; id –G. С их помощью определите:

· как правильно именуются файлы специальных устройств, связанные с консолями,

· доступны ли консоли для вывода информации для членов специальной «консольной» группы,

· какие права доступа определены на консоли для владельцев, членов их группы и иных пользователей,

· включены ли пользователи в какие–либо общие группы. В какие именно?

39. Используя в каждой из консолей команды whoami, who и w, определите, зависит ли вывод информации от имени ее инициатора (исключая первую команду). Насколько подробна и достаточна информация, выводимая каждой из утилит?

40. Перейдите в консоль пользователя berta и заблокируйте ее на запись командой mesg n. Командой ls –l $tty выведите права доступа пользователей к этой консоли. В соответствующем столбце должно отобразиться что–то похожее на crw–––––––.

41. Перейдите в консоль пользователя alisa. Определите рабочую консоль пользователя berta и командой write отправьте ей произвольное сообщение. Проверьте, дошло ли отправленное сообщение до адресата. Почему?

42. С правами одного из обычных пользователей отправьте иным пользователям «широковещательное» сообщение с помощью команды wall. Получено ли сообщение? Почему? Может ли пользователь создать помеху для администратора, забрасывая его потоком сообщений? Можно ли сделать это скрытно? Повторите отправку сообщений с помощью команды wall, используя права root.

43. Используя права одного из обычных пользователей, попытайтесь полностью открыть для других (на чтение и запись) его терминал. Затем попробуйте из консоли другого пользователя записать что–либо в доступную консоль, а также прочитать из нее вводимую информацию. Объясните полученные результаты.

44. Используя права одного из обычных пользователей, попытайтесь полностью заблокировать его консоль (например, в целях имитации отказа системы).

45. С правами суперпользователя заблокируйте программный интерпретатор пользователя командой

skill STOP tty3,

после чего переключитесь в консоль «заблокированного» пользователя, убедитесь, что он беспомощен в отношении вводимой и выводимой информации.

46. От имени суперпользователя отправьте «заблокированному» пользователю сообщение с помощью команды

echo Ваша консоль заблокирована > /dev/tty3

Попробуйте от имени пользователя откликнуться на полученное сообщение.

 

47. Из консоли суперпользователя разблокируйте пользовательскую консоль командой




Поделиться с друзьями:


Дата добавления: 2015-03-31; Просмотров: 756; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.015 сек.