Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Linux.doc
Скачиваний:
11
Добавлен:
07.11.2018
Размер:
176.64 Кб
Скачать

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

При создании объектов файловой системы (файлов, каталогов и т.д.) атрибуты объекта несут информацию о том, кто и что имеет право делать с этим объектом файловой системы.

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

- [- - -] [- - -] [- - -]

1. тип файла (d - каталог)

2-4. права хозяина (создателя)файла

5-7. права группы создателя файла

8-10. права посторонних (всех остальных)

r - чтение, w - запись, x - выполнение

Например, -rwxr-xr-x

1. Тип файла и режим доступа к нему, дефис значит, что это обыкновенный файл;

2-4. На данный файл владелец имеет полные права;

5-7. Пользователи, входящие в группу владельца, имеют права на чтение и выполнение;

8-10. Все остальные - права на чтение и выполнение.

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

chmod права имена_файлов

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

Обозначения: u (user)- для пользователя (владельца), g (group)- для группы, o (other) - для остальных пользователей, a (all)- для всех.

Примеры:

chmod go-w myfile (для файла запретить доступ на изменение/запись для группы и остальных пользователей).

chmod a+x file1 (всем разрешить выполнение файла file1, т.е. сделать его выполняемым).

Восьмеричное представление атрибутов:

В рассмотренном выше примере -rwxr-xr-x вместо букв подставим 1, в противном случае, если атрибут не установлен - 0. Получим:

0 111 101 101 переведем каждую тройку в 10-ую систему счисления: 0 7 5 5

Поскольку значение полученного числа в каждой позиции может быть только от 0 до 7, то говорят, что атрибуты заданы в восьмеричном представлении.

Команда chmod в этом случае запишется следующим образом:

chmod 755 file2

Другие команды:

Смена владельца (change owner): chown имя_пользователя имена_файлов смена группы (change group): chgrp имя_группы имена_файлов

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

Создание жестких и символьных ссылок

Имя файла является атрибутом файловой системы, а не набора некоторых данных на диске, который не имеет имени как такового. Каждый файл имеет связанные с ним метаданные (хранящиеся в индексных дескрипторах или узлах - inode), содержащие все характеристики файла. Именно метаданные содержат указатели на дисковые блоки хранения данных файла. Имя файла в файловой системе Unix/Linux хранится только в каталоге, содержащим этот файл, там же содержится указатель на метаданные этого файла. Метаданные не содержат указателя на имя файла.

Такая архитектура позволяет одному файлу иметь несколько имен в файловой системе. Имена жестко связаны с метаданными и, соответственно, с данными файла, в то время как сам файл существует независимо от того, как его называют в файловой системе. Такая связь имени файла с его данными называется жесткой связью(hard link).

Жесткие связи абсолютно равноправны. Все атрибуты таких файлов будут абсолютно одинаковыми (кроме имен). С точки зрения пользователя - это разные файлы. Изменения, внесенные в любой из этих файлов, затронут и другой, поскольку они ссылаются на одни и те же данные файла на диске. Можно переместить один из файлов в другой каталог - все равно эти имена будут связаны жесткой связью с данными файла. Удаление одного из файлов, связанных жесткой ссылкой, не приведет к удалению самого файла, т. е. его метаданных и данных. Эти ссылки используются, например, для того, чтобы хранить под разными именами одну и ту же команду (выполняемый файл) командного интерпретатора. Так, выполняемый файл текстового редактора vi может вызываться по именами: ex, edit, view, vedit.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]