Оперциаонные системы ASP Linux и Windows (47856)

Посмотреть архив целиком


Содержание


Введение 2

Раздел 1. Работа с графическим интерфейсом KDE ASP Linux 3

Тема 1.1. Вводное занятие 3

1.1.1. Цели и задачи практики. Вводный инструктаж. Техника безопасности 3

1.1.2. Семейство ОС Unix. ОС Linux 4

Тема 1.2. Знакомство с графическим интерфейсом ASP Linux 8

1.2.1. Графический интерфейс ASP Linux 8

Раздел 2. Работа с терминалом ASP Linux 23

Тема 2.1. Работа с файлами и папками ASP Linux 23

2.1.1. Команды работы с каталогами 24

2.1.4. Команды работы с файлами: управление файлами, генерация имен файлов 29

2.1.7. Команды работы с файлами: ссылки, сортировка файлов 32

Тема 2.2. Управление процессами 35

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

Тема 2.3. Права доступа к файлам и каталогам 42

2.3.1. Команды управления правами доступа 42

Тема 2.4. Редактирование файлов средствами редактора vi 46

2.4.1. Текстовый редактор vi 46

Тема 2.5. Изучение сетевых команд shell 49

2.5.1. Сетевые команды Shell 49

Раздел 3. Сервисные и прикладные программы ASP Linux 54

Тема 3.1. Архивация данных 54

3.1.1. Архиваторы ASP Linux 54

Тема 3.2. Знакомство с текстовым редактором ASP Linux пакта OpenOffice 57

3.2.1. Работа с текстовым редактором OpenOffice.org Writer: основные принципы работы 57

Тема 3.3. Итоговое зачетное занятие 60

Итоговое задание по практике 61

Литература 65

Технические средства обучения 65


Введение


Операционные системы разработаны для огромного количества разнообразных компьютерных систем. Наиболее известными операционными системами для компьютеров являются семейства операционных систем Microsoft Windows и UNIX.

Операционные системы, объединенные общим наименованием UNIX имеют ряд преимуществ перед обычно устанавливаемыми на персональные компьютеры ОС типа Windows. Изучаемая операционная система Linux с одной стороны относится к классу UNIX, а с другой — работает на персональных компьютерах на основе процессоров Intel (хотя сейчас уже существуют ее варианты и для других процессоров).

На сегодняшний момент Linux — самая современная, устойчивая и быстроразвивающаяся система, почти мгновенно вбирающая в себя самые последние технологические новшества.

Цель методических указаний – научить студента работать в среде ASP Linux, привить навыки работы с сервисным и прикладным программным обеспечением этой операционной систем, провести параллелизм в работе и функциональных возможностях изученной среды и ОС Windows, научить проводить аналогии между сходными по назначению программами, что поможет быстрее адаптироваться к новым инструментальным средствам, которые неизбежно придут на смену сегодняшнему программному обеспечению. Предполагается, что студенты уже знакомы с понятием компьютер, работали с MS-DOS или MS Windows. Методические указания содержат теоретические сведения по указанным темам и практические работы, в качестве закрепления полученного теоретического и практического материала по каждой теме приведены контрольные вопросы. В качестве итогового контроля в методических указаниях приведены примеры индивидуальных практических заданий студентов.



Раздел 1. Работа с графическим интерфейсом KDE ASP Linux


Тема 1.1. Вводное занятие


      1. Цели и задачи практики. Вводный инструктаж. Техника

безопасности

Учебная практика «Операционные системы и среды» предназначена для реализации государственных требований к минимуму содержания и уровню подготовки выпускника по специальности 090108 «Информационная безопасность» среднего профессионального образования. Практика является продолжением изучения дисциплины «Операционные системы и среды».

Цели и задачи практики:

В результате прохождения практики студент должен приобрести навыки:

  • закрепить знания, полученные на теоретических занятиях по предмету «Операционные системы и среды;

  • получить практические навыки по работе в среде ASP Linux 9.0 (интерфейс KDE)

  • получить навыки работы с текстовыми редакторами, такими как vi, OpenOffice.org Writer;

  • получить навыки работы с программами-архиваторами tar, gzip, bzip, bzip2;

  • изучить команды работы с файлами и каталогами, команды управления процессами программы Терминал.

База практики

Практика проводиться с использованием ПЭВМ типа IBM PC на базе процессора 386 и выше со следующими периферийными устройствами:

  • монитор SVGA? Hfphtitybt 800*600, цветной (16 цветов);

  • манипулятор типа «Мышь»;

  • клавиатура стандартная;

И с использованием следующих программных средств:

  • операционной системы ОС ASP Linux

  • KDE 3.3.1.

  • Офисный пакет OpenOffice

Организация практики

Практика рассчитана на 72 часа и проводится в течение двух недель. В начале практики проводиться инструктаж по соблюдению правил техники безопасности и промсанитарии, разъясняются цели и задачи практики. В течение всей практики проводиться выдача ежедневных практических заданий и проверка их выполнения. По окончании практики проводиться итоговый контроль работы практикантов.

Ежедневные занятия (6 часов) построены следующим образом:

- теоретическая часть: закрепление материала, полученного ранее, освоение нового материала, выдача задания и объяснение его выполнения (2 часа);

- практическая часть с применением ПЭВМ: выполнение постановки задачи, декомпозиция задачи на подзадачи, решение подзадач на ПЭВМ.

Теоретическая часть проводиться в аудитории. Практическая часть с применением ПЭВМ проводиться в лаборатории УВЦ АКВТ.

Для оптимизации усвоения материала группа разбивается на две подгруппы, в каждой из которых работает отдельный преподаватель.

Организация итогового контроля практикантов

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


1.1.2. Семейство ОС Unix. ОС Linux

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

Наиболее известными операционными системами для компьютеров являются семейства операционных систем Microsoft Windows и UNIX. Первые ведут свою родословную от операционной системы MS-DOS, которой оснащались первые персональные компьютеры фирмы IBM. Операционная система UNIX была разработана группой сотрудников Bell Labs под руководством Денниса Ричи, Кена Томпсона и Брайана Кернигана (Dennis Ritchie, Ken Thompson, Brian Kernighan) в 1969 году. В конце 70-х годов сотрудники Калифорнийского университете в Беркли внесли ряд усовершенствований в исходные коды UNIX, включая работу с протоколами семейства TCP/IP. Их разработка стала известна под именем BSD ("Berkeley Systems Distribution"). Она распространялась под лицензией, которая позволяла дорабатывать и усовершенствовать продукт, и передавать результат третьим лицам (с исходными кодами или без них) при условии, что будет указано, какая часть кода разработана в Беркли.

Операционные системы типа UNIX, в том числе и BSD, изначально разрабатывались для работы на больших многопользовательских компьютерах — мейнфреймах. Но персональные компьютеры постепенно наращивали мощь своего аппаратного обеспечения, и в наши дни они уже превосходят по возможностям те мейнфреймы, для которых в 70-х годах разрабатывалась ОС UNIX. В начале 90-х годов студент хельсинкского университета Линус Торвальдс (Linus Torvalds) приступил к разработке UNIX-подобной ОС для IBM-совместимых персональных компьютеров.

Основные характеристики ОС Linux

На сегодняшний момент Linux — самая современная, устойчивая и быстроразвивающаяся система, почти мгновенно вбирающая в себя самые последние технологические новшества. Исходные коды Linux распространяются свободно и общедоступны. Linux обладает всеми возможностями, которые присущи современным полнофункциональным операционным системам типа UNIX, такими как:

1). Реальная многозадачность

Ядро осуществляет режим разделения времени центрального процессора, поочередно выделяя каждому процессу интервалы времени для выполнения.

2). Многопользовательский доступ

Linux  поддерживает возможность одновременной работы многих пользователей. При этом Linux может предоставлять все системные ресурсы пользователям, работающим с хостом через различные удаленные терминалы.

