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

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

  • 1.11.3 Ярлыки объектов файловой системы

  • 1.11.4 Иерархия прав доступа

  • 1.12.1 Использование групп

  • 1.13 Суперпользователь Суперпользователь

  • /etc/group

  • ЛБ6 Файловые системы ОС Linux (2). Лабораторная работа 6 файловые системы ос linux


    Скачать 409.99 Kb.
    НазваниеЛабораторная работа 6 файловые системы ос linux
    Дата13.11.2022
    Размер409.99 Kb.
    Формат файлаpdf
    Имя файлаЛБ6 Файловые системы ОС Linux (2).pdf
    ТипЛабораторная работа
    #786676
    страница3 из 3
    1   2   3
    500):
    Пример 3. Как узнать идентификаторы пользователя и членство в группах
    [student@localhost student]$ id uid=500 (student) gid=500(student) группы=500 (student)
    Утилита id выводит входное имя пользователя и соответствующий ему UID, а также группу по умолчанию и полный список групп, членом которых он является.
    1.11.2 Идентификатор группы
    Пользователь может быть членом нескольких групп, равно как и несколько пользователей могут быть членами одной и той же группы.
    Исторически сложилось так, что одна из группгруппа по умолчанию
    является для пользователя основной - когда говорят о "GID пользователя", имеют в виду именно идентификатор группы по умолчанию. GID пользователя вписан в учетную запись и хранится в
    /etc/passwd
    , а информация о соответствии имен групп их идентификаторам, равно как и о том, в какие еще группы входит пользователь – в файле
    /etc/group
    . Из этого следует, что пользователь не может не быть членом как минимум

    1 6
    одной группы.
    1.11.3 Ярлыки объектов файловой системы
    При создании объектов файловой системы – файлов, каталогов и т. п.
    – каждому приписывается ярлык. Ярлык включает в себя UID –
    идентификатор пользователя-хозяина файла, GID – идентификатор
    группы, которой принадлежит файл, тип объекта и набор так называемых
    атрибутов (код доступа), а также некоторую дополнительную информацию. Атрибуты (или код доступа) определяют, кто и что имеет право делать с файлом, они описаны ниже:
    Пример 4. Атрибуты каталогов, показанные командой ls -l итого 88 drwxr-xr-x
    2 root root
    4096 Апр
    4 2015 bin drwxr-xr-x
    4 root root
    4096 Апр
    4 2016 boot drwxr-xr-x
    10 root root
    3520 Апр
    5 14:26 dev drwxr-xr-х
    90 root root
    8192 Апр
    5 14:22 etc drwxr-xr-x
    3 root root
    4096 Апр
    4 21:22 home drwxr-xr-x
    11 root root
    4096 Апр
    4 2016 lib drwx------
    2 root root
    16384 Апр
    4 2016 lost+found drwxr-xr-x
    4 root root
    4096 Апр
    5 14:22 media drwxr-xr-x
    2 root root
    4096 Июл
    11 2015 misc drwxr-xr-x
    2 root root
    4096 Окт
    20 2016 mnt drwxr-xr-x
    2 root root 0 Апр
    5 14:21 net drwxr-xr-x
    2 root root
    4096 Окт
    20 2016 opt dr-xr-xr-x
    106 root root 0 Апр
    5 2015 proc drwxr-x---
    31 root root
    4096 Апр
    5 14:29 root drwxr-xr-x
    2 root root
    8192 Апр
    4 2016 sbin drwxr-xr-x
    2 root root
    4096 Окт
    20 2016 selinux drwxr-xr-x
    2 root root
    4096 Окт
    20 2015 srv drwxr-xr-x
    11 root root 0 Апр
    5 2016 sys drwxrwxrwt
    16 root root
    4096 Апр
    5 14:26 tmp drwxr-xr-x
    15 root root
    4096 Апр
    4 2015 usr drwxr-xr-x
    21 root root
    4096 Апр
    4 2015 var
    Ключ "
    -l
    " утилиты ls определяет длинный (long) формат выдачи
    (справа налево): имя файла, время последнего изменения файла, размер в байтах, группа, хозяин, количество жестких ссылок и строчка атрибутов.
    Первый символ в строчке атрибутов определяет тип файла. Тип "
    -
    " отвечает "обычному" файлу, а тип "
    d
    " – каталогу (directory).
    Несмотря на то, что создание жестких ссылок на каталог невозможно, значение поля "количество жестких ссылок" (второй столбец) для всех каталогов примера равно двум, а не одному. На самом деле этого и следовало ожидать, потому что любой каталог файловой

    1 7 системы Linux всегда имеет не менее двух имен: собственное (например, tmp
    ) и имя "
    " в самом этом каталоге (
    tmp/.
    ). Если же в каталоге создать подкаталог, количество жестких ссылок на этот каталог увеличится на 1 за счет имени "
    " в подкаталоге (например, tmp/subdir1/..
    ):
    1.11.4 Иерархия прав доступа
    Рассмотрим более подробно, чему соответствуют девять символов в строке атрибутов, выдаваемой ls
    . Эти девять символов имеют вид "
    rwxrwxrwx
    ", где некоторые "
    r
    ", "
    w
    " и "
    x
    " могут заменяться на "
    -
    ".
    Очевидно, буквы отражают принятые в Linux три вида доступа – чтение, запись и использование – однако в ярлыке они присутствуют в трех экземплярах!
    Дело в том, что любой пользователь (процесс) Linux по отношению к любому файлу может выступать в трех ролях: как хозяин (user), как член
    группы, которой принадлежит файл (group), и как посторонний (other), никаких отношений собственности на этот файл не имеющий. Строка
    атрибутов – это три тройки "
    rwx
    ", описывающие права доступа к файлу
    хозяина этого файла (первая тройка, "
    u
    "), группы, которой принадлежит файл (вторая тройка, "
    g
    ") и посторонних (третья тройка, "
    o
    "). Если в какой-либо тройке не хватает буквы, а вместо нее стоит "
    -
    ", значит, пользователю в соответствующей роли будет в соответствующем виде доступа отказано.
    При выяснении отношений между файлом и пользователем, запустившим процесс, роль определяется так:
    Если UID файла совпадает с UID процесса, пользователь – хозяин файла
    Если GID файла совпадает с GID любой группы, в которую входит пользователь, он – член группы, которой принадлежит файл.
    Если ни UID, ни GID файла не пересекаются с UID процесса и списком
    групп, в которые входит запустивший его пользователь, этот пользователь
    посторонний.
    Именно в роли хозяина пользователь (процесс) может изменять ярлык
    файла. Единственное, чего не может делать хозяин со своим файлом –
    менять ему хозяина.
    1.12 Использование прав доступа в Linux
    1.12.1 Использование групп
    В Linux определено несколько системных групп, задача которых –
    обеспечивать доступ членов этих групп к разнообразным ресурсам системы. Часто такие группы носят говорящие названия: "
    disk
    ", "
    audio
    ",
    "
    cdwriter
    " и т. п. Если обычным пользователям доступ к некоторому файлу, каталогу или специальному файлу Linux закрыт, он открыт членам группы, которой этот объект принадлежит.

    1 8
    Например, в Linux почти всегда используется виртуальная файловая
    система
    /proc
    – каталог, в котором в виде подкаталогов и файлов представлена информация из таблицы процессов. Имя подкаталога
    /proc совпадает с PID соответствующего процесса, а содержимое этого подкаталога отражает свойства процесса. Хозяином такого подкаталога будет хозяин процесса (с правами на чтение и использование), поэтому
    любой пользователь сможет посмотреть информацию о своих процессах.
    Именно каталогом
    /proc пользуется утилита ps. Использование утилиты ps для просмотра выполняющихся процессов Linux рассматривается в работе
    “Процессы ОС Linux“.
    1.13 Суперпользователь
    Суперпользователь - единственный пользователь в Linux, на которого не распространяются ограничения прав доступа. Имеет нулевой
    идентификатор пользователя.
    Суперпользователь в Linux – это выделенный пользователь системы, на которого не распространяются ограничения прав доступа.
    UID суперпользовательских процессов равен
    0
    : так система отличает их от
    процессов других пользователей. Именно суперпользовательимеет возможность произвольно изменять владельца и группу файла. Ему открыт доступ на чтение и запись к любому файлу системы и доступ на чтение, запись и использование к
    любому
    каталогу.
    Наконец, суперпользовательский процесс может на время сменить свой
    собственный UID с нулевого на любой другой. Именно так и поступает программа login
    , когда, проведя процедуру идентификациипользователя, запускает стартовый командный интерпретатор.
    Среди учетных записей Linux всегда есть запись по имени root
    ("корень"), соответствующая нулевому идентификатору, поэтому вместо "суперпользователь" часто говорят "
    root
    ". Множество системных файлов принадлежат root
    , множество файлов только ему доступны на чтение или запись. Пароль этой учетной записи – одна из самых больших драгоценностей системы.
    Именно с ее помощью системные администраторы выполняют самую ответственную работу.
    Существует два различных способа получить права суперпользователя. Первый – это зарегистрироваться в системе под этим именем, ввести пароль и получить стартовую оболочку, имеющую нулевой UID. Это – самый неправильный способ, пользоваться которым стоит, только если нельзя применить другие. В ОС Ubuntu описанный способ не используется, вместо него используется второй способ.
    Второй способ —воспользоваться специальной утилитой su do, которая позволяет выполнить одну или несколько команд от лица другого пользователя. По умолчанию эта утилита выполняет команду от лица

    1 9 пользователя root
    , то есть запускает командный интерпретатор с нулевым
    UID. Отличие от предыдущего способа в том, что всегда известно, кто именно запускал sudo
    , а значит, ясно, с кого спрашивать за последствия.
    1.14 Поиск файлов
    Для поиска файла по имени или его части используется утилита locate. Параметр задает имя файла. Для поиска без учета регистра служит ключ –i.
    Для ограничения объема выводимой информации используется ключ
    –n число. Построчный вывод получается, если результаты поиска направить по конвейеру в программу less, например locate mp3 | less
    Утилита locate ведет поиск в базе данных, которая должна периодически обновляться утилитой updatedb, выполняемой с правами администратора.
    Другой способ найти файл предоставляет утилита find. Ее ключи приведены в (табл. 1).
    Таблица 1.
    Ключи утилиты find
    Ключ
    Назначение
    -name
    Задает имя файла или его часть
    -size
    Задает размер файла, например 12k
    -type
    Задает тип объекта для поиска: f-обычный файл d-каталог l-символьная ссылка
    -a
    Логическая связка and
    -o
    Логическая связка or
    -user
    Задает имя пользователя
    Достоинствами утилиты find являются независимость от базы данных и широкие функциональные возможности, недостаток – меньшая скорость поиска по сравнению с locate.
    2 МЕТОДИКА ВЫПОЛНЕНИЯ
    1. Ознакомиться с теоретическими сведениями.
    2. После загрузки ОС Linux и запроса имени ввести имя и пароль пользователя.
    3. По окончании загрузки ОС запустить терминал.

    2 0
    Все задания работы следует выполнить в режиме командной строки с помощью терминала.
    Задания:
    1. Создать в домашнем каталоге следующую структуру подкаталогов
    (существующие каталоги не удалять!):
    Домашний каталог
    Ваша фамилия
    1 4
    2 3
    2. Скопировать файл /etc/group в каталоги 1, 2, 3 и 4 используя абсолютные имена копируемого файла и каталога назначения.
    3. С помощью утилиты file вывести на экран сведения о 3 - 4 различных файлах (в том числе из каталогов /bin и /dev).
    4. Выполнить команду ls –l /dev используя таблицу 2 обозначений типов файлов
    Таблица 2.
    Обозначения типов файлов
    Символ
    Тип файла d
    Каталог l
    Символьная ссылка s
    Сокет b
    Блочное устройство c
    Символьное устройство p
    Именованный канал перечислить типы файлов, хранящихся в каталоге /dev
    5. Используя справочную систему, ознакомиться с ключами утилиты ls
    -R, -1 (единица), -m, --color, ключи, определяющие порядок вывода на экран
    6. Создать жесткую и символическую ссылки для одного из созданных в п.2 файлов.
    Таблица 3.
    Индивидуальные задания
    Номер
    Задание
    1
    Вывести список имен файлов из /var, используя ключ –l
    Список упорядочить по размерам файлов.
    2. Найти файлы, имена которых оканчиваются на pdf
    2
    Вывести список имен файлов из /bin, используя ключ –l
    Список упорядочить по датам создания

    2 1
    Номер бригады
    Задание
    2. Найти файлы, имена которых оканчиваются на jpg
    3
    Вывести список имен файлов из /sbin, используя ключ –l
    Список упорядочить по именам
    2. Найти файлы, размеры которых превышают 25к
    (запись +25k)
    4
    Вывести список имен файлов из /tmp, используя ключ –l
    Список упорядочить по именам
    2. Найти файлы, имена которых оканчиваются на text
    5
    Вывести список имен файлов из /usr, используя ключ –l
    Список упорядочить по размерам файлов.
    2. Найти файлы, имена которых оканчиваются на jpg и размеры более 1к
    6
    Вывести список имен файлов из /bin, используя ключ –l
    Список упорядочить по датам создания
    2. Найти файлы, размеры которых превышают 15к
    (запись +15k)
    7
    Вывести список имен файлов из /usr, используя ключ –l
    Список упорядочить по размерам файлов.
    2. Найти файлы, размеры которых превышают 25к
    (запись +25k) и имена начинаются на s
    8
    Вывести список имен файлов из /var, используя ключ –l
    Список упорядочить по датам создания
    2. Найти файлы, размеры которых превышают 25к
    (запись +25k) и имена начинаются на s, а заканчиваются на jpg
    9
    Вывести список имен файлов из /sbin, используя ключ –l
    Список упорядочить по размерам файлов
    2. Найти файлы, размеры которых превышают 1М (запись
    +1m)
    10
    Вывести список имен файлов из /bin, используя ключ –l
    Список упорядочить по именам
    2. Найти файлы, размеры которых превышают 5к (запись
    +5k)
    7. Выключить компьютер.
    3 ОТЧЕТ О РАБОТЕ
    . Содержание отчета: построенное в задании 1 дерево каталогов. описания назначений ключей команды ls.

    2 2 результаты выполнения заданий.
    1   2   3


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