Управление файлами
Цели работы
Получить навыки управления файлами и каталогами с помощью команд языка bash. Научиться выполнять поиск по файловой системе, устанавливать и просматривать права доступа на файлы и каталоги, создавать жесткие и символические ссылки. Освоить следующие команды, определенные стандартом Posix.2:
ls (-ld) | chmod | chown | chgrp | mkdir (-m) | ln (-s) | find (-exec, -maxdepth, -perm) | du (-sh) |
Описание работы
Шаг 1 (справка).
Используя справочные руководства man, whatis, apropos, info
изучите общее назначение команд, перечисленных в разделе "Цели работы".
Шаг 2 (права доступа).
1. Создайте каталог для выполнения лабораторной #3. В нем
создайте каталог dir_test. Проверьте, какие права доступа имеет
каталог по умолчанию.
2. Измените права доступа для dir_test так, чтобы никто кроме
владельца не имел право на чтение.
3. В каталоге dir_test создайте подкаталог subdir_test c правами,
разрешающими запись только для владельца, чтение только
для владельца и группы, выполнение (переход) только для владельца.
4. В каталоге subdir_test создайте три файла text1, text2, text3.
Проверьте, какие права доступа имеет обычный файл по умолчанию.
5. Добавьте для всех трех файлов право на запуск для владельца.
Шаг 3 (ссылки).
1. Создайте в каталоге dir_test подкаталог textlinks, в котором
разместите символические ссылки на файлы text1, text2, text3.
2. Создайте в каталоге dir_test две жестких ссылки на файл text1.
Проверьте количество жестких ссылок с помощью команды ls -l.
3. Разместите на рабочем столе символическую ссылку на
каталог dir_test.
Объясните, в чем состоит отличие между жесткими и символическими
ссылками. Можно ли на каталог создавать жесткие и символические ссылки?
Шаг 4 (поиск).
Для выполнения следующих заданий
используйте опцию -exec для команды find (см. пример 11 в лекции 4).
Полученные команды отправьте в файл commands.
# | Задание | Команды |
---|---|---|
1 | Удалить в домашнем каталоге и его подкаталогах все файлы, имена которых оканчиваются на ~. Такие файлы, например, создает редактор emacs, сохраняя предыдущую версию измененного файла | find, rm |
2 | Вывести объем дискового пространства занимаемый каждым подкаталогом домашнего каталога | find, du |
3 | Вывести перечень входных имен студентов, которые разрешают запись в свой домашний каталог | find, basename |
Критерии оценки работы
За задание можно получить 8 баллов. При этом задание должно быть выполнено полностью, сдаваться в срок, автор обязан понимать собственное решение и уметь объяснить суть основных понятий: права доступа, жесткая ссылка, символическая ссылка.
Защищая работу, Вы должны продемонстрировать 1) умение работать со справочной системой (man, whatis, apropos, info); 2) знание общего назначения приведенных в разделе "Цели работы" команд (например, echo — вывод строки текста); 3) умение работать с командой chmod; 4) умение выполнять поиск по файловой системе с использованием различных опций команды find.