3). Свопирование оперативной памяти на диск

Свопирование оперативной памяти на диск позволяет работать при ограниченном объеме физической оперативной памяти; для этого содержимое некоторых частей (страниц) оперативной памяти записываются в выделенную область на жестком диске, которая трактуется как дополнительная оперативная память. Это несколько снижает скорость работы, но позволяет организовать работу программ, требующих большего объема ОЗУ, чем фактически имеется в компьютере.

4). Страничная организация памяти

Системная память Linux организована в виде страниц объемом 4K. Если оперативная память полностью исчерпана, ОС будет искать давно не использованные страницы памяти для их перемещения из памяти на жесткий диск. Если какие-либо из этих страниц становятся нужны, Linux восстанавливает их с диска. Некоторые старые Unix-системы и некоторые современные платформы (включая Microsoft Windows) переносят на диск все содержимое ОП, относящееся к неработающему в данный момент приложению, (т. е. ВСЕ страницы памяти, относящиеся к приложению, сохраняются на диске при нехватке памяти) что менее эффективно.

5). Загрузка выполняемых модулей "по требованию"

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

6). Совместное использование исполняемых программ

Если необходимо запустить одновременно несколько копий какого-то приложения (либо один пользователь запускает несколько идентичных задач, либо разные пользователи запускают одну и ту же задачу), то в память загружается только одна копия исполняемого кода этого приложения, которая используется всеми одновременно исполняющимися идентичными задачами.

7). Общие библиотеки

Библиотеки — наборы процедур, используемых программами для обработки данных. Существует некоторое количество стандартных библиотек, используемых одновременно более чем одним процессом. В старых системах такие библиотеки включались в каждый исполняемый файл, одновременное выполнение которых приводило к непродуктивному использованию памяти. В новых системах (в частности, в Linux), обеспечивается работа с динамически и статически разделяемыми библиотеками, что позволяет сократить размер отдельных приложений.

8). Динамическое кэширование диска

Кеширование диска — это использование части оперативной памяти для хранения часто используемых данных с диска, что существенно ускоряет доступ к часто используемым программам и задачам. Пользователи MS-DOS работают со SmartDrive, который резервирует фиксированные области системной памяти для кеширования диска. Linux использует более динамичную систему кеширования: память, зарезервированная под кеш, увеличивается, когда память не используется, и уменьшается, если системе или процессу пользователя требуется больше памяти.

9). 100%-ное соответствие стандарту POSIX 1003.1. Частичная поддержка возможностей System V и BSD

POSIX 1003.1 (Portable Operating System Interface — интерфейс мобильной операционной системы) задаeт стандартный интерфейс Unix-систем, который описывается набором процедур языка Си. Сейчас он поддерживается всеми новыми ОС. Microsoft Windows NT также поддерживает POSIX 1003.1. Linux 100%-но соответствует POSIX. Дополнительно поддерживаются некоторые возможности System V и BSD для увеличения совместимости.

10). System V IPC

Linux использует технологию IPC (InterProcess Communication) для обмена сообщениями между процессами, использования семафоров и общей памяти.

11). Возможность запуска исполняемых файлов других ОС

Linux не является первой в истории операционной системой. Для ранее разработанных ОС, включая DOS, Windows 95, FreeBSD или OS/2, разработана масса различного, в том числе очень полезного и очень неплохого программного обеспечения. Для запуска таких программ под Linux разработаны эмуляторы DOS, Windows 3.1 и Windows 95. Более того, фирмой Vmware разработана система "виртуальных машин", представляющая собой эмулятор компьютера, в котором можно запустить любую операционную систему. Имеются аналогичные разработки и у других фирм. ОС Linux способна также выполнять бинарные файлы других Intel-ориентированных Unix-платформ, соответствующих стандарту iBCS2 (intel Binary Compatibility).

12). Поддержка различных форматов файловых систем

Linux поддерживает большое число форматов файловых систем, включая файловые системы DOS и OS/2, а также современные журналируемые файловые системы. При этом и собственная файловая система Linux, которая называется Second Extended File System (ext2fs), позволяет эффективно использовать дисковое пространство.

13). Сетевые возможности

Linux можно интегрировать в любую локальную сеть. Поддерживаются все службы Unix, включая Networked File System (NFS), удалeнный доступ (telnet, rlogin), работа в TCP/IP сетях, dial-up-доступ по протоколам SLIP и PPP, и т. д.. Также поддерживается включение Linux-машины как сервера или клиента для другой сети, в частности, работает общее использование (sharing) файлов и удаленная печать в Macintosh, NetWare и Windows.

14). Работа на разных аппаратных платформах

Хотя ОС Linux первоначально была разработана для ПК на базе Intel 386/486, сейчас она может работать на всех версиях Intel-овских микропроцессоров, начиная с 386 и кончая многопроцессорными системами на Pentium III (с Pentium IV возникли определенные трудности, но, судя по сообщениям в Интернете, они были вызваны ошибками в реализации процессора). Так же успешно Linux работает на различных клонах Intel от других производителей; в Интернете встречаются сообщения о том, что на процессорах Athlon и Duron от AMD Linux работает даже лучше, чем на Intel. Кроме того, разработаны версии для других типов процессоров — ARM, DEC Alpha, SUN Sparc, M68000 (Atari и Amiga), MIPS, PowerPC и других (отметим, что в настоящей книге рассматривается только вариант для IBM-совместимых компьютеров).

Дистрибутивы Linux

В любой операционной системе можно выделить 4 основных части: ядро, файловую структуру, интерпретатор команд пользователя и утилиты. Ядро — это основная, определяющая часть ОС, которая управляет аппаратными средствами и выполнением программ. Файловая структура — это система хранения файлов на запоминающих устройствах. Интерпретатор команд или оболочка — это программа, организующая взаимодействие пользователя с компьютером. И, наконец, утилиты — это просто отдельные программы, которые, ничем не отличаются от других программ, запускаемых пользователем, за исключением их основного назначения — они выполняют служебные функции.

Слово "Linux" обозначает только ядро. Поэтому правильнее было бы говорить "операционная система, основанная на ядре Linux". Ядро ОС Linux разрабатывается под общим руководством Линуса Торвальдса и распространяется свободно (на основе лицензии GPL), как и огромное количество другого программного обеспечения, утилит и прикладных программ. Одним из следствий свободного распространения ПО для Linux явилось то, что большое число разных фирм и компаний, а также просто независимых групп разработчиков стали выпускать так называемые дистрибутивы Linux.

Дистрибутив — это набор программного обеспечения, включающий все 4 основные составные части ОС, т. е. ядро, файловую систему, оболочку и совокупность утилит, а также некоторую совокупность прикладных программ. В мире существует уже более сотни различных дистрибутивов Linux, и все время появляются новые. На сегодняшний день заслуживают внимания только три дистрибутива: Red Hat Linux Cyrillic Edition, Linux Mandrake Russian Edition (и его потомок ALTLinux) и ASPLinux. Для данных дистрибутивов характерно:

  • принадлежность к семейству дистрибутивов, строящихся на основе Red Hat Linux (Red Hat — это самый распространенный в мире дистрибутив).

  • Эти дистрибутивы изначально русифицированы.

  • В каждом из них имеется достаточно отлаженная процедура установки, автоматически распознающая большинство компонент аппаратного обеспечения, что очень облегчает процедуру инсталляции системы.

  • Легко устанавливается (добавляется) дополнительное программное обеспечение, так как оно поставляется в RPM-пакетах (технология распространения ПО, аналог программы setup под Windows).

  • Эти дистрибутивы поддерживаются сформировавшимися командами разработчиков и постоянно обновляются.

Нумерация версий.

