[ Страница назад | Страница вперед | Содержание | Индекс | Домой | Юридическая информация | Поиск ]

Руководство пользователя: Операционная система и устройства


Принадлежность файлов и группы пользователей

Владельцем нового файла становится пользователь, который его создал. Владелец файла задает права на чтение, запись (изменение) или выполнение файла. Для изменения владельца файла предназначена команда chown.

Любой ИД пользователя относится к определенной группе с уникальным ИД группы. Группы пользователей создаются системным администратором при настройке системы. Во время создания файла операционная система задает права доступа для пользователя, создавшего файл, группы владельца файла, и группы, которая называется Другие и состоит из всех остальных пользователей. Команда id позволяет узнать ИД текущего пользователя (UID), ИД группы (GID) этого пользователя и имена всех групп, в которые он входит.

В списке файлов каталога (например, выводе команды ls) всегда указываются три класса пользователей в следующем порядке: пользователь, группа и другие. Если вам нужно узнать имя своей группы, введите команду groups, которая показывает список групп, в которые входит пользователь с данным ИД.

Изменение принадлежности файла или каталога (команда chown)

С помощью команды chown вы можете изменить владельца своих файлов.

Опция -R команды chown задает рекурсивный спуск по дереву каталогов, начиная с указанного каталога. При обнаружении символьной ссылки на файл или каталог их принадлежность изменяется, а принадлежность самой ссылки сохраняется.

Примечание: Только пользователь root может изменять принадлежность файлов, владельцем которых он не является. Если задана опция -f, то сообщение об ошибке не будет отправлено.

Например, для изменения владельца файла program.c введите:

chown jim program.c

Нажмите Enter.

Теперь права доступа пользователей к файлу program.c определяются пользователем jim. В качестве владельца пользователь jim может изменять права доступа других пользователей к файлу program.c. с помощью команды chmod.

Например, если для каталога /tmp/src необходимо заменить владельца и группу, к которой он относится, на владельца john и группу build, введите:

chown -R john:build /tmp/src

Нажмите Enter.

Полный синтаксис приведен в описании команды chown в книге AIX 5L Version 5.1 Commands Reference.

Права доступа к файлам и каталогам

У каждого файла есть владелец. Владельцем нового файла становится пользователь, создавший этот файл. Права доступа к файлу определяет его владелец. Права доступа указывают для других пользователей системы, могут ли они читать, изменять и исполнять файл. Права доступа к файлу могут изменяться владельцем файла или пользователем root.

Существует три класса пользователей: пользователь/владелец, пользователи группы и все остальные пользователи. Этим классам пользователей выделяются права доступа трех типов: на чтение, на запись и на выполнение. При создании файла для пользователя, создавшего файл, по умолчанию устанавливаются права на чтение, запись и выполнение. Для остальных двух классов пользователей устанавливаются права на чтение и выполнение. В приведенной ниже таблице описаны права доступа к файлу, выделяемые по умолчанию для трех групп пользователей:


Классы Чтение Запись Выполнение
Владелец Да Да Да
Группа Да Нет Да
Другие Да Нет Да

Для файла могут быть установлены права доступа на чтение (r), запись (w) и выполнение (x). Для каждого класса пользователей система устанавливает права доступа в виде набора разрешений. Права доступа в системе задаются двумя способами: в символьном и численном виде.

Символьное представление прав доступа

Формат символьного представления прав доступа описан ниже:

r Означает разрешение на чтение, которое дает пользователю права на просмотр файла.
w Означает разрешение на запись, которое дает пользователям права на изменение содержимого файла.
x Означает разрешение на выполнение. Для исполняемых файлов (обычные файлы, содержащие программы), разрешение на выполнение предоставляет права на запуск программы. Для каталогов разрешение на выполнение предоставляет права на просмотр содержимого каталога.

Например, для файла с правами доступа rwxr-xr-x установлены разрешения на чтение и выполнение для всех трех классов пользователей, а разрешение на запись задано только для владельца файла. Это символьное представление прав доступа по умолчанию.

Команда ls с флагом -l (строчная L) показывает подробный список файлов каталога. Первые 10 символов в списке команды ls-l задают тип файла и разрешения, установленные для каждого из трех классов пользователей. Кроме того, в списке команды ls -l указывается владелец и группа, связанная с каждым файлом или каталогом.

Первый символ задает тип файла. Оставшиеся девять символов представляют собой информацию о разрешениях, установленных для каждого из трех классов пользователей. В качестве типа файла могут быть указаны следующие символы:

- Стандартные файлы
d Каталог
b Специальный блочный файл
c Специальный символьный файл
p Специальный файл конвейера
l Символьная ссылка
s Сокет

Ниже приведен пример простого списка ls -l:

-rwxrwxr-x   2   janet   acct   512 01 марта 13:33 january

