- •Лабораторные работы Лабораторная работа №1. Файловая оболочка Midnight Commander
- •Лабораторная работа №2. Информационные команды оболочки, работа со справочной системой
- •Лабораторная работа №3. Управление каталогами
- •Лабораторная работа №4. Файловые операции
- •Лабораторная работа №5. Права доступа к файлам
- •Лабораторная работа №6. Организация поиска
- •Лабораторная работа №7. Регулярные выражения. Команда egrep
- •Лабораторная работа №8. Перенаправление стандартных потоков, конвейеры
- •Лабораторная работа №9. Фильтры, обработка текстовых данных
- •Лабораторная работа №10. Архивирование и сжатие
- •Лабораторная работа №11. Текстовый редактор Vim
- •Vim [ключи] [файл].
- •Лабораторная работа №12. Сценарии оболочки
- •Лабораторная работа №13. Условные конструкции
- •Лабораторная работа №14. Циклические конструкции
- •Лабораторная работа №15. Одномерные массивы
- •Лабораторная работа №16. Потоковый редактор sed
- •Лабораторная работа №17. Язык обработки шаблонов gawk
- •If (условие) {действия1} [else {действия2}].
Лабораторная работа №5. Права доступа к файлам
Цель работы: ознакомиться с командами установки и изменения разрешений для файлов.
Основные команды
access -режим файл — успешно завершается, если файл был доступен в указанном режиме. Обычно режим задается как комбинация одной и более букв (r,w,x). В случае недоступности выдается сообщение Invalid MODE. Пример: access –rwx-w- myfile.
chmod [-R] [кто] оператор [разрешения] файл — позволяет изменить права доступа к файлам. Параметр кто может принимать следующие значения:
u — владелец;
g — группа;
o — другие пользователи;
a — все (владелец, группа и другие пользователи)
Значения параметра оператор:
+ — добавление разрешения;
- — удаление разрешения;
= — установка заданного разрешения.
Значение параметра разрешения:
r — право чтения;
w —право записи;
x — право выполнения;
u — установка тех же прав, что и у владельца;
g — установка тех же прав, что и у группы;
o — установка тех же прав, что и у других пользователей.
Ключ -R рекурсивно определяет права для каталогов и файлов.
Примеры:
chmod a+x myfile — разрешение на выполнение для всех пользователей;
chmod og-wx — отмена разрешения на запись для группы и других пользователей.
Команда chmod также может использоваться в т.н. абсолютном режиме для текущего пользователя, ее формат
chmod режим файл.
Параметр режим представляет восьмеричное число, которое состоит из трех трехбитовых наборов разрешений. В каждом наборе старший бит — право на чтение, средний — на запись, последний — на выполнение. Назначение битов: 1 — установлено, 0 — снято. Например,
652 <=> 110 101 010 <=> rw-r-x-w-
Примеры команд:
chmod 666 myfile — установка разрешений на чтение и запись для владельца, группы и других пользователей (rw-rw-rw-);
chmod 700 myfile — установка полных прав только для владельца файла (rwx------).
Ход работы
Просмотрите права доступа
для каталогов, находящихся в корневом каталоге;
домашнего каталога.
Сделайте домашний каталог текущим. Создайте в нем каталог mode, и, не покидая домашнего каталога, подкаталоги tst1 и tst2. Используя команду access, проверьте, имеет ли каталог mode разрешения rwxrwxrwx, rw-rw-rw- и rwxrw-r--. Просмотрите разрешения для каталога mode.
Просмотрите содержимое каталога mode. Используя символьный режим команды chmod, уберите право на чтение и исполнение для владельца каталога. Просмотрите содержимое каталога mode. Проанализируйте, почему система выдала ошибку. Попытайтесь просмотреть содержимое каталога ~/mode/tst1.
Верните владельцу каталога mode право на запись и выполнение, но не на чтение. Последовательно проверьте, можно ли просмотреть содержимое каталога mode и создать в нем еще один подкаталог. Проанализируйте, почему результаты оказались различными. Используя абсолютный режим команды chmod, установите права для каталога mode, разрешающие чтение, запись и выполнение для владельца, группы и всех прочих пользователей.
Создайте в каталоге mode текстовый файл text произвольного содержания. Используя символьный режим команды chmod, установите для владельца файла text разрешения -w-. Попытайтесь вывести содержимое файла на экран. Добавьте в конец файла text информацию о файлах текущего каталога с помощью команды ls >> txt. Установите право на чтение этого файла и просмотрите содержимое. Сделайте выводы о возможности редактирования и просмотра с правами -w-.