Читаем Командная строка Linux. Полное руководство полностью

Таблица 9.4. Режимы доступа к файлу в двоичном и восьмеричном представлениях

Восьмеричное

Двоичное

Режим доступа

0

000

---

1

001

--x

2

010

-w-

3

011

-wx

4

100

r--

5

101

r-x

6

110

rw-

7

111

rwx

C помощью трех восьмеричных цифр мы можем определить режим доступа к файлу для владельца, для группы и для остального мира.

[me@linuxbox ~]$ > foo.txt

[me@linuxbox ~]$ ls -l foo.txt

-rw-rw-r-- 1 me me 0 2012-03-06 14:52 foo.txt

[me@linuxbox ~]$ chmod 600 foo.txt

[me@linuxbox ~]$ ls -l foo.txt

-rw------- 1 me me 0 2012-03-06 14:52 foo.txt

Передав аргумент 600, мы установили права для владельца, позволяющие ему читать данные из файла и записывать их в файл, и при этом отобрали все права у группы и остального мира. Несмотря на кажущееся неудобство необходимости запоминания соответствий между восьмеричными и двоичными представлениями, вам, скорее всего, придется использовать лишь несколько наиболее популярных шаблонов: 7 (rwx), 6 (rw-), 5 (r-x), 4 (r--) и 0 (---).

<p>Символическое представление</p>

Команда chmod поддерживает также символическую форму определения режимов доступа к файлу. Символическая форма записи делится на три части: для кого устанавливаются разрешения, какие операции с разрешениями будут выполняться и на какие разрешения эти операции будут влиять. Чтобы указать, для кого устанавливаются разрешения, используется комбинация символов u, g, o и a, как показано в табл. 9.5.

Таблица 9.5. Символическая форма записи аргументов команды chmod

Символ

Значение

u

Сокращенно от user (пользователь), означает владельца файла или каталога

g

Группа

o

Сокращенно от other (другие, остальные), означает весь остальной мир

a

Сокращенно от all (все); комбинация из всех трех символов: u, g и o

Если не указан ни один символ, предполагается a (all — все). Операцией может быть знак +, соответствующий добавлению заданных разрешений, знак -, соответствующий отъему заданных разрешений, или знак =, указывающий, что только заданные разрешения должны быть установлены, а все остальные отобраны.

Разрешения определяются символами r, w и x. В табл. 9.6 перечислены некоторые примеры символической формы записи.

Таблица 9.6. Примеры символической формы записи прав доступа к файлам

Атрибуты файлов

Значение

u+x

Добавляет право на выполнение, но только для владельца

u-x

Отнимает право на выполнение у владельца

+x

Добавляет право на выполнение для владельца, группы и остального мира. Эквивалент записи a+x

o-rw

Отнимает право на чтение и запись у всех, кроме владельца и группы

go=rw

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

u+x,go=rx

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

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

Дополнительную информацию и полный список параметров команды chmod можно найти на странице справочного руководства (man). А теперь несколько слов о параметре --recursive: он воздействует и на файлы, и на каталоги, поэтому он не так полезен, как можно было бы предположить, потому что редко требуется устанавливать одинаковые разрешения для файлов и каталогов.

<p>Установка режима доступа к файлу с помощью графического интерфейса</p>

Теперь, ознакомившись с тем, как устанавливаются разрешения для файлов и каталогов, вы лучше поймете диалоги установки разрешений в графическом интерфейсе. В Nautilus (GNOME) и Konqueror (KDE) можно щелкнуть правой кнопкой мыши на файле или на каталоге и вывести диалог со свойствами. На рис. 9.2 изображен такой диалог из KDE 3.5.

Рис. 9.2. Диалог со свойствами файла из KDE 3.5

Перейти на страницу:

Похожие книги

Компьютерные сети. 6-е изд.
Компьютерные сети. 6-е изд.

Перед вами шестое издание самой авторитетной книги по современным сетевым технологиям, написанное признанным экспертом Эндрю Таненбаумом в соавторстве со специалистом компании Google Дэвидом Уэзероллом и профессором Чикагского университета Ником Фимстером. Первая версия этого классического труда появилась на свет в далеком 1980 году, и с тех пор каждое издание книги неизменно становилось бестселлером. В книге последовательно изложены основные концепции, определяющие современное состояние компьютерных сетей и тенденции их развития. Авторы подробно объясняют устройство и принципы работы аппаратного и программного обеспечения, рассматривают все аспекты и уровни организации сетей — от физического до прикладного. Изложение теоретических принципов дополняется яркими, показательными примерами функционирования интернета и компьютерных сетей различного типа. Большое внимание уделяется сетевой безопасности. Шестое издание полностью переработано с учетом изменений, произошедших в сфере сетевых технологий за последние годы, и, в частности, освещает такие технологии, как DOCSIS, 4G и 5G, беспроводные сети стандарта 802.11ax, 100-гигабитные сети Ethernet, интернет вещей, современные транспортные протоколы CUBIC TCP, QUIC и BBR, программно-конфигурируемые сети и многое другое.

Дэвид Уэзеролл , Ник Фимстер , Эндрю Таненбаум

Учебные пособия, самоучители