Различают номера версий дистрибутивов и номера версий ядра. Обычно под версией Linux имеют в виду версию ядра (версии ядра развиваются последовательно, а не ветвятся и множатся, как дистрибутивы).

Версии ядра Linux принято обозначать тремя числами, разделенными точкой. Например, дистрибутив Black Cat версии 5.2 был построен на основе ядра версии 2.0.36, т. е. это был Linux версии 2.0.36. Версии ядра с нечетным значением второй цифры обычно не используются для создания дистрибутивов, потому что являются экспериментальными (отладочными). Версии с четной второй цифрой являются (считаются) устойчиво работающими.


Тема 1.2. Знакомство с графическим интерфейсом ASP Linux


1.2.1. Графический интерфейс ASP Linux

Работать с ОС Linux только через интерфейс командной строки довольно трудно. Все необходимые операции в данном случае выполняются путем запуска отдельных команд, перечень которых огромен, и которые надо помнить наизусть.

Широко известной альтернативой интерфейсу командной строки является графический интерфейс. Графический интерфейс обеспечивает дополнительные удобства для пользователя, в частности, возможность запуска программ в отдельных окнах, обозначения программ (или других объектов) в виде маленьких картинок (пиктограмм, значков, иконок), возможность оперировать с объектами с помощью мыши, а также гораздо большую плотность информации на том же пространстве экрана.

Для ОС Linux существуют средства, обеспечивающие дружественный к пользователю графический интерфейс, который на первый взгляд очень похож на широко известный графический интерфейс Microsoft Windows, но его внутреннее устройство принципиально отличается.


1.2.1.1. XFree86 и его составные части

Графический интерфейс в Linux строится на основе стандарта X Window System или просто "X", первоначальный вариант которого был разработан в 1987 году в Массачусетском технологическом институте. Начиная со второй версии этот стандарт поддерживался консорциумом X, созданным в январе 1988 г. с целью унификации графического интерфейса для ОС UNIX. С 1997 года консорциум X преобразован в X Open Group. В настоящее время действует версия 11 выпуск 6 стандарта на графическую подсистему для UNIX-систем, которая кратко обозначается как X11R6.

Свободно распространяемая реализация стандарта X11R6 для UNIX-систем с процессорами 80386/80486/Pentium (в том числе для ОС Linux) была создана группой программистов, которую вначале возглавлял Дэвид Вексельблат (David Wexelblat). Эта реализация известна как XFree86, и может использоваться не только в Linux, но и в System V/386, 386BSD, FreeBSD и других версиях UNIX для систем на базе процессоров Intel x86. В настоящее время выпущена уже 4-ая версия XFree86, однако, и 3-я версия еще широко используется и входит в состав основных дистрибутивов Linux.

Система X Window построена на основе модели "клиент/сервер". X сервер работает на компьютере пользователя (а не на каком-то удаленном "сервере") и обеспечивает вывод изображения на экран монитора. X-сервер работает непосредственно с "железом": видеосистемой, устройствами ввода и динамиком. Эта программа захватывает оборудование и предоставляет его возможности другим программам как ресурсы по особому протоколу, который называется X-протокол, или протокол сетевой связи (X Network Protocol). Специализированный компьютер, на котором исполняется исключительно X-сервер, называется (аппаратным) X-терминалом.

X-сервер не формирует изображение, он только "доставляет" графику видео-драйверу. Если запустить только X-сервер, вы увидите просто серый экран с крестиком курсора посредине. С помощью мыши крестик можно перемещать по экрану. На нажатие кнопок мыши и клавиш реакции не следует — сервер готов передавать эти сигналы своим клиентам, а клиенты пока не запущены. Хотя некоторые комбинации клавиш X перехватывает и обрабатывает, к ним относятся ++ — завершение работы сервера, ++<+> и ++<-> — "горячее" переключение доступных видеорежимов, и ++ — переключение в другую виртуальную консоль.

Таким образом одного X-сервера недостаточно для работы, необходим запуск менеджера окон и хотя бы одной программы-клиента, которая будет формировать изображение. В роли "клиентов" X-сервера выступают приложения, работающие с X Window, например графический редактор GIMP, текстовый редактор Corel WordPerfect, эмулятор терминала xterm и другие.

Между клиентами и сервером стоят еще два очень важных компонента графического интерфейса: библиотека графических функций X-lib и менеджер окон (рис. 1.2.1.1). X-Lib содержит графические функции, которые обеспечивают выполнение низкоуровневых операций с графическими образами. Менеджер окон вызывает функции из X-Lib для управления дисплеем и выполнения любых преобразований изображений в окнах.

При запуске X-приложение передает управление менеджеру окон, который обеспечивает выполнение всех операций с окнами: прорисовку рамок, меню, иконок, полос прокрутки и других элементов окна, а также предоставляет возможность изменять вид и положение окна в процессе работы в соответствии с потребностями пользователя. Менеджер окон также вызывает соответствующие функции для программ-клиентов в тех случаях, когда пользователь взаимодействует с приложением с помощью клавиатуры и мыши.

Расширенные графические среды типа Motif, CDE, KDE, GNOME, GNUStep и т. д. не замещают перечисленные выше компоненты системы X Window, а расширяют и дополняют их. KDE, например, добавляет библиотеку графических функций Qt в дополнение к X-Lib. Motif имеет собственный набор графических функций. GNOME использует библиотеку GTk+, которая составляет основу GIMP. Кроме того, в GNOME используется также CORBA (The Common Object Request Broker Architecture — универсальная архитектура посредничества при запросе объектов) и библиотека Imlib для дальнейшего расширения возможностей графической подсистемы.



Рис. 1.2.1.1. Архитектура графической системы в Linux


Поскольку клиент и сервер являются отдельными процессами, они могут работать на разных компьютерах, взаимодействовуя по сети. Приложения можно запустить, например, на мейнфрейме, а картинка будет выводиться на экран персонального компьютера. Эта очень мощная особенность системы X Window является одним из основных отличий ее от MS Windows.

В Linux (и вообще в UNIX) нет жесткого деления между графическими и текстовыми программами, как в MS Windows или OS/2. С точки зрения системы нет разницы между программой, работающей в графике, и обычной. Программы для графического режима запускают как обычные программы, т. е. из командной строки, из Midnight Comander'а и т.п. Единственным необходимым условием для их работы является то, что должен работать X-сервер. При необходимости программа сама обращается к X-серверу.

На рис. 1.2.1.1 схематично представлена архитектура графической системы в Linux. Еще одним важным ресурсом графической подсистемы являются шрифты. Оперировать со шрифтами может как непосредственно X-сервер, так и специальная программа, которая называется сервер шрифтов.

Для каждого из типовых компонентов графической системы существует множество конкретных реализаций. В состав пакета XFree86 версии 3 входят несколько различных серверов, причем выбор конкретного сервера зависит от того, какие у вас видеоплата и монитор. Например, сервер XF86_Mono — это сервер для монохромных видео-режимов; XF86_S3 — сервер для карт, основанных на S3; XF86_S3V — сервер для S3 ViRGE и ViRGE/VX; XF86_SVGA — сервер для карт, работающих в режимах Super-VGA.

В четвертой версии XFree86 уже один X-сервер для большинства видеоадаптеров, называется он XFree86 и располагается в каталоге /usr/X11R6/bin/. Обычно на него делается ссылка с именем X, так что запустить X-сервер можно просто введя в командной строке букву X.

Различных менеджеров окон тоже существует очень много, например:

  • fvwm — Free Virtual Window Manager.

  • fvwm2 — улучшенный вариант fvwm, позволяющий, в частности, использовать различные темы рабочего стола и динамические меню.

  • fvwm95 — менеджер окон с графическим интерфейсом в стиле Windows 95.

  • IceWM — это оконный менеджер, который может эмулировать различные стандарты оконных систем (в частности, OS/2 Workplace Shell), имеет, по некоторым отзывам, довольно маленький обьем и быстро работает.

  • Enlightenment — один из самых развитых менеджеров окон.

Разные менеджеры окон могут обеспечивать различный вид окон за счет использования различных рамок и оконных меню. Но все они используют одну и ту же базовую графическую утилиту X Window — X сервер.

Графический интерфейс в Linux строится по модульному принципу. Возможна самостоятельная сборка графического интерфейса из отдельных компонент. В настоящее время разработаны (и включены практически во все дистрибутивы) так называемые интегрированные графические среды. Наиболее известными представителями таких сред являются KDE и GNOME. При создании таких интегрированных графических сред различные и независимые разработчики используют единый подход, единую идеологию создания и оформления программных продуктов. В результате получается функционально полный пакет программ, в рамках которого решены практически все задачи управления компьютером и программной средой.

Основу интегрированной графической среды KDE (K Desktop Enviroment) образует расширенная библиотека графических функций Qt фирмы Troll Tech. С использованием этой библиотеки построены собственный оконный менеджер kwm, файл-менеджер kfm, центр управления KDE (аналог панели управления Windows) и множество других компонентов, вплоть до собственного офисного пакета KOffice.

В состав версии 2.1 KDE включен файловый менеджер Konqueror, который предоставляет уникальные возможности доступа к файлам. Кроме того, что он позволяет просматривать файлы большинства известных форматов на локальных дисках, он является и интернет-браузером, по своим возможностям вполне сравнимым с Internet Explorer или Netscape Navigator.

Другой графической средой того же класса, что и KDE, является пакет GNOME (GNU Network Object Model Environment), который разрабатывается в рамках проекта GNU, а значит, относится к классу свободно распространяемого ПО (KDE до недавнего времени не полностью соответствовал этому понятию, потому что библиотека Qt распространялась не на условиях GPL; хотя сейчас ситуация изменилась и KDE тоже является свободно распространяемым). GNOME строится на основе библиотеки графических функций GTK+.

Существуют и другие разработки интегрированных графических сред, которые, однако, пока не достигли той степени развития, как KDE или GNOME, например, Xfce, dfm и другие.

До недавнего времени установка и настройка графического интерфейса Linux представляла собой довольно непростую задачу. Однако программы инсталяции последних версий дистрибутивов Linux (например, русифицированой версии Red Hat Linux 7.1) уже вполне успешно с ней справляются, автоматически определяя тип монитора и видеоадаптера и выбирая подходящее разрешение экрана.


1.2.1.2. Графическая среда KDE

KDE — это интегрированная графическая оболочка для Linux (и других версий UNIX), которая в настоящее время включает в себя более 100 графических приложений и поддерживает более 40 различных языков. Она разрабатывается в рамках движения Open Source, т. е. распространяется с открытыми исходными кодами. KDE позволяет совместить современную функциональность, удобство использования и отличный дизайн с технологическими преимуществами операционной системы класса UNIX.

Внешний вид

Внешним видом экрана после запуска KDE представлен на рис. 1.2.1.2.1



Рис. 1.2.1.2.1. Внешний вид графической среды KDE


Экран можно условно поделить на две части.

Панель в нижней части экрана служит для запуска приложений и переключения между рабочими столами. На паанели расположен значок с изображением буквы "К". Этот значок (аналог кнопки Start в Windows) служит для вызова иерархического меню, через которое можно запустить любое приложение из числа входящих в состав KDE, даже если значок приложения отсутствует на панели.

Вся оставшаяся поверхность экрана, на которой располагается некоторое число значков ("иконок"), которые тоже могут использоваться для запуска соответствующих им приложений. — это рабочий стол (Desktop) 

KDE поддерживает несколько рабочих столов, переключаться между которыми можно с помощью пронумерованных клавиш, расположенных на панели (на рис. 1.2.1.2.1 изображены четыре такие клавиши, хотя это число можно изменить).

Правее переключателя рабочих столов располагается поле, которое называется панелью задач (taskbar). Оно служит для отображения перечня запущенных в данный момент приложений и переключения между ними. Каждому запущенному приложению соответствует кнопка, щелчок по которой переводит данное приложение в активное состояние.

Для тех, кто привык работать в Windows, может показаться непривычным то, что для запуска приложения достаточно щелкнуть по значку ("иконке") только один раз. Но к этому быстро привыкаешь, а и при желании можно настроить оболочку на два щелчка.

В правом конце панели задач находятся часы и небольшая вертикально вытянутая кнопка с треугольником-стрелкой. Такая же кнопка имеется и в левом конце панели. Щелчок по любой из этих кнопок приводит к тому, что панель сворачивается, как бы убегая за границу соответствующей стороны экрана. Видимой остается только такая же кнопка с треугольником. Щелчком по этой кнопке можно вернуть панель на экран.

Если вы подведете указатель мыши к любому значку или кнопке на панели задач и выждете некоторое время, появится подсказка, поясняющая назначение значка или название соответствующей задачи. А если щелкнуть правой кнопкой мыши по любому элементу на экране, в том числе и по пустому полю, появляется меню, в котором можно выбрать одно из действий, применимых к данному элементу. В частности, щелчок по пустому полю приводит к появлению меню настроек рабочего стола.

Панель можно настраивать по своему усмотрению. Но описанием способов настройки мы пока заниматься не будем. Давайте вначале посмотрим на главное меню KDE.

Главное меню KDE

Доступ к главному меню KDE получаем, щелкнув по значку с буквой "K" (рис. 1.2.1.2.2).

Некоторые элементы меню имеют треугольник после названия. Это говорит о том, что данный элемент вызывает вложенное меню следующего уровня.

В меню RDE имеются аналоги команд, имеющихся в главном меню Windows: Поиск файла, Помощь, Запустить программу…

Команды Каталог и Домашний каталог служат для быстрого перехода в нужный каталог и просмотра его содержимого с помощью файлового менеджера Konqueror.

В верхней части главного меню появляется отделенный горизонтальной чертой список часто запускаемых или недавно вызывавшихся команд.

Смысл подавляющего числа команд меню не требует особых пояснений — они вызывают соответствующее приложение. Рассмотрим такие приложения как Центр управления и Настройки панели.




Рис 1.2.1.2.2. Главное меню KDE


Центр управления KDE

Типичный вид окна при работе с Центром управления KDE изображен на рис. 1.2.1.2.3: слева расположено меню, а справа — поле вкладок, каждая из которых обычно служит для настройки какого-то конкретного элемента графической среды.




Рис. 1.2.1.2.3. Один из экранов Центра управления KDE (щелкните по рисунку для просмотра)


Настройка фона или темы рабочего стола выполняется с помощью команд Фон и Менеджер тем меню Внешний вид и интерфейс главного меню Центра управления. На приведенных выше рисунках вы можете видеть результат. Одновременно можно выбрать основные цвета (команда Цвета) и стиль оформления графических элементов (команда Стиль).



Рис. 1.2.1.2.4. Задание шрифтов для разных элементов экрана

. На рис. 1.2.1.2.4 вы видите правую панель Центра управления, соответствующую команде Шрифты, которая позволяет выбрать шрифты, которыми будут выводиться различные надписи

Для изменения какого-либо шрифта надо щелкнуть по экранной кнопке Выбрать. Появится окно, изображенное на рис. 1.2.1.2.5, в котором и осуществляется такой выбор. После того, как выбор шрифта произведен, нужно щелкнуть по кнопке Ok. Для того, чтобы изменения вступили в силу, надо нажать кнопку Применить на панели Центра управления (рис. 1.2.1.2.4). Это касается не только шрифтов, но и любых других изменений, производимых с помощью Центра управления.




Рис. 1.2.1.2.5. Окно выбора шрифтов


