ЛР.7. Posix-программирование, пользователи и группы, права доступа, обработка каталогов.

Задание

  1. Разработать программу, которая по имени системного пользователя возвращает имена его "одногруппников", то есть пользователей, являющихся членами хотя-бы одной из групп, в которую входит исходный пользователь.
  2. Разработать программу, которая рекурсивно, с использованием функций dirent.h, выводит в иерархическом представлении содержимое каталога, имя которого ей передано. Каждый выводимый элемент должен сопровождаться информацией о типе, хозяине, группе, правах доступа. Если содержимое очередного подкаталога оказывается недоступным - сообщить об этом факте для каждого каталога и причинах его возникновения.
  3. Разработать программу, которая создает копию структуры переданного каталога, игнорируя файлы, не являющиеся каталогами. Права доступа, хозяин и группа в копиях каталогов должны соотвествовать исходным, при невозможности этого достигнуть - сообщить о данном факте для каждого каталога и причинах его возникновения.