Главная страница
Навигация по странице:

  • Таблица 2. Поля файла /etc/group и их назначение Поле

  • Лабораторная работа №2 Управление каталогами.

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

  • 2.1 Методика выполнения.

  • 2.2 Контрольные вопросы.

  • Лабораторная работа №3 Управление файлами. Эта работа посвящена изучению приемов формирования и преобразования файлов в ОС UBUNTU. Изучаются команды

  • 3.1 Методика выполнения.

  • 3.2 Контрольные вопросы.

  • ИВАНЬКО Методичка Операционные системы 2012. Методические указания для практических занятий и выполнения лабораторных работ для студентов, обучающихся по специальности 230400 Информационные системы и технологии


    Скачать 6.11 Mb.
    НазваниеМетодические указания для практических занятий и выполнения лабораторных работ для студентов, обучающихся по специальности 230400 Информационные системы и технологии
    АнкорИВАНЬКО Методичка Операционные системы 2012.doc
    Дата25.05.2018
    Размер6.11 Mb.
    Формат файлаdoc
    Имя файлаИВАНЬКО Методичка Операционные системы 2012.doc
    ТипМетодические указания
    #19629
    страница3 из 8
    1   2   3   4   5   6   7   8

    Файл /etc/group


    Этот файл соотносит числовые идентификаторы групп с символьными именами. Каждая строка файла /etc/group содержит четыре поля. Поля разделяются двоеточиями. Назначение полей этой записи представлено в табл. 2.

    Таблица 2. Поля файла /etc/group и их назначение

    Поле

    Назначение

    Имя группы

    Содержит (уникальное) символьное имя группы.

    Пароль группы

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

    Идентификатор группы

    Содержит числовой идентификатор группы.

    Список пользователей

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

    Пример записи из файла /etc/group:

    bin::2:root,bin,daemon

    Лабораторная работа №2

    Управление каталогами.
    Эта работа посвящена изучению структуры файловой системы и возможностей командного языка UBUNTU по управлению каталогами.

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

    mkdir, rmdir - для создания и уничтожения каталогов;

    ls - вывод листинга каталога. «что здесь есть?»;

    pwd - вывод на экран полного имени текущего каталога, «где я нахожусь?»;

    cd - смена текущего каталога, «перейти в»;

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

    >маршрутное – имя - файла - создание пустого файла.
    Эта работа посвящена изучению структуры файловой системы и возможностей командного языка Ubuntu по управлению каталогами. Для начала рассмотрим основные команды, используемые в ОС UBUNTU при работе с каталогами..

    Разделителем элементов пути в системах UBUNTU служит символ V. В отличие от таких систем, как, например, МSDOS и Windows, в которых каждому тому соответствует отдельный корневой каталог, обозначаемый именем тома, в системе UBUNTU есть только один корневой каталог. Он обо­значается ‘/’ - Все дополнительные тома, подключаются к основному дереву каталогов так, что корневой каталог каждого из этих томов стано­вится просто одним из каталогов в файловой системе. Каталог для под­ключения может быть выбран произвольно. Операция подключения тома к файловой системе носит название монтирования, и может производить­ся в любой момент во время работы системы.

    В системе обычно присутствуют следующие каталоги:

    / — корневой каталог;

    /bin— каталог с пользовательскими программами;

    /sbin — каталог программ для администрирования системы;

    /etc— каталог с конфигурационными файлами программ;

    /home — каталог, в котором создаются домашние каталоги поль­зователей;

    /lib— каталог с динамическими и статическими библиотеками;

    /boot— каталог, содержащий файлы системного загрузчика;

    /mnt — каталог, в который, как правило, производится монтиро­вание;

    /dev — каталог, содержащий специальные файлы устройств;

    /орt — каталог, в который устанавливается ПО сторонних про­изводителей;

    /usr — каталог, в котором хранятся в режиме доступа только для чтения разделяемые данные, такие как исполняемые файлы программ, документация, библиотеки и другие системные ресурсы;

    /rооt— каталог, являющийся домашним для пользователя гоо1;

    /var — каталог, содержащий журналы, файлы баз данных, кеши разного рода; .

    /tmp — каталог для хранения временных файлов.

    Для печати текущего каталога:

    pwd

    Для смены каталога:

    cd <путь к каталогу>

    Пример: переход к каталогу var.



    Попробуйте объяснить смысл каждой строки из данного примера. Какие операции запрашивает пользователь, и какие ответы даёт система?
    Если команда запущена без указания каталога, то переход про­изводится в домашний каталог пользователя. Вообще, для указания домашнего каталога пользователя можно использовать специальный символ ‘ ’. Так, для перехода в папку tmp, находящуюся в домашнем каталоге можно воспользоваться следующей командой:



    Домашний каталог пользователя обычно располагается в каталоге /home и называется по имени пользователя. Например, для пользова­теля user1 домашний каталог будет таким: /home/user1.

    Для создания каталога:

    mkdir <список имен каталогов>



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

    Для удаления каталога:



    Пример: создание каталогов и работа с ними.



    Попробуйте объяснить смысл каждый строки из данного примера. Какие операции запрашивает пользователь, и какие ответы даёт система?
    Команда удаляет только пустые каталоги. Ключ -р подобен тако­му же ключу команды mkdir, и позволяет удалить сразу несколько ка­талогов, вложенных друг в друга, если все они пусты.

    / Корневой каталог. Это родительский каталог для всех каталогов и файлов в файловой системе UBUNTU.

    /bin Каталог исполняемых модулей командной строки. Данный каталог содержит все исполняемые модули «родных» команд UBUNTU.

    /dev Каталог устройств, содержащий специальные файлы для байт-ориентированных и блок-ориентированных устройств, таких как принтеры и клавиатуры. В данном каталоге существует файл под называнием null, который называется bit bucket и который может использоваться для перенаправления вывода в никуда.

    /etc Файлы системной конфигурации и каталог исполняемых файлов. Большая часть административных файлов, а также файлов, связанных с командами, хранится здесь.

    /lib В каталоге хранятся библиотеки компилятора С.

    /lost+found Данный каталог содержит обрабатываемые файлы, если система отключилась ненормально. Система использует данный каталог для восстановления файлов. В каждом разделе диска есть только один каталог lost+found.

    /usr Данный каталог имеет несколько подкаталогов, таких как adm, bin, etc и include. Например. /usr/include содержит файлы заголовков для компилятора С.

    /home содержит домашние каталоги пользователей.

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

    Команду ls (с ее многочисленными опциями) можно использовать для получения информации об одном или нескольких файлах или каталогах системы. Используйте ls для генерации списка файлов и каталогов в различном порядке, например по имени или по времени. Возможно распечатывать лишь отдельные детали о файлах и каталогах, например только имя файла.
    2.1 Методика выполнения.

    1. Определите уникальное имя вашего головного личного каталога. Объясните структуру полного маршрутного имени каталога.

    2. Создайте два поддерева из одного и из двух каталогов.

    3. С использованием команды ls проверьте факт построения дерева подкаталогов.

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

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

    6. Определите полное маршрутное имя.

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

    8. Определите его полное маршрутное имя.

    9. Поместите в созданные подкаталоги по 2-3 пустых файла не выходя из текущего. Используйте при этом разные способы задания маршрутного имени подкаталогов.

    10. Просмотрите содержимое каталогов. Объясните содержания каждого поля каталога.

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

    12. Найдите обычные файлы с определением их полных маршрутных имен. Выполните то же для различных комбинаций известных вам условий поиска файлов.

    13. Проделайте предыдущие задания для файлов типа каталог.

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

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

    16. Проанализируйте с использованием команды history содержание лабораторной работы, продумайте ответы на нижеприведенные контрольные вопросы и сдайте выполненную работу преподавателю. После получения зачета по работе – уничтожьте все созданные файлы и корректно выйдите из системы.
    2.2 Контрольные вопросы.

    1. Какие системные имена каталогов вам известны?

    2. Каким образом можно построить отдельный каталог или цепочку каталогов?

    3. Для чего и каким образом переопределяются текущие каталоги?

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

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

    6. Какова последовательность действий при удалении одного каталога? Цепочки каталогов?

    7. Объясните назначение и содержание каждого поля каталога.

    8. Как отличить по содержимому каталога типы файлов, содержащихся в ваших каталогов.

    9. Какую информацию содержит «пустой» вновь созданный каталог?

    10. Как осуществить поиск файлов в системе каталогов по фрагментам текста файлов?
    Лабораторная работа №3

    Управление файлами.
    Эта работа посвящена изучению приемов формирования и преобразования файлов в ОС UBUNTU.

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

    cat, cp - копирование файлов;

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

    ln - организация ссылок на файл;

    sort - сортировка файлов;

    wc - определение числовых параметров файла;

    touch - обновление временных характеристик файла.
    Для подсчета строк, слов, или символов в файле:

    wc <ключ> <путь к файлу>

    С командой используются следующие ключи:

    -l — для подсчета числа строк;

    -w — для подсчета числа слов;

    -c — для подсчета числа символов.

    Для вывода содержимого файла на экран:

    cat <список путей к файлам>

    Если cat указано в списке более одного пути, то содержимое ука­занных файлов будет выведено последовательно. Таким образом, ко­манду cat можно использовать для соединения нескольких файлов в один.

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

    > <путь к файлу результату>

    Например, для вывода сообщения «Не11о, world!» в файл bloknot.txt, можно воспользоваться следующей командой:



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

    Например:



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

    < <путь к файлу-источнику>

    В качестве примера, рассмотрим запуск команды cat без указа­ния файла. В этом случае, программа будет ожидать от пользователя ввода данных, и выводит их.



    ^Z

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



    В случае, когда необходимо передать результаты, выводимые одной командой на вход другой команде можно воспользоваться кон­вейером. Конвейер строится при помощи символа ‘|’, которым раз­деляются команды. Например, следующую последовательность ко­манд:



    Можно заменить таким конвейером:



    (функция wc –w считает количество введённых слов, разделённых пробелами)
    Для постраничного просмотра файлов используется функция more:



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

    Часто команда тоге используется для постраничного просмотра результата работы другой команды, для чего она объединяется с этой программой в конвейер. Например:



    Для соединения файла, после разделения командой cut



    Для сортировки содержимого файла:



    Результат сортировки не записывается в исходные файлы, а выво­дится на экран. Команда имеет следующие ключи:

    -r — производить сортировку по убыванию, вместо сортировки по возрастанию;

    -n — рассматривать содержимое файлов как числа, и производить для сортировки числовое сравнение, а не лексикографическое. Для создания нового пустого файла:

    touch <список путей к файлам>

    Если файл уже существует, то у него будет изменено время по­следнего обращения.

    Для копирования файла:

    cp <путь к исходному файлу> <путь к файлу назначения>

    cp <список путей к исходным файлам> <путь к ка­талогу назначения>

    ср -r <список путей к исходным файлам и/или каталогам> <путь к каталогу назначения>

    Пример работы с файлами



    Попробуйте объяснить смысл каждый строки из данного примера. Какие операции запрашивает пользователь, и какие ответы даёт система?
    Заметим, что для указания всех файлов в текущем каталоге в ка­честве списка путей в исходном файле, можно использовать специ­альный символ *, известный как wildcard. При этом команде ср символ * передан не будет. При обработке строки с командой и ее параметрами программа оболочка заменит его списком имен всех файлов, найденных в текущем каталоге. Вообще, кроме символа *, при задании шаблона для генерации списка файлов, могут использо­ваться также символы ?, [ и ]. При этом они имеют следующее значение:

    * — любая последовательность символов. Например, шаблон /home/*а* будет заменен списком всех файлов и каталогов в ката­логе /home, содержащих символ а;

    ? — любой одиночный символ. Например, шаблон /usr/??? будет заменен списком имен всех файлов и каталогов в каталоге /usr, имеющих длину 3;

    [ ] — любой из символов, заданных в скобках. Например, шаб­лон /lib/*[.0-9]* будет заменен списком имен всех файлов и ка­талогов в каталоге /lib, имеющих в имени символ точки, или цифру;

    [^] — любой из символов, кроме символов, заданных в скобках. Например, шаблон /lib/ [^aeiou] * будет заменен списком имен всех файлов и каталогов в каталоге /bin, не начинающихся на гласную букву.

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

    Следующий пример выведет список всех файлов и каталогов в корневом каталоге:

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

    echo *

    *

    Для перемещения файла:

    mv<путь к файлу> <новый путь для файла>

    пример:



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

    Для удаления файла:

    rm <список путей к файлам>

    rm -r <список путей к файлам и/или каталогам>



    Для поиска файлов, удовлетворяющих критерию:

    find <список путей для начала поиска> [опции] <список критериев поиска>



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

    -name <шаблон> — файл будет включен в результат только, ес­ли его имя (без учета пути к файлу) соответствует шаблону програм­мы-оболочки, переданному а качестве параметра критерию;

    -type <тип> — файл будет включен в результат только, если его тип соответствует указанному в критерии; среди всех возможных типов выделим следующие: d — для каталога, f— для файла.

    В случае если требуется ограничить глубину поиска, следует воспользоваться опцией -maxdepth, которой в качестве парамет­ра передается максимальная глубина спуска в подкаталоги. Напри­мер, чтобы производить поиск только среди файлов текущего ката­лога, имена которых начинаются не на точку, можно использовать такую команду:

    find . –maxdepth l –name “[^.]*”

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

    Для получения информации о размере файлов или каталогов:

    du <список путей к файлам или каталогам>

    Для каждого файла из списка параметров программа печатает его размер, а для содержащихся в списке параметров каталогов, и всех ка­талогов, содержащихся в них — суммарный объем хранящихся в них файлов.

    3.1 Методика выполнения.

    1. Выведите на экран содержимое вашего HOME-каталога.

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

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

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

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

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

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

    8. Создайте ссылку с другим именем в одном из подкаталогов на один из файлов другого подкаталога. Проанализируйте и сравните все атрибуты связанных файлов. Объясните отличия.

    9. Создайте еще одну ссылку с другим именем. Проанализируйте и сравните все атрибуты связанных файлов. Объясните отличия.

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

    11. Изменение содержимое одного из связанных файлов. Проанализируйте содержимое других связанных с ним файлов (или файла). Объясните результат.

    12. Уничтожьте один из связанных файлов. Проанализируйте и сравните все атрибуты связанных с ним файлов. Объясните изменения.

    13. Упорядочите по алфавиту строки суммарного файла HOME-каталога.

    14. Обновите временные характеристики одного из существующих файлов. Проанализируйте результат работы команды.

    15. Обновите временные характеристики несуществующего файла. Проанализируйте результат работы команды.

    16. Проанализируйте с использованием команды history содержание лабораторной работы, продумайте ответы на нижеприведенные контрольные вопросы и сдайте выполненную работу преподавателю. После получения зачета по работе – уничтожьте все созданные файлы и корректно выйдите из системы.
    3.2 Контрольные вопросы.

    1. Назовите известные вам способы создания пустых файлов.

    2. Как создать текстовый файл?

    3. Какие возможности сокращения записи имен файлов вы знаете с использованием механизма генерации имен файлов?

    4. Какие три команды этой лабораторной работы можно использовать для переименования файлов? Как в этом случае надо использовать команды?

    5. Какими способами можно объединить несколько текстовых файлов в один?

    6. В чем разница работы команд ср и mv?

    7. Сколько ссылок можно создать на единственный файл из разных каталогов?

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

    9. Какое соответствие атрибутов имеют связанные между собой файлы?

    10. На какой атрибут и как влияет удаление одного из связанных файлов?

    11. Как отражается на содержимом связанных файлов изменение содержания одного из них и почему?

    12. Какими возможностями обладает команда sort?

    1   2   3   4   5   6   7   8


    написать администратору сайта