Вид и содержание главного меню KDE тоже можно настраивать (см. рис. 1.2.1.2.6.) Как видно из рис. 1.2.1.2.6. состав и содержание элементов меню здесь изменить невозможно. Для этого можно вызвать отдельную программу — Редактор меню KDE, что делается через команду Настройка панели | Редактор меню того же главного меню.




Рис. 1.2.1.2.6. Настройка главного меню


Окно программы Редактор меню KDE представлено на рис. 1.2.1.2.7. Здесь можно как создать новую команду меню, так и новое подменю, указать название приложения и имя запускаемого файла, а также назначить запуск программы от имени другого пользователя.



Рис. 1.2.1.2.7. Редактор меню KDE


На вкладке Расширенные можно назначить "горячую" клавишу, по которой можно будет вызывать приложение, не прибегая к помощи меню и мыши.

Настройка панели и значков на рабочем столе

Для настройки панели главного меню можно щелкнуть правой клавишей мыши по свободному полю на панели, и появится выпадающее меню, изображенное на рис. 1.2.1.2.8, в котором тоже имеется команда Настройки, и которая по содержанию идентична команде Настройка панели главного меню. Если вызвать эту команду, появится окно, изображенное на рис. 1.2.1.2.9.



Рис. 1.2.1.2.8. Выпадающее меню для Панели

С помощью вкладки «Общие» можно переместить панель к любой границе экрана, изменить ее размер, задать скорость движения при автоскрытии и определить терминальное приложение. На вкладке «Внешний вид и интерфейс»» задаются еще несколько аналогичных параметров.

Первая команда контекстного меню, изображенного на рис. 1.2.1.2.8, «Добавить». Всплывающее подменю позволяет добавить можно как отдельный элемент (т. е. кнопку или иконку) на панель задач, так и четыре вида дополнительных панелей (или четыре вида расширений основной панели). Одна из таких панелей - дополнительная панель задач (на рис. 1.2.1.2.10 она расположена над основной панелью).




Рис. 1.2.1.2.9. Окно настроек панели


Щелчок на сером прямоугольнике в левом конце этой дополнительной панели дает возможность удалить дополнительную панель или добавить на нее что-то (кнопку мыши надо удерживать). С помощью таких же серых прямоугольников можно получить доступ к меню других элементов главной панели.




Рис. 1.2.1.2.10. Дополнительная панель задач (щелкните по рисунку для просмотра)

Меню управления кнопками на панели появляются после щелчка правой кнопкой мыши по самой кнопке (рис. 1.2.1.2.11).




Рис. 1.2.1.2.11. Выпадающее меню для кнопки на Панели


Первый элемент в этом меню (Панель меню) вызывает меню настроек панели, следующие два служат для перемещения или удаления данной конкретной кнопки, а последний вызывает окно, изображенное на рис. 1.2.1.2.12. В этом окне можно изменить некоторые параметры той кнопки, щелчок по которой вызвал появление меню. Изменить можно рисунок на кнопке, вызываемую по ней программу, права, с которыми программа запускается, и список типов файлов, ассоциированных с данным приложением.




Рис. 1.2.1.2.12. Свойства ссылки


Значки ("иконки") на рабочем столе тоже могут использоваться для запуска приложений или быстрого доступа к некоторым файлам или каталогам. Создать их можно щелкнув по пустому пространству рабочего стола, и создав новую ссылку на приложение, файл или устройство, как это показано на рис. 1.2.1.2.13.




Рис. 1.2.1.2.13. Создание новой ссылки на рабочем столе.


Кроме этой программы KDE включает в себя еще массу разнообразных приложений, общим числом более сотни.

Практическая работа №1(1) Изучение графического интерфейса ASP Linux.

Цель работы:
  1. Познакомиться с пользовательским интерфейсом ASP Linux.

  2. Научиться работать со справочной системой ASP Linux

Порядок выполнения работы
  1. Зарегистрируйтесь в ОС Linux. Какой графический интерфейс используется в ОС Linux?

  2. Опишите составляющие части графического интерфейса и структуру главного меню KDE.

  3. Вызовите Центр управления KDE. Какие возможности предоставляет Центр управления?

  4. Измените фон рабочего стола, стиль оформления графических элементов, шрифты, для отображаемой информации.

  5. Измените структуру главного меню: удалите пункт «Последние документы», включите опцию отображения скрытых файлов. Какие ещё изменения можно внести?

  6. Назначьте для программы «Терминал» горячие клавиши.

  7. Запустите утилиту настройки Рабочего стола, для этого выберите пункт меню «Настроить Рабочий стол…». Какие возможности предоставляет утилита? Измените настройки Рабочего стола. Какие изменения Вы внесли?

  8. Откройте браузер Konqueor. Перейдите в корневой каталог диска. Какие файлы и папки расположены в корневом каталоге?

  9. Вставьте в дисковод дискету и выполните операцию монтирования дискеты. Для выполнения операции монтирования модно воспользоваться контекстным меню либо утилитой монтирования для пользователей «KDE>Система>Управление дисками».

  10. Просмотрите содержимое дискеты, для этого в браузере Konqueor перейдите в папку /mnt и выберите соответствующую подпапку fd01.

  11. Выполните операцию размонтирование дискеты.

  12. Отформатируйте вставленную дискету (дискета должна находиться в размонтированном состоянии), воспользовавшись утилитой Kfloppy. При форматировании задайте размер дискеты 1,2 Мб и файловую систему ext.

  13. Отформатируйте вставленную дискету на 1,2 Мб, в качестве файловой системы задайте систему DOS, укажите начальную метку диска.

  14. Просмотрите содержимое отформатированной дискеты.

  15. Выполните быстрое форматирование дискеты. Чем отличается быстрое форматирование от полного?

  16. Создайте на рабочем столе ссылку на Ваш личный каталог. Просмотрите свойства ссылки. Сравните свойства созданного ярлыка со свойствами элементов рабочего стола.

  17. Завершите сеанс работы с системой


Практическая работа №1(2) Работа с поисковой системой

Цель работы:
  1. Научиться осуществлять поиск файлов и папок в ОС Linux.

  2. Научиться задавать маску файла для поиска.

Порядок выполнения работы
  1. Зарегистрируйтесь в ОС Linux.

  2. Запустите утилиту «Поиск файлов» в меню KDE.

  3. Осуществите поиск в корневом каталоге всех файлов с расширениями txt.

  4. Найдите на диске все графические файлы. Где они размещены?

Для поиска надо задать маску файлов. В маске разрешено использование символов «*» (заменяет любую последовательность символов) и «?» (заменяет один символ). Кроме маски обязательным является указание каталога, в котором будет произведен поиск файлов. Для поиска не только в указанном каталоге, но и во всех его подкаталогах, следует поставить галочку «Включая подкаталоги». Что бы произвести поиск во всем файловом пространстве надо указать «file:/» в качестве значения «Искать в…» и поставить галочку поиска в подкаталогах. В этом случае поиск пройдет не только по жестким дискам, но и по всем сменным.

  1. Найдите файлы, которые были созданы на прошлой неделе.

  2. Найдите файлы созданные в промежутке между текущей и прошедшей неделей.

  3. Осуществите поиск файла на диске с учетом регистра букв.

  4. Найдите файлы, размер которых не превышает 10 Кб, а так же файлы, размер которых составляет 1 Мб. Откройте найденный файлы для просмотра.

  5. Завершите сеанс работы.

