русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Sticky bit.


Дата добавления: 2013-12-23; просмотров: 1248; Нарушение авторских прав


Назначение прав доступа. Команды chmod, chown, chgrp.

Особенности прав у каталогов.

Распределение прав доступа в Linux. Чтение. Запись. Выполнение.

Время: 90 минут

Литература:

1. Робачевский А.М. «Операционная система Unix®». – СПб.:

БВХ – Санкт-Петербург, 1999. – 528 с., ил.

2. Армстронг (мл.) Джеймс. «Секреты Unix®» : 2-е изд.: Пер. с англ.: Уч. пос. – М.: Издательский дом «Вильямс», 2000. – 1072

с.: ил. – Парал. тит. англ.

3. Паркер Тим. «Linux 5.2. Энциклопедия пользователя»: Пер. с англ. – К.: Издательство «ДиаСофт», 1999. – 688 с.

 

Ход занятия.

1. Для каждого объекта в файловой системе Linux существует набор прав доступа, определяющий взаимодействие пользователя с этим объектом. Такими объектами могут быть файлы, каталоги, процессы, а также специальные файлы (например, устройства). Так у каждого объекта в Linux имеется владелец, то права доступа применяются относительно владельца файла. Они состоят из набора 3 групп по три атрибута:

- чтение(r), запись(w), выполнение(x) для владельца;

- чтение, запись, выполнение для группы владельца;

- чтение, запись, выполнение для всех остальных.

Такие права можно представить краткой записью:

rwxrwxrwx – разрешено чтение, запись и выполнение для всех

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

rw-rw-r-- – запись разрешена для владельца файла и группы владельца файла, а чтение – для всех.

Такое распределение прав позволяет гибко управлять ресурсами, доступными пользователям.

2. Права доступа распространяются и на каталоги. Они означают:

r – если установлено право на чтение из каталога, то можно увидеть его содержимое командой ls.



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

х – если установлено право исполнения на каталог, то пользователь имеет право перейти в такой каталог командами наподобие cd.

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

3. Для распределения прав доступа в Linux существует множество команд. Основные из них – это chmod, chown и chgrp.

Команда chmod (Change MODe – сменить режим) – изменяет права доступа к файлу. Для использования этой команды также необходимо иметь права владельца файла или права root. Синтаксис команды таков:

chmod mode filename, где

filename – имя файла, у которого изменяются права доступа;

mode – права доступа, устанавливаемые на файл. Права доступа можно записать в 2 вариантах – символьном и абсолютном.

В символьном виде использование команды chmod будет выглядеть следующим образом:

|r|

|u| |w|

|g| |+| |x|

chmod |o| |-| |X| filename,

|a| |=| |u|

|g|

|o|

где:

u,g,o,a – установка прав для пользователя, группы, остальных пользователей, всех групп прав доступа соответственно.

+,-,= – добавить, удалить, установить разрешениесоответственно.

r,w,x,X,u,g,o – право чтения, записи, выполнения, выполнения если есть такое право еще у какой либо из групп доступа, такие же как у владельца, такие же как у группы, такие же как у остальных пользователей.

filename - Имя файла, у которого изменяются права.

[student@ns student]$ ls -l lesson5.txt

-rw------- 1 student student 39 Nov 19 15:17 lesson5.txt

[student@ns student]$ chmod g+rw lesson5.txt

[student@ns student]$ ls -l lesson5.txt

-rw-rw---- 1 student student 39 Nov 19 15:18 lesson5.txt

[student@ns student]$ chmod o=u lesson5.txt

[student@ns student]$ ls -l lesson5.txt

-rw-rw-rw- 1 student student 39 Nov 19 15:18 lesson5.txt

[student@ns student]$ chmod o-w lesson5.txt

[student@ns student]$ ls -l lesson5.txt

-rw-rw-r-- 1 student student 39 Nov 19 15:19 lesson5.txt

[student@ns student]$_

 

Для использования абсолютного режима необходимо представить права доступа к файлу в виде 3-х двоичных групп. Так например:

rwx r-x r-- будет выглядеть как:

111 101 100

Теперь каждую двоичную группу перевести в 8-ричное число:

111 – 7, 101 – 5, 100 – 4.

Чтобы задать файлу такие права необходимо выполнить команду:

[student@ns student]$ ls -l lesson5.txt

-rw-rw-r-- 1 student student 39 Nov 19 15:19 lesson5.txt

[student@ns student]$chmod 755 lesson5.txt

[student@ns student]$ ls -l lesson5.txt

-rwxr-xr-- 1 student student 39 Nov 19 15:19 lesson5.txt

[student@ns student]$_

 

Задание для обучаемых: попробовать изменить права файлу lesson5.txt и задать следующие: r w x r- - r - - (744), r - - - w- - - x(421), - - x - w - r - -(124).

Также предложить им проделать то же самое в символьном виде.

Команда chown (CHange OWNer – сменить владельца) – позволяет сменить владельца файла. Для использования этой команды необходимо либо иметь права владельца текущего файла или права root. Синтаксис команды прост:

chown username:groupname filename, где

username – имя пользователя – нового владельца файла;

groupname – имя группы – нового владельца файла;

filename – имя файла, у которого сменяется владелец.

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

Команда chgrp используется для изменения владельца-группы файла. Синтаксис ее таков:

chgrp groupname filename,

где:

groupname – имя группы, которой будет принадлежать файл

filename – имя изменяемого файла

 

Имейте в виду, что использовать команды chown и chmod может только пользователь-владелец файла и root, а команду chgrp - пользователь-владелец файла, группа-владелец файла и root.

4. Существуют еще несколько особых прав, которые могут устанавливаться на файлы и каталоги. О некоторых из них мы поговорим при изучении темы “процессы”. Но один рассмотрим сейчас. Это иак называемый sticky bit (бит прикрепления).

В первых версиях Юникс этот бит использовался для того, чтобы заставить систему при работе программы оставлять образ ее кода в памяти. Тогда при следующем обращении к программе на ее запуск тратилось намного меньше времени так как чтение кода с устройства не более не требовалось. Для файлов и сегодня в Linux осталось прежнее значение этого бита. А вот для каталогов этот атрибут преобрел новое значение. Если sticky bit установлен на каталог, то удалить файлы из такого каталога может только пользователь-владелец файла, и то только если у него есть право на запись в файл. Группа-владелец и остальные пользователи даже при наличии прав на запись в файл не смогут удалить его при установленном на каталог sticky bit.

Бит прикрепления устанавливается командой chmod в символьном виде:

chmod +t filename

 



<== предыдущая лекция | следующая лекция ==>
Занятие 4. Права доступа. | Man command


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

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