Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Цель работы. 1. Изучить системные вызовы, задающие права доступа .

Читайте также:
  1. D. Требования к структуре и оформлению курсовой работы.
  2. E. Порядок защиты курсовой работы.
  3. II. ВЫБОР ТЕМЫ КУРСОВОЙ РАБОТЫ. ПОДБОР И ОЗНАКОМЛЕНИЕ С ЛИТЕРАТУРОЙ ПО ВЫБРАННОЙ ТЕМЕ
  4. III. Третья группа профессиональных вредностей возникает вследствие несоблюдения общесанитарных условий в местах работы.
  5. IX. Оформление научно-исследовательской работы.
  6. VIII этап. Оформление текста курсовой работы.
  7. Б. Основные принципы противоэпизоотической работы.
  8. В заключении работы излагаются краткие выводы по теме, характеризуется степень ее раскрытия, определяется, достигнута ли цель и задачи работы.
  9. В организации диагностической и лечебной работы.
  10. В течение одного месяца со дня увольнения с прежнего места работы.

1. Изучить системные вызовы, задающие права доступа.

2. Изучить системные вызовы, обрабатывающие содержимое каталогов.

Постановка задачи.

Реализовать команду access, имеющую следующие возможности:

  1. Установка для заданного файла прав доступа, владельца файла, группы владельца файла. Формат командной строки:

access FILE OCTAL_MODE [ OWNER_ID ] [ GROUP_ID ]

FILE - имя файла
OCTAL_MODE - права доступа в форме 8-ричной константы
OWNER_ID - идентификатор владельца файла (необязательный параметр)
GROUP_ID - идентификатор группы владельца файла (необязательный параметр)

  1. Просмотр информации о файле (согласно варианту задания). Формат командной строки:

access FILE

FILE - имя файла

  1. Вывод информации о файлах каталога (согласно варианту задания). Для работы с каталогами использовать функцию scandir(). Формат командной строки:

access -l DIRECTORY

DIRECTORY - имя каталога

Краткие теоретические сведения:

Если ввести команду ls –l, то мы получим информацию следующего вида:

- rwxr--r--1 ivan group1 dec 03 18:30 program.c,

где

«-» указывает что это файл (для директории - d, для ссылки - l)

«rwxr--r--» - права доступа к файлу

1. первые три символа права доступа владельца файла

2. вторые три – права доступа группы пользователей

3. последние три символа – права доступа для всех остальных

Значение символов:

· r – разрешено чтение (соответствующая цифра 4)

· w – разрешена запись (соответствующая цифра 2)

· x – разрешено выполнение (соответствующая цифра 1)

· - - данный символ запрещает чтение, запись или выполнение, в зависимости от позиции, в которой он находиться.

«1» - количество ссылок

«ivan» - имя владельца файла

«group1» - имя группы владельца файла

«dec 03 18:30» - дата последней модификации файла

«program.c» - имя файла

CHMOD

chmod, fchmod -функции, изменяющие права доступа к файлу

 

СИНТАКСИС

#include <sys/types.h>

#include <sys/stat.h>

int chmod(const char *path, mode_t mode);

int fchmod(int fildes, mode_t mode);

 

 

CHOWN

chown, fchown, lchown - функции, изменяющие владельца файла

 

СИНТАКСИС

#include <sys/types.h>

#include <unistd.h>

int chown(const char *path, uid_t owner, gid_t group);

int fchown(int fd, uid_t owner, gid_t group);

int lchown(const char *path, uid_t owner, gid_t group);

 

 

STAT

stat, fstat, lstat - считывает статус файла

 

СИНТАКСИС

#include <sys/types.h>

#include <sys/stat.h>

#include <unistd.h>

int stat(const char *file_name, struct stat *buf);

int fstat(int filedes, struct stat *buf);

int lstat(const char *file_name, struct stat *buf);




Дата добавления: 2014-12-19; просмотров: 28 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав