русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

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


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Права доступу до файлів


Дата додавання: 2014-11-27; переглядів: 941.


 

Права доступу до файлу або каталогу в Linux – це щось більше ніж просто права доступу на читання або запуск програми – вони визначають також і тип файла і то, яким чином буде виконуватися процес, що відповідає файлу.

 

Права доступу для даного файлу можна дізнатися, якщо виконати команду ls –l . Параметр -l вказує команді ls, що списоу файлів біжучого каталога треба видати у розширеному форматі. Результат виконання команди може виглядати, наприклад, так:

drwx------ 2 sglines doc 512 Jan 1 13:44 Mail

drwx------ 5 sglines doc 1024 Jan 17 08:22 News

-rw------- 1 sglines doc 1268 Dee 7 15:01 biblio

drwx------ 2 sglines doc 512 Dee 15 21:28 bin

-rw------- 1 sglines doc 44787 Oct 20 06:59 books

-rw------- 1 sglines doc 23801 Dee 14 22:50 bots.msg

-rw-r----- 1 sglines doc 105990 Dee 27 21:24 duckie.gif

 

У цьому виводі відображена практично уся інформація, яку можна отримати аналізуюсчи записи у каталозі та індекси файлів. У першій колонці наведені права доступу до файлів, другий стовпець вказує кфлькість посилань на файл або к-сть додаткових блоків каталогу, третя відображає власника файла (в Linux власники файлів можуть бути трьох типів: користувач, група користувачів, всі користувачі). Четвертий стовпець містить ім”я групи якій належить даний файл, п”ята – розмір файлу в байтах, шоста – час та дату його створення, а сьома – назву файла.

 

Перший стовпець з правами доступу у свою чергу склавдається з чотирьох полів:

- rwx rwx rwx

Перше поле вказує на тип файла. Звичайний файл позначається (-), каталог – буквою d. Можливі значення цього поля такі:

 

Символ Значення
- Звичайний файл
b Файл, якому відповідає блочний пристрій
c Файл, якому відповідає символьний пристрій
d Каталог

 

Три наступні поля відображають права доступу для файлу для читання, запису, виконання. Перше поле задає права користувача – власника файла, друге – права групи користувачів, третє – права усіх інших користувачів. Кожне з цих полів має по три символи. Наприклад, послідовність rwx у першому полі означає, що власник файла має права на читання, запис та виконання файла.

 

Зазвичай файл-програма виконується з правами доступу того користувача, який її запустив на виконання. Але, якщо встановлено спеціальний біт (User Id bit, біт користувача файла) то програма виконується з правами власника файла. Це означає, що програма буде мати такі ж права доступу до інших файлів, що й власник. Наприклад, якщо звичайний користувач запустить файл власником якого є адміністратор (root), то програма буде мати права доступу адміністратора при звертанні до всіх файлів системи, незважаючи на обмеження прав доступу звичайного користувача. Аналогічно діє і інший біт керування (group Id bit), тільки по відношенню до групи.

 

Дані про режим виконання файлу містять ще біт збереження задачі (sticky bit, біт прилипання). Цей біт вказує системі на необхідність зберегти копію програми, що виконується у пам”яті після її завершення. Включення цього біта вигідно при частому запуску програми, так як економить час на завантьаження файла у пам”ять при кожному запуску.

 

Завдання та зміна прав доступу виконується з використанням кооманди chmod. Ця команда застосовується у двох формах – абсолютній та відносній. Синтаксис абсолютної форми використовує завдання у восьмірковій формі кода прав доступу. Для отримання значення повного коду захисту файла необхідно додати базові складові чсастини подані у таблиці нижче

 

Код Режим доступу
Права на виконання для інших
Права на запис для інших
Права на читання для інших
Права на виконання для групи
Права на запис для группы
Права на читання для группы
Права на виконання для власника
Права на запис для власника
Права на читання для власника
Встановлено біт збереження задачі
Якщо файл виконувальний – то включено біт групи, у всіх інших випадках – повністю блокує доступ до файлу
Якщо файл виконувальний – то включено біт користувача

 

Наприклад, для того, щоб дати права на читання, запис для власника файлу, на читання та запис групі, та жодних прав іншим користувачам, можна скористатися командою

 

chmod 660 file

 

де 660 – це сума відповідник складових кодів прав

 

При використанні команди chmod у відносній формі, необхідно задати такі параметри:

- кому даються права

- права даються вперше, додаються до існуючих, чи вилучаються

- які нові права даються

 

Наприклад, команда chmod a=rwx file встановить заново права на читання, запис та виконання для усіх користувачів.

 

Параметри команди chmod, які використовуються у відносній формі наведені у таблиці нижче

Значення параметра Опис
Група користувачів
a Всі користувачі: даний коритстувач, його група, та усі інші
g Група даного користувача
o Всі користувачі, що не входять у групу даного користувача
u Тільки даний користувач
Операція
+ Додати права до вже існуючих
- Вилучити права
= Надати вказані права замість існуючих
Права доступу до файлу
x Право на виконання
r Право на читання
w Право на запис
s Встановлено біт користувача
t Встановлено біт збереження задачі

 

 

Якщо для файла біт користувача встановлено, команда ls –l виведе для нього такий рядок:

-rws------ 1 sglines 3136 Jan 17 15:42 х

Якщо додати біт групи, цей вивід буде такий:

-rws--s--- 1 sglines 3136 Jan 17 15:42 х

Якщо додати біт збереження задачі, отримаємо наступний запис:

-rws--srwt 1 sglines 3136 Jan 17 15:42 х

Літери s та t вказують на стан біта користувача та біта збереження задачі

 


<== попередня лекція | наступна лекція ==>
Спеціальні файли | Хід роботи та індивідуальні завдання


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн