Як багатокористувацька| операційна система, ОС Linux містить|утримує| механізм розмежування доступу до даних, що дозволяє як захистити дані одного користувача від небажаного втручання інших, так і дозволити іншим доступ до цих даних для спільної роботи.
Як вже сказано, будь-який ресурс комп'ютера під управлінням ОС Linux | представляється як файл, тому ми говоритимемо тільки|лише| про права доступу до файлу.
По відношенню до файлу користувач може входити в одну з трьох категорий: власник, член групи власника, всі останні. Для кожної з цих категорій є свій набір прав доступу.
Першим власником файлу стає його творець. Далі файл можна передати іншому власникові або в іншу групу командою:
# chown| [ключі|джерела|] <новий_користувач|>[нова_група|] <файл> або
У деяких реалізаціях Linux передати файл іншому власникові має право тільки суперкористувач, а в інших — також його поточний власник.
Набір прав доступу складається з прав на читання, запис і виконання файлу. У символьному уявленні він виглядає як рядок «rwx», де замість будь-якого символу може стояти дефіс. Буква означає наявність права (r — читання, w — запис, х — виконання), дефіс — його відсутність.
Очевидно, що ці три біта можуть бути записані ще і як вісімкове число. Так, права доступу r-х (читання і виконання без запису) розуміються як три двійкові цифри 101 або як вісімкова цифра 5. Чисельне представлення прав доступу називається абсолютним, або двійковою маскою.
Повний рядок прав доступу в символьному уявленні влаштований так:
<права_влаcника> <права_групи> <права_інших>
У абсолютному представленні права власника є старшим розрядом вісімкового числа, права групи — другим і права інших — третім. Так, права rwxr-x--x виглядають як число 111 101 001, або 751
Команда зміни прав доступу chmod розуміє як абсолютне, так і символьне позначення.
Призначимо файлу /home/student/README права rw-r-----| , тобто|цебто| дозволимо собі читання і запис, групі тільки читання, решті користувачів — нічого:
$с|d ~ # перехід в свій домашній|хатній| каталог
$chmod 640 README # 110 100 000 == 640
$1з -1 КЕАОМЕ
rw-r----- 1 student users 0 Feb 14 19:08 / home/student/README
У символьному режимі можна явно вказувати, кому яке право ми хочемо додати, відняти або привласнити. Додамо право на виконання файлу README групі і всім іншим:
$chmod gо+х README
$1s -1 README
-rw-r-x—x 1 student users 0 Feb 14 19:08 / home/student/README
Формат символьного режиму:
chmod <категория><дія><набiр_прав> < файл >
Таблиця 2.1- Аргументи команди в символьному режимі
Sticky - біт, встановлений|установлений| для каталога, приводить|призводить| до того, що видаляти|знищувати| файли з|із| цього каталога можуть тільки|лише| власник файлу і власник каталога|. Зазвичай|звично| це використовується в каталогах, відкритих|відчиняти| для запису всім (наприклад, /tmp).