Назва
chmod - змінити дозволи доступу до файла
Використання
chmod [ОПЦІЯ]... РЕЖИМ[,РЕЖИМ]... ФАЙЛ...
chmod [ОПЦІЯ]... ВІСІМКОВИЙ-РЕЖИМ ФАЙЛ...
chmod [ОПЦІЯ]... --reference=RФАЙЛ ФАЙЛ...
Опис
Ця сторінка довідки описує GNU версію chmod. chmod змінює дозволи кожного вказаного файла, відповідно до режиму, що може бути або символьним представленням змін, які треба виконати, або вісімковим представленням бітової маски нових прав.
Формат символьного режиму такий '[ugoa...][[+-=][rwxXstugo...]...][,...]'. Можна вказати декілька символьних операцій, розділених комами.
Набір букв 'ugoa' визначає користувачів, доступ яких до файлу буде змінено: користувача-власника (u), інших користувачів у групі файлу (g), інших користувачів, які не входять до групи файлу (o), чи всіх користувачів (a). Якщо жодна з них не буде дана, то ефект буде такий, якщо б була дана буква 'a', але біти, які встановлено в umask не буде зачеплено.
Оператор '+' додає вказані дозволи до вже існуючих для кожного файлу; '-' прибирає їх; та '=' змушує файл використовувати тільки ті вказані дозволи.
Букви 'rwxXstugo' обирають нові дозволи для зачеплених користувачів: читання (r), запис (w), виконання (або доступ до директорії) (x), виконання тільки тоді, коли файл є директорією, чи вже має доступ на виконання для якогось користувача (X), встановлення ID користувача, або групи на використання (s), стійкий біт (t), дозволи, надані користувачу-власнику (u), дозволи, надані користувачам, що входять до групи файлу (g), та дозволи, надані користувачам, що не належать до попередніх категорій (o).
Цифровий режим складається від однієї до чотирьох вісімкових цифр (0-7), виведених збільшенням бітів з значенням 4, 2 та 1. Будь-які інші цифри вважаються передуючими нулями. Перша цифра обирає атрибути: набір ID користувача (4) та набір ID групи (2), й стійкий біт. Друга цифра обирає дозволи для користувача-власника файла: читання (4), запис(2), та виконання (1); третя обирає дозволи для інших користувачів групи файла з тими самими значеннями; і четверта для інших користувачів, які не належать до групи файла, з тими самими значеннями.
chmod ніколи не змінює дозволи символічних зв'язків; системний виклик chmod не може змінити їх дозволів. Це не проблема, оскільки дозволи символічних зв'язків ніколи не використовуються. Проте, для кожного символічного зв'язку переліченого в командному рядку, chmod змінить дозволи файлу, на який вони посилаються. У протиставлення, chmod ігнорує символічні зв'язки, які зустрічаються на протязі рекурсивного обходу директорій.
Стійкі файли
На старих Unix-системах, стійкий біт є причиною того, що виконувані файли запасаються своп-простором. Ця особливість не придатна на нових VM-системах, то ж ядро Лінукс ігнорує стійкі біти файлів. Інші ядра можуть використовувати стійкі біти на файлах для системних намірів. На деяких системах тільки супер-користувач може установлювати стійкий біт на файли.
Стійкі директорії
Коли стійкий біт встановлено на директорії, файли в цієї директорії можуть бути вилучені чи перейменовані тільки root-ом, чи їх власником. Без стійкого біту будь-хто, хто може писати в директорію може видалити чи перейменувати файли. Стійкий біт звичайно знаходиться на директоріях, в які може писати хто завгодно, таких як /tmp.
Ключі
Зміна режиму кожного ФАЙЛУ до РЕЖИМУ.
**-c**, **--changes** | як verbose, але повідомляється тільки, якщо зміни відбулися; |
**--no-preserve-root** | не обробляти '/' спеціально (по замовчуванню) |
**--preserve-root** | відмовлятися функціонувати рекурсивно у '/' |
**-f**, **--silent**, **--quiet** | приховувати більшість повідомлень про помилки |
**-v**, **--verbose** | виводити діагностичне повідомлення для кожного обробляємого файлу |
**--reference**=_RФАЙЛ_ | використовувати режим _RФАЙЛУ_ замість значень _РЕЖИМУ_ |
**-R**, **--recursive** | змінювати файли та директорії рекурсивно |
**--help** | показати цю довідку та вийти |
**--version** | показати інформацію про версію програми та вийти |
Кожен РЕЖИМ - це одна, чи декілька букв ugoa, один з символів +-= та одна чи більше букв rwxXstugo.
Автор
Написав David MacKenzie та Jim Meyering.
ПОВІДОМЛЕННЯ ПРО ПОМИЛКИ
Про помилки повідомляти на bug-coreutils@gnu.org.
Авторські права
Copyright © 2004 Free Software Foundation, Inc.
Це вільне програмне забезпечення; Дивіться умови копіювання в джерельних текстах. Немає ЖОДНОЇ гарантії; навіть про ВИГІДНІСТЬ чи ПРИДАТНІСТЬ ДЛЯ ПЕВНОЇ МЕТИ.
Дивіться також
Повна документація для chmod підтримується в посібнику Texinfo. Якщо програми info та chmod правильно встановлені, команда
info coreutils chmod
надасть повну довідку.