Контрольные вопросы:

  1. Дайте определение понятию операционная система. Какие операционные системы Вы знаете?

  2. Объясните понятия многозадачности и многопользовательскости.

  3. Какие характеристики операционной системы (ОС) Linux вы знаете?

  4. Что такое дистрибутив ОС? Какие дистрибутивы Linux Вы знаете?

  5. Что означает понятие графический интерфейс? Какой графический интерфейс используется в Linux.

  6. Какие графические среды Linux Вы знаете?

  7. Опишите внешний вид графической среды KDE. В чем отличие графической оболочки OC Windows от среды KDE?

  8. Опишите состав и структуру главного меню KDE. Какие утилиты, графические и текстовые программы входят в поставку КDE?

  9. Что означает понятие ярлык? Как создать ярлык на рабочем столе?

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

  11. Опишите способы создания папки?

  12. Какие стандартные редакторы, позволяют создать текстовый документ?

  13. Какова максимальная длина имени файла или папки в Linux?

  14. Расскажите о способах открытия документов?

  15. Как отобразить панель инструментов в окне программы Konqueor?

  16. Опишите пиктограммы на панели инструментов программы Konqueor?

  17. Какая информация отображается в строке состояния программы Konqueor?

  18. Как определить размер папки в килобайтах?

  19. С помощью какой клавиши можно перейти в «Родительскую папку»?

  20. Как можно вызвать окно свойств объекта?

  21. Способы упорядочения файлов в окне папки программы Konqueor?

  22. Способы расположения и изменения размера значков файлов в окне папки?

  23. Как установить автоматическое выравнивание значков файлов в программе Konqueor?

  24. Как можно отменить последнюю выполненную команду?

  25. Как переименовать файл или папку?

  26. Как установить атрибуты файла?

  27. Как скопировать файл из одной папки в другую?

  28. Как переместить файл из одной папки в другую?

  29. Как выделить в папке группу файлов, расположенных не подряд?

  30. Как выделить сразу все объекты в папке?

  31. Как снять выделение с одного или нескольких файлов, не отменяя выделение остальных?

  32. Для чего используется команда Обновить в программе Konqueor?

  33. Опишите способы удаления файлов и папок?

  34. Опишите параметры настройки корзины?

  35. Как найти файл на диске по его имени?

  36. Объясните, для чего при поиске файла используются символы звездочка «*» и знак вопроса «?»?

  37. Как найти файлы по дате создания?

  38. Как восстановить удаленный файл?

  39. В каком случае восстановление удаленных файлов невозможно?

  40. В чем отличие ярлыка от пиктограммы?

  41. Опишите способы создания ярлыка?

  42. Как изменить значок ярлыка?


Раздел 2. Работа с терминалом ASP Linux


Тема 2.1. Работа с файлами и папками ASP Linux


Работа с системой Linux в текстовом режиме, т.е. с консоли или терминала, позволяет быстрее и удобнее выполнить многие действия в системе, по сравнению с графическим режимом. Даже находясь в графическом режиме, часто быстрее открыть окно эмулятора терминала, и выполнять необходимые действия в нем. Поскольку Linux — это многозадачная ОС, уже в текстовом режиме обеспечивается возможность работы в нескольких окнах. А для редактирования простого текста или html-файла вовсе не обязательно запускать достаточно тяжеловесную и медленную графическую оболочку.

Взаимодействие с пользователем организует специальная программа. Существует два вида таких программ — оболочка, или shell, для работы в текстовом режиме (интерфейс командной строки) и графический интерфейс пользователя GUI (Graphical User Interface), организующий взаимодействие с пользователем в графическом режиме.

Выполнение команд в shell

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

Формат команд в ОС LINUX следующий:


имя команды  [аргументы] [параметры] [метасимволы].


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

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

На первом этапе осуществляется поиск кода команды. Команды бывают встроенные (те, код которых включен в код самой оболочки) и внешние (код которых расположен в отдельном файле на диске). Для поиска внешней команды пользователь, должен указать оболочке полный путь до соответствующего файла. Однако оболочка может находить внешние команды в каталогах, которые перечислены в специально заданных "путях поиска". Только если она не находит нужных файлов в таких каталогах, она решает, что пользователь ошибся при вводе имени команды.

Для организации задания команд в командной строке оболочка предоставляет пользователю два специальных оператора: ; и &.

1) Оператор ;

Хотя чаще всего пользователь задает команды в командной строке по одной, имеется возможность задать в одной строке несколько команд, которые будут выполнены последовательно, одна за другой. Для этого используется специальный символ -оператор ;. Если не поставить этот разделитель команд, то последующая команда может быть воспринята как аргумент предыдущей. Таким образом, если написать в командной строке что-то вроде:

[user]$ command1 ; command2

то оболочка вначале запустит на выполнение команду command1, дождется, пока ее выполнение завершится, после чего запустит command2, дождется ее завершения, после чего снова выведет приглашение командной строки, ожидая следующих действий пользователя.

2) Оператор &

Оператор & используется для того, чтобы организовать исполнение команд в фоновом режиме. Если поставить значок & после команды, то оболочка вернет управление пользователю сразу после запуска команды, не дожидаясь, пока выполнение команды завершится. Например, если задать в командной строке "command1 & command2 &", то оболочка запустит команду command1, сразу же затем команду command2, и затем немедленно вернет управление пользователю.


2.1.1. Команды работы с каталогами

Понятие файла

Файл - единица информации, поименованный набор логически связанных данных (таблицы, программа, текст и пр.) Обращение к файлу по его уникальному имени (собственное имя файла), структура имени:

имя-файла[.тип]

Возможные расширения (типы) для текстовых файлов: txt, doc; графических файлов: bmp, jpg и т.д. В UNIX расширения имен, определяющие тип файла, не обязательны. Все файлы имеют собственные описатели (дескрипторы) и хранятся во внешней памяти. Физические адреса файлов на внешней памяти концентрируются в специальных файлах - каталогах.

Структура системы каталогов Linux

Строится в иерархической системе внешней памяти на блочных устройствах.







vmunix









Рис. 2.1.1. Структура системных каталогов Linux


На рисунке 2.1.1. представлены следующие группы каталогов:

1 – коренной каталог системы (строится при инсталляции ОС)

2 – системные каталоги (инсталляция)

3 – каталоги группы пользователей (определяет администратор)

4 – головные (личные) каталоги пользователей (строятся при авторизации - HOME-каталоги)

5 – рабочие каталоги и файлы пользователей


Некоторые системные каталоги:

vmunix - ядро ОС;

bin - утилиты оболочки;

dev - файлы устройств;

tmp - адреса рабочих пространств памяти пользователей, выделяемых супервизором памяти ОС по запросам системных вызовов из программ пользователей;

etc - файлы администратора;

mnt - каталог монтирования новых файловых систем;

home - данные головных каталогов всех пользователей системы.

В UNIX как и в DOS используется простой способ описания пути к файлу в иерархической системе каталогов -

полное маршрутное имя файла (абсолютное маршрутное):


$ cat /home/user/lev/f1


относительные маршрутные имена файлов:

  • от головного каталога группы пользователей - user/lev/f1

  • от головного (личного) каталога пользователя - f1 или lev/f1

  • от текущего (рабочего в данный момент) каталога,

  • " . " - системное имя текущего каталога (скрытый файл)

  • " .. " - системное имя вышележащего каталога (скрытый файл).


Основные команды работы с каталогами


man название_команды  - вызов электронного справочника об указанной команде.

Например: man exit – выведет справку по команде exit.

Выход из справочника - нажатие клавиши Q.

Команда  man man  сообщает информацию о том, как пользоваться справочником.


Помимо справочника можно воспользоваться командой help. Для этого нужно набрать:

команда --help

Например: exit --help – выведет справку по команде exit.

cd имя_директории- смена текущего каталога. В качестве имени директории можно указывать элементы "." и "..".

mkdir имя_директории - создание каталога. Вновь созданный каталог не содержит элементов, за исключением "." (ссылка на текущий каталог) и ".." (ссылка на вышележащий каталог).

rmdir имя_директории - удаление каталога.

ls [-alrstu] [namedir] - вывод содержимого каталога; если в качестве namedir указано имя файла, то выдается вся информация об этом файле. Если аргумент не указан, выдается содержимое текущего каталога.

