Вход на сайт Навигация по сайту Любить и уважать Бонус-счастливчики
|
Содержимое файла "12 вариант.doc" (без форматирования) Міністерство освіти і науки України ОДЕСЬКИЙ НАЦІОНАЛЬНИЙ ПОЛІТЕХНІЧНИЙ УНІВЕРСИТЕТ Інститут радіоелектроніки і телекомунікацій Кафедра інформаційної безпеки Затверджую Зав. кафедрою ІБ Маракова I.I. (підпис) " " 2007 р. КУРСОВА РОБОТА з дисципліни "Операційні системи" Варіант №12 Розробив студент гр. РБ-051 А.О. Кузнецов (підпис) " " 200_ р. Керівник роботи викл. каф. ІБ О.С. Сафронов (підпис) " " 200_ р. Одесса 2007 Реферат Ця курсова робота складається з завдань, кожне з яких направлене на вивчення файлової структури та команд операційної системи Linux. Послідовність завдань розміщена таким чином, що поступово, з виконанням кожного наступного завдання, ми навчаємося контролювати та спостерігати за процесами, що відбуваються в середовищі операційної системи Linux. В тексті містяться приклади роботи різних команд ОС Linux, їх опис, пояснення стандартних каталогів Linux. Також приведені конфігураційні тексти файлів, з поясненням записаних у них строк і команд. У останньому завданні, наведений текст сценарію оболонки та повний його опис. СОДЕРЖАНИЕ Вступление……………………………………………………….....4 Команда ls………………………………………………………..…5 Команды навигации…………………………………………………6 Команды работы с файлами и каталогами…………………….……7-8 Изучение файловой системы ОС Linux……………………………………9 Команды просмотра файлов………………………………………………10 Команды работы с архивами файлов……………………………………..11 Права доступа к ресурсам в ОС Linux……………………………………12 Процессы и сигналы в ОС Linux..……………………………….……14-17 Описание команды df..……………………………………………………18 Конфигурационный файл……………………………………………..19-24 Сценарий оболочки……………………………………………………25-27 Вывод...…………………………………………………………………….28 Список использованной литературы…………………………………….29 ВСТУПЛЕНИЕ Linux - это популярная компьютерная программная среда с открытым исходным кодом, которая конкурирует с системами Microsoft Windows и Apple Macintosh. Она имеет четыре основные части. Ядро Это операционная система низкого уровня, обрабатывающая файлы, работающая с дисками, сетью и выполняющая другие необходимые операции Программы Тысячи программ для работы с файлами, текстовые редакторы, математические программы, программы для работы с аудио- и видеоинформацией, для создания веб-сайтов, шифрования, записи ком-.. пакт-дисков и т. д. К омандный процессор ( s hell ) Пользовательский интерфейс для набора команд, их исполнения и отображения результатов. Существуют различные командные процессоры: Bourne shell, Kom shell, С shell и др. В этой книге рас- сматривается bash, Bourne Again Shell, который, как правило, устанавливается для пользователей по умолчанию. Тем не менее, все эти командные процессоры имеют схожие основные функции. X Это графическая система, которая обеспечивает поддержку окон, меню, иконок, мыши и других известных элементов GUI - графического интерфейса пользователя. На основе X строятся более сложные графические среды; наиболее популярные из них - KDE и GNOME. На протяжении этой книги мы рассмотрим программы, которые для работы открывают собственные Х-окна. 1. Краткое описание команды ls для ОС Linux с различными опциями и параметрами. Объяснение опций –l и –m. Результат работы этой команды вместе с опциями. Команда [ls] (произносится как “эл эс”, или list files) выводит список атрибутов файлов и директорий. С помощью этой команды можно вывести список файлов в текущей директории # ls в заданных директориях: # ls dir1 dir2 dir3 или для отдельных файлов: # ls file1 file2 file3 При рассмотрении заданных в варианте опций –l и –m, следует указать, что опции –l выводит список всех файлов и каталогов , время их создания и размер. Пример выполнения команды ls и опции -l: dlx:~# ls -l total 26 -rw-r--r-- 1 root root 0 Mar 15 10:11 2 -rw-r--r-- 1 root root 2401 Mar 16 00:09 my -rwxr-xr-x 1 root root 17408 Mar 21 08:12 ping* -rw-r--r-- 1 root root 2401 Mar 15 03:36 test -rw-r--r-- 1 root root 2401 Mar 21 10:25 test.txt В свою очередь опция –m выводит список файлов через запятую. Пример выполнения команды ls опции –m: dlx:~# ls -m 2, my, ping*, test, test.txt 2. Данное задание направлено на изучение команд навигации в ОС Linux Команда cd[путь] (сменить директорию на указанную) устанавливает вашу текущую рабочую директорию. Если указать директорию, то команда cd сменит текущую директорию на указанную директорию. Отсюда следует, что команда cd[путь] перемещает пользователя в нужную ему директорию. А имя директории пользователя содержит переменная HOME. [pwd] – встроенная команда, которая выводит абсолютный путь текущей рабочей директории ~/#pwd /root 3. Команды работы с файлами и каталогами 1) [mkdir] – эта команда создает одну или несколько директорий. Например: # mkdir d1 d2 d3 # mkdir –m/d1 # mkdir –p /one/two/three Может работать с такими полезными опциями: [-p] Если указать путь к директории (а не просто ее имя), то команда создает все необходимые родительские директории автоматически. [-m] Создать директорию с заданными правами доступа. 2) [rmdir] – эта команда удаляет одну или более пустых директорий, которые указывает пользователь. Чтобы удалить непустую директорию и ее содержимое, требуется использовать команду rm –r директория. Также можно использовать опции –ri и –rf для интерактивного удаления и удаления с игнорированием любых сообщения об ошибках и других уведомлений. # rmdir –p /one/two/three при использовании опции –p происходит удаление не только директории /one/two/three, но также и директории /one/two и /one если они конечно существуют. 3) [cp] – команда просто копирует файл: # cp file1 file2 или копирует несколько файлов в директорию: # cp file1 file2 file 3 dir Используя опции [–a] или [–R], можно рекурсивно копировать директории. Если целевой_файл существует и не является каталогом, его старое содержимое теряется. Режим, владелец и группа целевого_файла при этом не меняются. 4) [ln] – ссылка (link), это созданный командой ln указыватель на другой файл. Существует два вида ссылок. Символьная ссылка указывает на файл по его пути точно так же, как “ярлык” в Windows или “псевдоним” в Macintosh. Они не ссылаются на индексный дескриптор файла. А жесткая ссылка – это просто второе название физического файла на диске, индексный дескриптор; командой ln можно создать множество ссылок на один файл и все они будут иметь один дескриптор. # ln имя_файла имя_ссылки # ln 1.txt link.txt # ln –f 1.txt 2.txt – опция –f перезаписывает файл, если такой есть, без дополнительных предупреждений. 5) [mv] – эта команда может либо переименовывать файлы: # mv file1 file2 Команда mv перемещает (переименовывает) файл1 в целевой_файл. Файл1 не должен совпадать с целевым_файлом (будьте внимательны при использовании метасимволов shell'а). Если целевой_файл является каталогом, то файл1, файл2, ..., перемещаются в него под своими именами. Только в этом случае можно указывать несколько исходных файлов. # mv file1 file2 file3 file4 destination_directory 6) [rm] Команда rm служит для удаления указанных имен файлов из каталога. Если заданное имя было последней ссылкой на файл, то файл уничтожается. Для удаления пользователь должен обладать правом записи в каталог; иметь право на чтение или запись файла не обязательно. Следует заметить, что при удалении файла в Linux, он удаляется навсегда. Здесь нет возможностей вроде "мусорной корзины" в windows 95/98/NT или команды undelete в DOS. # rm file1 file 2 file3 либо рекурсивно удалять директории # rm –r dir1 dir2 4. Изучение файловой системы ОС Linux: / - основной раздел. /bin – основные исполняемые файлы. Содержит стандартные программы; /boot – содержит файлы, необходимые для загрузки системы; /dev – представления для подключенных устройств; /etc – конфигурационные системные файлы; /home – содержит домашние каталоги пользователей; /lib – библиотека ядра ОС; /mnt – здесь как правило создаются основные точки монтирования, хотя подмонтировать файловую систему можно к любому другому каталогу; /proc – с помощью файлов в /proc можно получить информацию о состоянии ядра, процессов, параметрах компьютера и т.д. /root – как правило здесь хранятся файлы главного пользователя (root-а); /sbin - исполняемые файлы главного пользователя; /tmp – временные файлы; /usr – системные файлы; /var – журналы, буферные или заблокированные файлы; 5.Команды просмотра файлов 1) cat – Команда позволяет вывести на экран содержимое указанного в качестве аргумента файла или просто просмотреть файлы целиком. Например # cat need.txt Если файл находится не в текущей директории: # cat /home/konstantin/need.txt 2) less – данная команда используется для постраничного просмотра текста. Она хорошо подходит для чтения текстовых файлов или в качестве последней команды в конвейере командного процессора с большими выходными данными. 3) more – Этот фильтр позволяет осуществлять проверку текста, выведенного на один полный экран. После каждого заполнения экрана команда делает паузу и выводит на нижней строке экрана сообщение типа: [--More-] Если при этом пользователь нажимает клавишу Enter, то на экран будет выведена следующая строка текста. Если пользователь нажимает клавишу SPACE (пробел), будет выведен следующий полный экран. 6. Команды работы с архивами файлов. Команды zip и unzip сжимают и разжимают файлы в формате GNU Zip. Сжатые файлы имеют суффикс .gz. Примеры команд: zip file – сжать файл file в файл file.gz. Исходный файл удаляется; zip –c file – вывести сжатые файлы в стандартный поток вывода; cat file | zip – сжать данные из конвейера; unzip file.gz – разжать файл file.gz в файл. Исходный файл file.gz удаляется; zcat file.g – разжать файлы в стандартный поток вывода; unzip –c file.gz – разжать данные в стандартный поток вывода; 7.Права доступа к ресурсам в ОС Linux: Команда chmod устанавливает права доступа к файлам и директориям. Не каждый файл должен быть доступен для всех, и chmod – это инструмент, который позволяет решать эту задачу. Обычные права включают в себя права на чтение, запись и выполнение, и они могут относиться к владельцу файла, группе пользователей, и/или ко всем остальным пользователям. В рамках символьного способа изменения прав вызов программы chmod имеет следующий вид: # chmod права <файл | каталог> Команда для варианта 12: chmod g-r, chmod 715 Объяснение выполнения данной команды: [g] – устанавливает права доступа для группы; [-] отменяет право доступа; [r] – право на чтение файла или каталога; Из приведенных выше опций, описывающих правила назначения прав для пользователей и группы пользователей, можно легко сделать вывод, что команда chmod g-r – отменяет право на чтения файла или каталога пользователю и группе пользователей. Для изменения прав доступа абсолютным методом команда chmod используется следующим образом: сhmod число < файл | каталог> Число называется маской прав доступа и представляет собой число в восьмеричной системе, задающее наборы прав доступа. Рассматривая число 715, где 7 – первый разряд, 1 – второй разряд, 5 – третий разряд, следует заметить, что первый разряд задает права доступа для владельца файла, второй – для группы, третий – для остальных пользователей. Одному разряду восьмеричной системы соответствует три разряда в двоичной. 8. Изучение команды монтирования устройств mount Для монтирования ФС предназначена программа mount, для размонтирования – umount. Общий формат вызова следующий: [ mount –t fs_type device mount_point ] В качестве параметра [fs_type] программы mount указывается тип подключаемой файловой системы. Следующим параметром является устройство (device). В качестве устройства выступает носитель данных, например, /dev/hdd. Далее задается сама точка монтирования (mount_point). Примонтировать файловую систему можно к любому каталогу корневой файловой системы. Изначально рекомендовано создать подкаталог в каталоге /mnt с осмысленным именем и к нему подмонтировать нужную файловую систему. При монтировании устройств можно использовать следующие опции: [-a] монтирование всех файловых систем, указанных в файле /etc/fstab, кроме тех, для которых указан параметр noauto [-r] монтирование в режиме “только чтение” [-w] монтирование в режиме “чтение/запись” [-t тип_ФС] задает тип файловой системы Монтирование флоппи-диска и CD-ROM-а в /TEST/STUDENT: 1) Монтирование флоппи-диска # mount –t vfat /dev/fd0 /TEST/STUDENT 2) Монтирование привода CD-ROM # mount –t iso9660 /dev/hdd /TEST/STUDENT монтирование и привода CD-ROM и флоппи-диска # mount –t vfat /dev/fd0 iso9660 /dev/hdd /TEST/STUDENT Разработка команды размонтирования устройства: umount /TEST/STUDENT umount – противоположность mount. Она делает недоступным раздел диска. Перед извлечением сменных носителей из дисководов всегда нужно их размонтировать, иначе есть риск повреждения их файловой системы. [umount –a ] размонтирование всех смонтированных устройств. 9. Процессы и сигналы в ОС Linux. 1) Команда ps выводит информацию обо всех работающих процессах и, опционально, о процессах других пользователей. Команда ps имеет, по крайней мере 80 опций; поэтому рассмотрим наиболее важные и часто употребляемые. Для просмотра списка всех процессов необходимо выполнить команду # ps –ux всех процессов пользователя # ps –U имя_пользователя всех работающих экземпляров программы program_name # ps –C program_name процессов в терминале N # ps –tN конкретных процессов 1,2 и 3505 # ps –p1,2,3505 всех процессов с командными строками, урезанным шириной экрана # ps –ef всех процессов с полными командными строками # ps –efww всех процессов в виде дерева, когда дочерние процессы располагаются ниже родительских с отступом # ps –efH Ключ [-a] позволяет просмотреть все процессы. Но это еще не весь перечень, потому что отобразятся только программы своего терминала. Если требуется полный список процессов, запущенных со всех терминалов, то нужно добавить ключ [-x]. Помимо этого, можно увидеть имя пользователя, под которым работает процесс, для этого нужно добавить ключ [-u]. # ps –aux Результат выполнения введенной команды: USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.2 0.1 1504 512 ? S 20:55 0:00 init [2] root 2 0.0 0.0 0 0 ? SN 20:55 0:00 [ksoftirqd/0] root 3 0.0 0.0 0 0 ? S< 20:55 0:00 [events/0] root 4 0.0 0.0 0 0 ? S< 20:55 0:00 [khelper] root 5 0.0 0.0 0 0 ? S< 20:55 0:00 [kacpid] root 33 0.0 0.0 0 0 ? S< 20:55 0:00 [kblockd/0] root 43 0.0 0.0 0 0 ? S 20:55 0:00 [pdflush] root 44 0.0 0.0 0 0 ? S 20:55 0:00 [pdflush] root 46 0.0 0.0 0 0 ? S< 20:55 0:00 [aio/0] root 45 0.0 0.0 0 0 ? S 20:55 0:00 [kswapd0] root 182 0.0 0.0 0 0 ? S 20:55 0:00 [kseriod] root 203 0.0 0.0 0 0 ? S< 20:55 0:00 [ata/0] root 297 0.0 0.0 0 0 ? S< 20:55 0:00 [reiserfs/0] root 351 0.0 0.1 1492 464 ? S root 3696 0.0 2.1 60280 5488 ? S 20:57 0:00 /usr/lib/evolution/evolution-data-server-1.0 --oaf-activate-iid=OAFIID:GNOME_Evolution_DataServer_CalFactory:1.0 --oaf-ior-fd=25 root 3713 0.0 0.2 2192 752 ? S 20:57 0:00 /usr/lib/nautilus-cd-burner/mapping-daemon root 3715 0.0 0.6 3036 1644 pts/1 Ss 20:57 0:00 /bin/bash root 3720 0.0 0.3 2620 852 pts/1 R+ 20:59 0:00 ps aux Колонка STAT показывает состояние процесса. Здесь можно встретить следующие коды: [S] – спящий, это нормальное состояние для сервисов, которые просыпаются только на редкие запросы клиентов; [R] – исполняемый в данный момент; [T] – в состоянии отладки или остановлен; [z] – зависший. Такие можно смело “убивать”; [W] – не имеет резидентных страниц; [<] – обладает высоким приоритетом; [N] – имеет низкий приоритет; Это основные состояния, которые можно увидеть у процессов во многих Linux-подобных системах. Если в колонке стоит вопросительный знак, то это означает, что процесс запущен еще на этапе загрузки системы и не принадлежит какому-либо терминалу. Команда ps выводит статическую информацию. Для наблюдения за нагрузкой системы удобнее использовать команду top. Она отображает список процессов, отсортированный по убыванию в зависимости от нагрузки. Таким образом, можно увидеть, какой сервис или программа отнимает драгоценные ресурсы и не дает нормально работать с компьютером. 2) Команда kill отправляет сигнал процессу. Он может завершить процесс, прервать его, приостановить, аварийно завершить и т.д. Для того чтобы выполнять над ним операции нужно быть владельцем процесса или суперпользователем # kill 13243 Если эта команда не будет работать – некоторые программы перехватывают сигнал и не реагируют на него – нужно добавить опцию [–KILL]: # kill –KILL 13243 которая практически гарантирует выполнение команды. Однако это некорректный выход для программы, он может оставить в системе не освобожденные ресурсы после ее завершения. Помимо программы /bin/kill в файловой системе, большинство командных процессоров имеют встроенные команды kill, но их синтаксис и поведение отличаются. Для того чтобы получить описание процесса необходимо выполнить команду man 7 signal. 10. Краткое описание команды df Эта команда позволяет определить свободное место на жестком диске или разделе. Если устройство не указано, то на экран выводится информация о смонтированных файловых системах. Пример результата выполнения команды: Filesystem lk-blocks Used Available Use% Mounted on /dev/hda 2 16002200 2275552 12913760 15% / none 127940 0 127940 0% /dev/shm Результирующая таблица состоит из следующих колонок: Filesystem – диск, файловая система которого смонтирована; lk-blocks – количество логических блоков; Used – количество использованных блоков; Available – количество доступных блоков; Use% - процент использованного дискового пространства; Mounted on – монтировка файловой системы; 11. Конфигурационный файл. Текст конфигурационного файла inittab. Его объяснение и назначение. С помощью LILO запускается программа загрузки ОС, которая настраивает все необходимое оборудование, загружает драйверы и монтирует жесткие диски. По окончанию этого процесса с винчестера запускается программа init, которая завершает загрузку. У программы init, как и у большинства других утилит Linux, есть свой конфигурационный файл, в котором можно производить определенные настройки. Этот файл называется inittab и расположен в папке /etc. Файл Hастройки программы inittab # # inittab This file describes how the INIT process # should set up # the system in a certain run-level # Author Miquel van Smoorenburg, # # Modified for RHS Linux by Marc Ewing and # Donnie Barnes # # Default runlevel. The runlevels used by RHS are: # 0 – halt (Do NOT set initdefault to this) # 1 – Single user mode # 2 – Multiuser, without NFS (The same as 3, if you do not have networking) # 3 – Full multiuser mode # 4 – unused # 5 – X11 # 6 - reboot (Do NOT set initdefault to this) # id: 5 : initdefault: # System initialization. Si::sysinit:/etc/rc.d/rc.sysinit # What to do in single-user mode. ~~:S:wait:/sbin/sulogin 10:0:wait:/etc/rc.d/rc 0 11:1:wait:/etc/rc.d/rc 1 12:2:wait:/etc/rc.d/rc 2 13:3:wait:/etc/rc.d/rc 3 14:4:wait:/etc/rc.d/rc 4 15:5:wait:/etc/rc.d/rc 5 16:6:wait:/etc/rc.d/rc 6 # Things to run in every runlevel. ud::once:/sbin/update # Trap CTRL-ALT-DELETE ca::ctrlaltdel:/sbin/shutdown –t3 –r now # When our UPS tells us power has failed, # assume we have a few minutes # of power left. Schedule a shutdown for 2 minutes from now. # This does, of course, assume you have powerd installed # and your # UPS connected and working correctly. pf::powerfail:/sbin/shutdown –f –h +2 “Power Failure; System Shutting Down” # If power was restored before the shutdown kicked in, # cancel it. pr:12345:powerokwait:/sbin/shutdown –c “Power Restored; Shutdown Cancelled” # Run gettys in standard runlevels 1:2345:respawn:/sbin/mingetty tty1 2:2345:respawn:/sbin/mingetty tty2 3:2345:respawn:/sbin/mingetty tty3 4:2345:respawn:/sbin/mingetty tty4 5:2345:respawn:/sbin/mingetty tty5 6:2345:respawn:/sbin/mingetty tty6 # Run xdm in runlevel 5 # xdm is now a separate service x:5:respawn:/etc/X11/prefdm -nodaemon Файл начинается с комментария, в котором дана информация о модуле и авторе, а затем – описание различных уровней, которые поддерживаются системой. В некоторых дистрибутивах их может быть от двух, а Red Hat Linux-подобные системы поддерживают целых семь. Рассмотрим каждый уровень: 0 – остановка ОС; 1 – текстовый однопользовательский режим, используется редко и только администраторами для выполнения критически важных изменений; 2 – текстовый многопользовательский, локальный режим (нет поддержки сети); 3 – текстовый многопользовательский, сетевой режим; 4 – не используется, но в дальнейшем может быть задействован; 5 – графический режим; 6 – перегрузка системы; Есть еще уровень S, что соответствует однопользовательскому режиму, он применяется в файлах сценариев, но иногда присутствует и в inittab. Структура файла. Каждая строка (не считая комментариев и пустых строк) выглядит следующим образом: Идентификатор:уровни:флаги:действие Строка состоит из четырех аргументов, отделенных между собой двоеточием. Рассмотрим каждый параметр в отдельности: Идентификатор – уникальный номер строки, который имеет произвольное значение. Единственное ограничение – в файле не должно быть двух строк с одинаковыми идентификаторами. Уровни – режимы, в которых будет выполняться команда. Например, если ей надлежит работать на втором и третьем уровнях, то здесь должно стоять число 23. Это просто цифры 2 и 3, которые не разделяют пробелами или какими-нибудь другими знаками. Если команду нужно выполнять на любом уровне, то этот параметр должен быть пустым. Флаги – задает поведение команды, может принимать одно из следующих значений: boot – выполняется только один раз при загрузке ОС. В этом случае параметр уровни просто игнорируется; bootwait – равносильно указанию параметров boot и wait одновременно, т.е. выполнение должно быть во время загрузки ОС, и при этом нужно дождаться завершения операции; ctrlaltdel – нажата комбинация клавиш initdefault – строка с этим параметром читается только при первом обращении к init и определяет уровень загрузки. Если в этой строке будет стоять число 5, то ОС будет сразу в графический режим. Если поставить значение параметра в цифре 3, то ОС загрузится в текстовый многопользовательский режим с поддержкой сети; off – отключить выполнение команды, что равноценно превращению строки в комментарий или даже удалению. Но если этот процесс работает, то ему передается сигнал, требующий завершения программы; once – выполнять команду только один раз; powerfail - отключение электроэнергии. powerokwait – подача электроэнергии возобновилась; powerwait – система перешла в режим ожидания восстановления питания. Предполагается, что к компьютеру подключен источник бесперебойного питания, который сообщил об ошибке (отсутствие питания); respawn – если во время выполнения произойдет ошибка, то повторить команду. Это бывает необходимо для критически важных программ, которые должны быть всегда в запущенном состоянии; sysinit – такие команды выполняются перед тем, как появится консоль (приглашение ввести пароль). При этом ОС дожидается окончания выполнения команды; wait – ожидать завершения процесса, а значит, программа init не будет выполнять других действий, пока не закончится выполнения команды указанной в этой строке; Действие – команда, которая должна быть выполнена. Самая первая строка после комментариев выглядит так: id: 5 : initdefault: Параметр initdefault определяет, как будет загружаться система. В данном случае файл init будет выполняться с 5 уровнем, т.е. в графическом режиме. Следующие строки: 10:0:wait:/etc/rc.d/rc 0 11:1:wait:/etc/rc.d/rc 1 12:2:wait:/etc/rc.d/rc 2 13:3:wait:/etc/rc.d/rc 3 14:4:wait:/etc/rc.d/rc 4 15:5:wait:/etc/rc.d/rc 5 16:6:wait:/etc/rc.d/rc 6 показывают, что для каждого уровня своя строка, и при этом запускается один и тот же файл /etc/rc.d/rc, но после имени через пробел стоит число, соответствующее текущему уровню. Этот параметр увидит программа /etc/rc.d/rc, основная задача которой – убить все текущие процессы и запустить другие, соответствующие новому режиму выполнения. Перейдя в папку /etc/rc.d/ и просмотрев содержимое, следует заметить, что здесь есть каталоги с именами rcX.d, где X- это число от 0 до 6, соответствующее уровню выполнения. В каждой папке есть файлы, имена которых начинаются с буквы “K” или “S”. При выходе с уровня выполняются все файлы первого типа, они уничтожают все запущенные на нем процессы. А при входе на уровень выполняются файлы на букву “S”, которые активизируют все необходимые процессы данного уровня. ca::ctrlaltdel:/sbin/shutdown –t3 –r now Данная строка выполняется на любом уровне, потому что второй аргумент отсутствует. Третий параметр равен ctrlaltdel. Команда shutdown с ключом [–r] - это перезагрузка. Параметр [–tX] задает время задержки, где X – количество секунд до рестарта. pf::powerfail:/sbin/shutdown –f –h +2 “Power Failure; System Shutting Down” Приведенная выше строка выполняется на любом уровне. Здесь снова участвует команда shutdown, но теперь с другими ключами: [-f] - отменяет проверку диска fsck; [-h] – указывает на необходимость выключения питания; [+2] – задает время в минутах до перезагрузки; pr:12345:powerokwait:/sbin/shutdown –c “Power Restored; Shutdown Cancelled” Команда выполняется на уровнях с 1 по 5 и отменяет перезагрузку. На 0 и 6 уровнях, когда уже начался процесс выключения системы или рестарт, аннулировать что-либо уже поздно. Отмена происходит вызовом команды shutdown с ключом [–с], после чего идет текст сообщения о том, что питание восстановилось и можно работать. Теперь посмотрим на следующие строки: 1:2345:respawn:/sbin/mingetty tty1 2:2345:respawn:/sbin/mingetty tty2 3:2345:respawn:/sbin/mingetty tty3 4:2345:respawn:/sbin/mingetty tty4 5:2345:respawn:/sbin/mingetty tty5 6:2345:respawn:/sbin/mingetty tty6 Здесь на шести терминалах (ttyX, где Х – это номер терминала или виртуальной консоли) выдается сообщение на вход в систему. x:5:respawn:/etc/X11/prefdm –nodaemon Эта строка выполняется на 5 уровне и запускает команду /etc/X11/prefdm, которая переводит работу в графический режим и отображает соответствующее окно входа в систему. 12. Самостоятельно написать сценарий (скрипт) оболочки. Скрипт в начале своей работы выводит свой PID и число позиционных параметров затем выводит переменные в формате : “Привет<Фамилия> ! Текущий каталог: <каталог>.”. Он обрабатывает один входной аргумент – число от 1 до 3, делает проверку : если нет ни одного входного аргумента, или их больше двух, или значение аргумента не является числом 1-3 , принудительно завершает скрипт с сообщением об ошибке.Если в порядке то выводит приветствие с фамилией соответствующей значению аргумента. #!/bin/sh echo $$ echo $# var1= Kuznetsov var2=Grazhdanov var3=Nekrasov tdir=`pwd` if [ $# -ne 1 –o $1 –gt 3 –o $1 –eq 0 ] then echo ‘Parametr vveden neverno’ exit 1 fi if [ -d /HOME/$var1 –a $1 -eq 1 ] then cd /HOME/$var1 echo \”Privet ”<$var1>”! Tekushiy katalog: “<$tdir>”\” fi if [ ! -d /HOME/$var1 –a $1 -eq 1 ] then mkdir /HOME/$var1 cd /HOME/$var1 echo \”Privet ”<$var1>”! Tekushiy katalog: “<$tdir>”\” fi if [ -d /HOME/$var2 –a $1 -eq 2 ] then cd /HOME/$var2 echo \”Privet ”<$var2>”! Tekushiy katalog: “<$tdir>”\” fi if [ ! -d /HOME/$var2 –a $1 -eq 2 ] then mkdir /HOME/$var2 cd /HOME/$var2 echo \”Privet ”<$var2>”! Tekushiy katalog: “<$tdir>”\” fi if [ -d /HOME/$var3 –a $1 -eq 3 ] then cd /HOME/$var3 echo \”Privet ”<$var3>”! Tekushiy katalog: “<$tdir>”\” fi if [ ! -d /HOME/$var3 –a $1 -eq 3 ] then mkdir /HOME/$var3 cd /HOME/$var3 echo \”Privet ”<$var3>”! Tekushiy katalog: “<$tdir>”\” fi Выводы За время выполнения курсовой работы научился пользоваться основными консольными командами, которые направлены на повышение эффективности работы пользователя с системой Linux, а так же привел их краткое описание. С помощью этих команд можно легко работать с различными директориями, файлами, контролировать и управлять различными процессами в системе. В конце курсовой работы составил сценарий в программной оболочке. Список использованной литературы: “Linux глазами хакера” – М.Фленов, изд-во БХВ-Петербург, 2005г. “Самоучитель Linux” – Д.Н.Колисниченко, изд-во НИТ, 2004г. |
Посетителей: 0, из них зарегестрированных: 0, гостей: 0 Зарегистрированные пользователи: Подробно | Страница сгенерирована за 0.0617 сек. |