Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Права доступа по умолчанию




Числовой (абсолютный) формат

Синтаксис команды chmod при использовании числового формата таков:

 

chmod права имя_файла

 

Здесь параметр права представляет собой восьмеричное число. В простейшем случае оно состоит из трех трехбитовых наборов, каждый из которых относится к одной из категорий пользователей. Старший бит соответствует разрешению на чтение (1 – установлено, 0 – снято), средний – разрешению на запись, а младший – разрешению на исполнение.

 

Цифра восьмеричной системы r w x Символьная запись прав доступа
  0 0 0 - - -
  0 0 1 - - x
  0 1 0 - w -
  0 1 1 - w x
  1 0 0 r - -
  1 0 1 r - x
  1 1 0 r w -
  1 1 1 r w x

 

Например, записанные в символьной форме права доступа rwxrwxrwx имеют числовой эквивалент 777, а права rw-r-x--- имеют числовой эквивалент 650.

При установке /снятии специальных прав доступа слева добавляется еще один трехбитовый набор:

 

  SUID SGID sticky Символьная запись прав доступа
        - - - - - - - - -
        - - - - - - - - t (при установленном x для сторонних пользователей) - - - - - - - - T (x для сторонних пользователей отсутствует)
        - - - - - s - - - (при установленном x для группы) - - - - - S - - - (x для группы отсутствует)
        Установлены SGID и sticky
        - - s - - - - - - (при установленном x для владельца) - - S - - - - - - (x для владельца отсутствует)
        Установлены SUID и sticky
        Установлены SGID и SGID
        Установлены SGID, SGID и sticky

 

Например, записанные в символьной форме права доступа rw-r-s--x имеют числовой эквивалент 2651, права rwSr-s-w- имеют числовой эквивалент 6652, права r-xr-s-wT имеют числовой эквивалент 3552, а права rw-r-S-wt имеют числовой эквивалент 3643.

 

Примеры:

 

Команда Символьная запись прав доступа Результат
chmod 504 myfile r-x---r-- Владелец имеет права чтения и исполнения, группа не имеет никаких прав и сторонние пользователи имеют право чтения
chmod 4755 myfile rwsr-xr-x Для файла установлен SUID, владелец имеет права чтения, записи и исполнения, группа и сторонние пользователи имеют права чтения и исполнения
chmod 6701 myfile rws--S--x Для файла установлены SUID и SGID, владелец имеет права чтения, записи и исполнения, группа не имеет никаких прав и сторонние пользователи имеют право исполнения
chmod 5765 myfile rwsrw-r-t Для файла установлены SUID и sticky, владелец имеет права чтения, записи и исполнения, группа имеет права чтения и записи и сторонние пользователи имеют права чтения и исполнения

 

 

 

При создании новых файлов и каталогов устанавливаются права доступа по умолчанию:

для каталогов – 777 (rwxrwxrwx);

для файлов – 666 (rw-rw-rw-).

Права доступа по умолчанию можно регулировать с помощью команды umask (англ. user file creation mode mask – пользовательская маска создания файлов). Пользовательская маска – это число, которое отнимается от прав доступа по умолчанию, а полученные в результате вычитания права применяются к создаваемому файлу (каталогу).

Единственный параметр командыumask – восьмеричное число, задающее атрибуты, которые не надо устанавливать новому файлу или каталогу. Заданная без параметров, эта команда выводит значение текущей установленной маски.

Права доступа файлов, созданных при конкретном значении umask, вычисляются при помощи следующих побитовых операций: побитовое И между унарным дополнением аргумента (используя побитовое НЕ) и режимом полного доступа.

Например:

umask 027

Для каталогов вычислить получившиеся права просто: права доступа по умолчанию (777) минус значение маски (027) равно 750.

Для файлов эта процедура немного сложнее. Сначала запишем двоичное представление восьмеричного значения маски: 0278=0000101112 и прав доступа по умолчанию: 6668=1101101102. Затем запишем унарное дополнение значения маски: 111101000 (получается инвертированием битов двоичного представления значения маски). А теперь выполняем побитовое умножение прав доступа по умолчанию и унарного дополнения значения маски:

 
 

 


Переводим результат в восьмеричную систему и имеем права доступа 640 или, в символьном представлении, rw-r-----.

 

Примеры:

 

umask 0 файлы будут создаваться с правами доступа rw-rw-rw- (666), каталоги – с правами доступа rwxrwxrwx (777)
umask 022 файлы будут создаваться с правами доступа rw-r--r-- (644), каталоги – с правами доступа rwxr-xr-x (755)
umask 077 файлы будут создаваться с правами доступа rw------- (600), каталоги – с правами доступа rwx------ (700)

 




Поделиться с друзьями:


Дата добавления: 2015-04-29; Просмотров: 1116; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.