Значения некоторых аргументов:

- l - список включает всю информацию о файлах;

- F - добавление к имени каталога символа / и символа * к имени файла, для которых разрешено выполнение;

- a - в список включаются все файлы, в том числе и те, которые начинаются с точки;

- i - указать идентификационный номер каждого файла;

- R - рекурсивный вывод содержимого подкаталогов заданного каталога.


find список_каталогов условия_поиска -определение полных имен файлов в поддереве каталогов, удовлетворяющих заданным условиям поиска.

В команде может быть задано до 18 условий_поиска. Необходимые комбинации условий объединяются в булевское выражение с помощью элементарных логических операций ('элементарных логических функций). Таким образом формируется логическая функция, принимающая истинное значение если значения всех её составляющих истины.

На экран выводятся полные маршрутные имена файлов, свойства которых обеспечивают истинность этой функции.

Элементарные логические функции:

! <условие> отрицание условия;

<пробел> соответствует операции "И";

-o операция "ИЛИ";

\( выражение \) булевское выражение в скобках.


При описании команды используются обозначения:

n положительное десятичное число;

-n любое положительное десятичное число, строго меньшее n;

+n любое положительное десятичное число, строго большее n.


Условия задаются следующими опциями:

-name'имя_файла' истинно для файлов с указанным именем.

-perm <8-ричный_код> истинно для файлов с указанным кодом прав доступа.

-type {f|d|b|c|p} истинно для файлов указанного типа.

-links n истинно для файлов с числом ссылок n.

-user <имя_пользователя> истинно для файлов, принадлежащих данному пользователю.

-size n[c] истинно для файлов с длиной n (число блоков) или с – в символах (байтах).

-exec <команда> {} \; истинно, если команда возвращает нулевой код завершения (true), т.е. опция выполняет <команда> для каждого найденного файла.

Все аргументы команды find разделяются пробелами.


Примеры использования команды find:

1) команда выводит на экран список файлов с именами fil или файлов у которых имя владельца petr:

find / --name “fil.*” –o –user petr –exec cat {} \;

2) поиск файлов, не являющихся директориями в текущем каталоге и его подкаталогах:

find * !-type d

3) команда осуществит поиск в корневом каталоге всех директорий, на которые существуют более трех жестких ссылок:

find / -type d -links +3

grep [-ключи] 'шаблон' <список_файлов> - поиск в файлах из списка_файлов строк, содержащих указанный шаблон (подстрока символов).

Ключи определяют режимы поиска и вывода:

-c выводятся имена всех просмотренных файлов и количество найденных строк, содержащих шаблон;

-n перед каждой строкой выводится ее относительный номер в файле и сама строка;

-i игнорируются регистры;

-l выводятся только имена файлов, содержащие найденные строки и др.


Например:

grep -c 'aaa' *

””””””””

f.1: 10

f.2: 3

f.3: 1

””””””””

В рассмотренном примере выводятся все имена файлов текущего каталога, содержащих подстроку aaa и количество таких строк в каждом из них.


В нижеследующем примере выводятся только имена файлов, содержащих строки с шаблоном aaa.

$ grep -n bbb *

””””””””””””””””””””””””””””

f.1: 5: aaaaaabbbbaaacc

f.2: 2: bbbbbbbbbbbbbbbbbbbb

f.6: 1: bbb

””””””””””””””””””””””””””””

Практическая работа №2(1) Основные команды работы с каталогами

Цель работы:
  1. Изучить архитектуру и принципы функционирования многопользовательской многозадачной операционной системы Linux

  2. Изучить основные команды работы с каталогами ОС Linux

Порядок выполнения работы

Изучаются команды:

mkdir - создание каталога;

rmdir - удаление каталога;

cd - перемещение по дереву каталогов;

pwd - определение текущего каталога;

ls - просмотр содержимого каталога;

more - постраничный вывод информации;

man - вызов руководства по команде.


  1. Зарегистрируйтесь в ОС Linux. Запустите на выполнение программу Терминал.

  2. Изучить команды работы с каталогами, для этого выведите на экран Терминала справку по следующим командам: pwd, mkdir, rmdir, cd, ls. Назначение и формат команд приведите в отчете.

  3. Определите Ваш текущей каталог. Просмотрите его содержимое и приведите его в отчете.

  4. Перейдите в каталог Вашей группы и создайте в нем личный каталог.

  5. Определите уникальное имя (номер индексного указателя) Вашего личного каталога. Объясните структуру полного маршрутного имени каталога.

  6. Создайте два поддерева из одного и из двух каталогов в каталоге Вашей группы. Используя команду ls, проверьте факт построения дерева подкаталогов.

  7. Просмотрите содержимое пустых подкаталогов, т.е. новых подкаталогов, не содержащих файлов. Объясните их содержание.

  8. Сделайте текущим последний каталог меньшего поддерева. Определите его полное маршрутное имя.

  9. Уничтожьте все подкаталоги большего поддерева каталогов. Получите подтверждение выполнения команд.

  10. Выведите на экран содержимое корневого каталога. Приведите его в отчете. Какие каталоги расположены в корневой директории, каково их назначение?

  11. Завершите сеанс работы с системой.


Практическая работа №2(2) Поиск файлов в системе каталогов

Цель работы:
  1. Изучить архитектуру и принципы функционирования многопользовательской многозадачной операционной системы Linux

  2. Научиться осуществлять поиск файлов в системе каталогов

Порядок выполнения работы

Изучаются команды:

find - поиск файлов в системе каталогов

more - постраничный вывод информации;

man - вызов руководства по команде;

grep - поиск в файлах указанный шаблон;

еxit - выход из терминала;


  1. Зарегистрируйтесь в ОС Linux. Запустите на выполнение программу Терминал.

  2. Изучить команды работы с каталогами, для этого выведите на экран Терминала справку по следующим командам: find, grep. Назначение и формат команд приведите в отчете.

  3. Установите в качестве текущего HOME-каталог.

  4. Найдите обычные файлы с определением их полных маршрутных имен.

  5. Осуществите поиск файлов типа директория в Вашем личном каталоге.

  6. Найдите в текущем каталоге все файлы, на которые имеются жесткие ссылки.

  7. Найдите файлы блок-ориентированного типа из каталога /dev и его подкаталогов.

  8. Осуществите поиск обычных файлов на диске, размер которых не превышает 2 Кб.

  9. Задайте различные комбинации известных Вам условий поиска файлов и каталогов.

  10. Выведите на экран принадлежащую Вам регистрационную запись с использованием команды grep.

  11. Завершите сеанс работы с системой.


2.1.4. Команды работы с файлами: управление файлами, генерация имен файлов

Управление файлами

Ниже приведены форматы команд, использующихся для управления файлами:

>маршрутное-имя-файла - создание пустого файла.

cat имя-файла  - вывод содержимого файла на экран.

cat>имя-файла  - перенаправление информации, вводимой с клавиатуры с заменой содержимого файла.

cat [входной файл 1] [входной_файл2] […входной файл N] > [выходной_файл] - слияние файлов

grep [-ключи] 'шаблон' <список_файлов> -поиск в файлах из списка_файлов строк, содержащих указанный шаблон (подстрока символов).

Ключи определяюobt режимы поиска и вывода:

-c выводятся имена всех просмотренных файлов и количество

найденных строк, содержащих шаблон;

-n перед каждой строкой выводится ее относительный номер в

файле и сама строка;

-i игнорируются регистры;

-l выводятся только имена файлов, содержащие найденные строки и др.


touch [-k] имя-файла - замена времени модификации на текущее, если файл не существует, то создается новый пустой файл. Команда может использоваться для создания новых пустых файлов, если указать имя несуществующего файла.

wc [-lwc] список_файлов - подсчет количества строк (-l), слов (-w), или символов (-c) в указанных файлах.

cp [-k] вх_файл_1 [вх_файл_2 [... вх_файл_n]] вых_файл – копирование файлов.

В самом формате команды заложено два режима ее использования:

1-й: Если вых_файл - обычный файл, то вх_файл может быть только один; в этом случае содержимое вх_файла копируется в вых_файл. Если вых_файл существовал, то его содержимое полностью заменяется на новое, атрибуты защиты сохраняются. Если создается новый вых_файл, то ему присваиваются атрибуты копируемого.

2-й: Если вых_файл - каталог, то в него последовательно копируются все указанные вх_файлы со своими атрибутами и именами, но каталог при этом автоматически не создается.


Примеры использования команды cp:

Создается новый файл FIL.c в том же текущем головном каталоге. Для копирования в другой каталог необходимо указать маршрутное имя выходного файла:

cd

cp fil.c FIL.c


Входной файл fil.c сохраняется в исходном текущем каталоге:

mkdir petr

mkdir lev1

cp fil.c lev1/prog.c


Групповые операции над файлами при копировании:

cp f.? fildir

cp f.[1-3] fildir

cp f.[123] fildir


mv [-k] вх_ф йл_1 [вх_ф йл_2 [... вх_ф йл_n]] вых_файл - перемещение или переименование файлов

Отличия от предыдущей команды копирования заключаются в том, что перемещаемые файлы в исходном каталоге уничтожаются.


Генерация имен файлов и каталогов (Pathname Expansion)

Подстановки имен путей и файлов (Pathname expansion) используются для того, чтобы с помощью краткого образца или шаблона указать несколько имен файлов (или каталогов), соответствующих данному шаблону.

Специальные символы шаблонов имеют следующее значение.


Таблица 2.1.4. Символы шаблонов

Символ

Правила замены

*

Соответствует произвольной строке символов, включая пустую строку. Например, my*.txt будет заменено на myday.txt, myweek.txt и mymonth.txt (если такие файлы существуют), а *.jpg соответствует всем файлам с расширением jpg в указанном каталоге

?

Соответствует любому одиночному символу. Например, вместо шаблона file?.txt будут подставлены имена file1.txt и filex.txt, но не file10.txt

[...]

Соответствует любому символу из числа символов, указанных в скобках. Пары символов, разделенные знаком минуса, обозначают интервал; любой символ стоящий лексически между этими двумя символами, включая и символы, задающие интервал, соответствует шаблону. Если первым символом внутри скобок является ! или ^, то считается, что шаблону (в данной позиции) соответствуют все символы, не указанные в скобках


Шаблоны имен файлов очень часто применяются в командных строках, содержащих команду ls. Представьте себе, что вы хотите просмотреть информацию о содержимом каталога, в котором находится огромное количество разных файлов различных форматов, например, файлов с изображениями форматов gif, jpeg, avi и т. д.. Чтобы получить только список файлов формата jpeg, вы можете использовать команду

[user]$ ls *.jpg

Если в каталоге имеется множество файлов, имена которых представлены четырехзначными номерами, то следующей командой можно вывести только список файлов с номерами от 0200 до 0499:

[user]$ ls -l 0[2-4]??.*


Практическая работа №3(1). Команды управления фалами

Цель работы:
  1. Изучить основные команды работы с файлами ОС Linux

  2. Научиться создавать, объединять, удалять, переименовывать файлы.

Порядок выполнения работы

Изучаются команды:

cat - слияние и вывод файлов на стандартное устройство вывода(конкатенация файлов);

rm - удаление файла;

mv - переименование файла;

сp - копирование файлов;

wc - подсчет количества строк и слов в файле.


  1. Зарегистрируйтесь в ОС Linux. Запустите на выполнение программу Терминал.

  2. Изучите команды работы с файлами, для этого выведите на экран Терминала справку по следующим командам: cat, rm, mv, cp, wc. Назначение и формат команд приведите в отчете.

  3. Перейдите в Ваш личный каталог и выведете на экран его содержимое.

  4. Создайте 3-4 текстовых файла с частично совпадающими именами. Проанализируйте значения атрибутов Ваших файлов.

  5. Создайте еще один файл методом слияния из существующих. Как изменились атрибуты нового файла?

  6. Создайте два новых параллельных подкаталога.

  7. В один подкаталог скопируйте имеющиеся файлы HOME-каталога с изменением имен, а в другой – переместите. Проанализируйте как изменилось содержание всех трех каталогов и каковы атрибуты всех полученных файлов.

  8. Удалите созданные текстовые файлы и каталоги. Выйдите из программы Терминал.


Практическая работа №3(2) Использование шаблонов в именовании файлов

Цель работы:
  1. Изучить понятие шаблона, способы задания шаблонов файлов

  2. Научиться осуществлять просмотр директорий, копирование, удаление, и поиск файлов, используя шаблоны файлов.

Порядок выполнения работы
  1. Зарегистрируйтесь в ОС Linux. Запустите на выполнение программу Терминал.

  2. Осуществите поиск всех файлов в домашнем каталоге, которые имеют расширение txt.

  3. Осуществите поиск директорий, в составе имени которых, имеется любой однозначное число.

  4. Осуществите в корневом каталоге поиск всех файлов, содержащих в составе имени слово linux.

  5. Создайте в Вашем личном каталоге структуру каталогов, содержащих совпадающие имена.

  6. Просмотрите содержимое файлов домашнего каталога с частично совпадающими именами с использованием механизма генерации имен файлов.

  7. Просмотрите содержимое файлов каталога /dev с частично совпадающими именами с использованием механизма генерации имен файлов.

  8. С использованием механизма генерации имен файлов слейте содержимое всех файлов в один и поместите его в HOME-каталог. Проанализируйте содержание файла.

  9. С использованием механизма генерации имен файлов слейте содержимое всех файлов в один и поместите его в HOME-каталог. Проанализируйте содержание файла.

  10. С использованием механизма генерации имен скопируйте из Вашего личного каталога все файлы с частично совпадающими именами в домашний каталог.

  11. С использованием механизма генерации имен удалите в Вашем личном каталоге все файлы с частично совпадающими именами.

  12. С использованием механизма генерации имен удалите в Вашем личном каталоге все каталоги с частично совпадающими именами.

  13. Удалите из домашнего каталога скопированные ранее файлы и завершите работу с программой Терминал.


2.1.7. Команды работы с файлами: ссылки, сортировка файлов

ln [-ключ] вх_файл_1 [вх_файл_2 [... вх_файл_n]] вых_файл - организация новых ссылок на файл.


В формате команды заложено 2 режима ее использования:

1-й: Если вых_файл - обычный файл, то допускается только один вх_файл_1; в этом случае на н равным именам: вх_файл_1 и вых_файл.

Количество ссылок на файл в его описателе увеличивается на 1.

2-й: Если вых_файл - каталог, то в нем создаются элементы, включающие имена перечисленных в команде входных файлов и ссылки на них, после чего в каталоге вых_файл можно работать с этими файлами, как с файлами этого каталога.

Возможно создание символьных и жестких ссылок.

При создании жесткой ссылки ключ в команде не указывается. Символьная ссылка создается командой ln с ключом s. Символьная ссылка ссылается на полное имя файла, жесткая – на его инод (числовой номер, присеваемый файлу при его создании).

Обобщение свойств команды ln при создании жесткой ссылки:

  • каждая ссылка на входной файл добавляет +1 к числу ссылок входного файла, после чего к упомянутому файлу можно обращаться по двум именам;

  • все связанные файлы имеют совпадающие описатели в каталогах;

  • если изменяется содержимое одного из связанных файлов, то меняется содержимое всех связанных файлов, т.к. связанные файлы разделяют одни и те же данные на диске;


Случайные файлы

Файл
176529.rtf
88270.doc
41893.rtf
101365.rtf
46529.rtf