Здесь первый дефис (-) означает обычный файл. Второй, третий и четвертый символы rwx задают права доступа владельца (чтение, запись и выполнение). Пятый, шестой и седьмой символы rwx представляют собой права доступа группы (чтение, запись и выполнение). Восьмой, девятый и десятый символы r-x задают права на чтение и выполнение для всех остальных пользователей. Дефис, указанный вместо девятого символа, означает, что права доступа отсутствуют.

janet - это имя владельца файла, а acct - имя группы Janet. 512 - это размер файла в байтах, 01 марта 13:33 - дата и время последнего изменения, а january - имя файла. Значение 2 означает число ссылок на файл.

Численное представление прав доступа

В численном виде разрешение на чтение представляется в виде цифры 4, разрешение на запись - в виде цифры 2, а разрешение на выполнение - в виде цифры 1. Суммарное значение из интервала от 1 до 7 задает права доступа для каждого класса (пользователя, группы и других). В приведенной ниже таблице приведены численные значения прав доступа:

Суммарное значение Чтение Запись Выполнение
0 - - -
1 - - 1
2 - 2 -
3 - 2 1
4 4 - -
5 4 - 1
6 4 2 -
7 4 2 1

При создании файла для него по умолчанию устанавливаются права доступа 755. Это означает, что для пользователя установлены права на чтение, запись и выполнение (4+2+1=7), для группы - права на чтение и выполнение (4+1=5), и для всех остальных пользователей - права на чтение и выполнение (4+1=5). Владелец файла может изменить права доступа к этому файлу с помощью команды chmod.

Просмотр информации о группе (команда lsgroup)

С помощью команды lsgroup вы можете просмотреть атрибуты всех групп системы или только указанных групп. Если один или несколько атрибутов недоступны для чтения, то команда lsgroup показывает все доступные атрибуты. Информация об атрибутах выводится в виде пар Атрибут=Значение, разделенных пробелами.

Например, для просмотра атрибутов всех групп системы введите:

lsgroup ALL

Нажмите Enter.

Появится приблизительно следующий список, содержащий для каждой группы имя, ИД и описание всех пользователей группы:

system  0 arne,pubs,ctw,geo,root,chucka,noer,su,dea,
backup,build,janice,denise
staff   1        john,ryan,flynn,daveb,jzitt,glover,maple,ken gordon,mbrady
bin     2        root,bin
sys     3        root,su,bin,sys

Существует два способа просмотра отдельных атрибутов каждой группы:

Для просмотра всех атрибутов конкретной группы применяются те же способы, что и для просмотра отдельных атрибутов всех групп:

Для просмотра отдельных атрибутов конкретной группы введите:

lsgroup -a Атрибуты Группа

Нажмите Enter.

Например, для просмотра ИД и списка пользователей группы bin введите:

lsgroup -a id users bin

Нажмите Enter.

Появится приблизительно следующий список:

bin id=2 users=root,bin 

Полный синтаксис приведен в описании команды lsgroup в книге AIX 5L Version 5.1 Commands Reference.

Изменение прав доступа к файлу или каталогу (команда chmod)

Команда chmod позволяет изменить разрешения на чтение, запись и выполнение, установленные для указанных файлов, или разрешение на просмотр заданных каталогов.

Например, для того чтобы установить конкретные права доступа к файлам chap1 и chap2, введите:

chmod g+w chap1 chap2

Нажмите Enter.

В результате для пользователей группы будет установлено разрешение на запись в файлы chap1 и chap2.

Например, если вы хотите добавить или удалить несколько разрешений для каталога mydir, введите:

chmod go-w+x mydir

Нажмите Enter.

Для пользователей группы (g) и всех остальных пользователей (o) будет удалено (-) разрешение на создание и удаление файлов (w) в каталоге mydir и добавлено (+) разрешение на просмотр каталога mydir или использование его имени в качестве элемента пути (x). Те же самые действия выполняет следующая последовательность команд:

chmod g-w mydir
chmod o-w mydir
chmod g+x mydir
chmod o+x mydir

Например, если права на выполнение процедуры оболочки с именем cmd должны быть предоставлены только владельцу, введите команду:

chmod u=rwx,go= cmd

Нажмите Enter.

В результате для владельца файла будут установлены разрешения на чтение, запись и выполнение (u=rwx). Для пользователей группы и всех остальных пользователей будет запрещен любой доступ к файлу cmd (go=).

Например, если вы хотите задать новые права доступа для файла text с помощью команды chmod, указав их в численном виде, то введите:

chmod 644 text

Нажмите Enter.

В результате для владельца будут установлены разрешения на чтение и запись, а для пользователей группы и всех остальных пользователей будут установлены права только на чтение.

Дополнительная информация и полный синтаксис приведены в описании команды chmod в справочнике AIX 5L Version 5.1 Commands Reference.


[ Страница назад | Страница вперед | Содержание | Индекс | Домой | Юридическая информация | Поиск ]